1 信息收集上篇
1.1主机发现
• nmap 1.1.1.1-254 –sn
• nmap -iL iplist.txt -sn
1.2端口扫描
1.2.1 UDP
• nmap -sU 1.1.1.1
• 默任1000
• ICMP host-unreachable
• nmap 1.1.1.1 -sU -p 53
• nmap -iL iplist.txt -sU -p 1-200
1.2.2 TCP
隐蔽性扫描
• nmap -sS 1.1.1.1 -p 80,21,25,110,443
• nmap -sS 1.1.1.1 -p 1-65535 --open
• nmap -sS -iL iplist.txt -p 80,21,22,23
全连接端口扫描
• nmap -sT 1.1.1.1 -p 80
• nmap -sT 1.1.1.1 -p 80,21,25
• nmap -sT 1.1.1.1 -p 80-2000
• nmap -sT -iL iplist.txt -p 80
默认1000
僵尸扫描
发现僵尸机
• nmap -p445 192.168.1.133 --script=ipidseq.nse
扫描目标
• nmap 172.16.36.135 -sI 172.16.36.134 -Pn -p 0-100
1.3 服务扫描
• nmap -sT 1.1.1.1 -p 22 --script=banner
• nmap 1.1.1.1 -p 80 -sV
1.4 操作系统
• nmap 1.1.1.1 -O
1.5 SMB扫描
• nmap -v -p139,445 192.168.60.1-20
• nmap 192.168.60.4 -p139,445 --script=smb-os-discovery.nse
• nmap -v -p139,445 --script=smb-check-vulns --script-args=unsafe=1 1.1.1.1
1.6 SMTP扫描
• nmap smtp.163.com -p25 --script=smtp-enum-users.nse --script-args=smtp-enum-users.methods={VRFY}
• nmap smtp.163.com -p25 --script=smtp-open-relay.nse
1.7 防火墙
• nmap -sA 172.16.36.135 -p 22 (指定端口检查)
1.8 WAF识别
• nmap www.microsoft.com --script=http-waf-fingerprint
或者--script=http-waf-detect
2 信息收集下篇
此部分摘录于《NMAP渗透测试指南》
使用—script脚本
2.1 IP信息搜集
nmap --script ip-geolocation-* www.Oday .co
注意,如果目标域名使用了CDN,则无效。
2.2 WHOIS查询
WHOIS通常使用TCP协议43端口。每个域名或IP的WHOIS信息由对应的管理机构保存。
nmap --script whois www.0day.co
查询该域名的历史whois,可以获得更多信息,
nmap --script whois --script-args whois.whodb-nofollow www.0day.co
使用列表的方式进行查询,
nmap -sn --script whois -v-iL host.txt
2.3 IP反查
IP 反查可以将所有绑定到该IP的域名显示出来,这样我们就可以很清楚地知道有几个站点在同一个服务器上。但是IP反查不能辨别IP真伪。
nmap -sn --script hostmap-ip2hosts www.0day.co
2.4 DNS查询
nmap --script dns-brute dns-brute.threads=10 www.xxx.com,设置10个线程时相应的扫描速度会增加。
2.5 通过Snmp列举Windows服务/账户
nmap -sU -p 161 --script=snmp-win32-services 192.168.126.128
Nmap提供的snmp-win32-services脚本可以轻易地通过Snmp服务获取目标正在运行着的服务,通过snmp-win32 users脚本则可以看到目标的所有账户。
2.6 枚举DNS服务器的主机名和子域名
nmap --script dns-brute --script-args dns-brute.domain=baidu.com
该脚本可以使用“dns-brute.threads =线程”指定线程来加快或减少破解速度,使用dns-brute. hostlist=./hostfile.txt指定一一个 需要枚举的列表。
2.7 HTTP信息搜集
使用-sV选项即可对HTTP版本进行探测, nmap -sV -p 80 www. Oday. Com
使用命令“nmap -p 80 --script=http-headers目标地址”即可对目标地址进行HTTP头信息探测。
使用命令“nmap -p 80 --script-http-sitemap-generator目标地址”即可爬行Web目录结构。
2.8 枚举SSL密钥
SSL ( Secure Sockets Layer,安全套接层)及其继任者传输层安全(Transport Layer Security, TLS)是为网络通信提供安全及数据完整性的种安全协议。TLS与SSL在传输层对网络连接进行加密。SSL协议使用密钥对数据进行加密,这样可以最大程度保障数据的安全,通过发送SSLv3/TLS请求可以判断目标服务器支持的密钥算法和压缩方法。
使用命令“nmap -p 443 --Script=ssl-enum-ciphers目标”即可枚举SSL密钥。
2.9 SSH服务密钥信息探测
SSH是英文Secure Shell的简写形式。通过使用SSH,可以把所有传输的数据进行加密,这样“中间人”这种攻击方式就不可能实现了,而且也能够防止DNS欺骗和IP欺骗。SSH有很多功能,它既可以代替Telnet,又可以为FTP、POP,甚至为PPP提供一一个安全的“通道”。
nmap -p 22 --script ssh-hostkey --script-args ssh_ hostkey=full 127.0.0.1
安全学习交流群:687398569