一、端口扫描思路和代码实现
一、查看本机端口
-
Windows
netstat -aonfindstr 3306
-
Linux
netstat -an|grep 3306
二、远程机器端口
-
telnet 192.168.142.137 80
-
wget 192.168.142.137 80
-
nc -vz 192.168.142.137 445
二、常见的端口及漏洞
一、分类
1、网络常见协议
端口号 | 端口说明 | 攻击方向 |
---|---|---|
21/22/69 | FTP/SFTP文议 | 允许匿名上传、下载、爆破和嗅探操作 |
2049 | NFS服务(Network File System) | 配置不当 |
139 | Samba服务 | 爆破、未授权访问、远程代码和执行 |
389 | LDAP目录访问协议 | 注入、允许匿名访问、弱口令 |
2、远程连接服务
端口号 | 端口说明 | 攻击方向 |
---|---|---|
22 | SSH远程连接 | 爆破、SSH隧道及内网代理转发、文件传输 |
23 | Telnet远程连接 | 爆破、嗅探、弱口令 |
3389 | RDP远程连接 | Shift后门(WindowsServer2003以下的系统)、爆破 |
5900 | VNC | 弱口令爆破 |
5632 | PcAnywhere远程控制服务 | 抓密码、代码执行 |
3、Web应用服务
端口号 | 端口说明 | 攻击方向 |
---|---|---|
80/443/8080 | 常见的web服务端口 | Web攻击、!爆破、对应服务器版本漏洞 |
7001/7002 | Weblogic控制台 | Java反序列化、弱口令 |
8080/8089 | Jboss/resin/jetty/Jenkins | 反序列化、控制台弱口令 |
9090 | Websphere控制台 | Java反序列化、弱口令 |
4848 | Glassfish控制台 | 弱口令 |
1352 | Lotus domino邮件服务 | 弱口令、信息泄露、爆破 |
10000 | Webmin-web控制面板 | 弱口令 |
4、数据库服务
端口号 | 端口说明 | 攻击方向 |
---|---|---|
3306 | MSSQL数据库 | 注入、提权、爆破 |
1433 | MSSQL数据库 | 注入、提权、SA弱口令 |
1521 | Oracle数据库 | TNS爆破、注入、反弹shell |
5432 | PostgreSQL数据库 | 爆破、注入、弱口令 |
27017/27018 | MongoDB | 爆破、未授权注入、提权、爆破访问 |
6379 | Redis数据库 | 可尝试未授权访问、弱口令爆破 |
5000 | Sysbase/DB2数据库 | 爆破、注入 |
5、邮件服务
端口号 | 端口说明 | 攻击方向 |
---|---|---|
25 | SMTP邮件服务 | 邮件伪造 |
110 | POP3协议 | 爆破、嗅探 |
143 | IMAP协议 | 爆破 |
6、网络常见协议
端口号 | 端口说明 | 攻击方向 |
---|---|---|
53 | DNS域名系统 | 允许区域传送、DNS劫持.缓存投毒、欺骗 |
67/68 | DHCP服务 | 劫持、欺骗 |
161 | SNMP协议 | 爆破、搜集目标内网信息 |
7、其他服务端口
端口号 | 端口说明 | 攻击方向 |
---|---|---|
2181 | Zookeeper服务 | 未授权访问 |
8069 | Zabbix服务 | 远程执行、SQL注入 |
9200/9300 | Elasticsearch服务 | 远程执行 |
11211 | Memcached服务 | 未授权访问 |
512/513/514 | Linux Rexec服务 | 爆破、rlogin登录 |
873 | Rsync服务 | 匿名访问、文件上传 |
3690 | SVN服务 | SVN泄露、未授权访问 |
50000 | SAP ManagementConsole | 远程执行 |
三、端口扫描工具
Nmap(Network Mapper)
Nmap: the Network Mapper - Free Security Scanner
1)扫描主机(Host Discovery)
2)扫描端口(Port Scanning)
3)探测操作系统、软件版本(Operating SystemDetection、Version Detection)
参数类型
nmap --help
-
TARGET SPECIFICATION:目标,对什么进行扫描,比如是域名、IP或者网络
-
HOST DISCOVERY:主机发现,怎么对主机进行扫描,比如简单扫描,还是全部扫一遍,或者用相应的协议扫
-
SCAN TECHNIQUES:扫描技术,协议的设置
-
PORT SPECIFICATION AND SCAN ORDER:端口和扫描顺序设置
-
SERVICE/VERSION DETECTION:服务和版本识别
-
SCRIPT SCAN:使用脚本,nmap本身内置了大量的lua脚本,而且还可以自己编写脚本
-
OS DETECTION:操作系统识别
-
TIMING AND PERFORMANCE:时间和性能设置,比如扫描频率、重试次数等等
-
FIREWALL/IDS EVASION AND SPOOFING:防火墙绕过和欺骗,比如使用代理假IP等
-
OUTPUT:把扫描接出输出到文件
-
MISC:启用IPv6等等配置
脚本
nmap本身内置了大量的lua脚本,而且还可以自己编写脚本Is /usr/share/nmap/scripts/wc -l
全部清单:https://nmap.org/book/nse.html
例如: nmap 192.168.142.137 --script http-enum 列举HTTP服务 nmap --script=auth 绕过鉴权 nmap --script=brute 暴力破解 nmap --script=vuIn 扫描漏洞
安装靶场
可以参考官方文档自己进行安装
Metasploitable 2 | Metasploit Documentation
使用示例
nmap 192.168.142.137 #metasploitable2 Linux
nmap testfire.net #IBM的一个靶场