Nmap
1、常用命令
nmap 192.168.0.100(简单扫描)
nmap 192.168.0.100/24(扫描目标地址所在的某个网段)
nmap 192.168.0.0/24(扫描整个子网中的网络主机信息)
nmap 192.168.1.1/24(在某个网段进行扫描)
nmap -sP 192.168.242.1/24(Ping扫描)
nmap-sP 192.168.0.100/24(扫描目标地址所在C段的在线状况)
nmap -sn 10.96.10.0/24 或 nmap -sn 10.96.10.100-200(探测该主机所在网段内所有主机的在线情况)
nmap 192.168.0.100 192.168.0.105(扫描多个目标地址)
nmap -sV 192.168.1.30(s:代表service,服务 V:代表version,版本)
nmap -D 192.168.1.33,192.168.1.56 192.168.1.30(-D后可以紧跟多个伪造的IP,多个伪造IP之间使用“,”隔开)
nmap -sU 192.168.33.147(UDP扫描)
nmap -6 IPv6(扫描IPV6 地址)
2、端口扫描
nmap -P 80 192.168.242.1
nmap -P 80-100 192.168.242.1
nmap -p 10-100 192.168.0.100
nmap -p 80,135 192.168.0.100
nmap 192.168.0.100 –p 21,22,23,80
nmap -sV 118.24.11.235 -p 80
nmap -p 1-1000 192.168.24.18
nmap -p 1-65535 192.168.1.12
nmap -sU -p 80-500 192.168.0.12
端口服务版本信息获取
利用namp获取目标系统的端口版本信息:nmap -sV IP
nmap --script banner IP
nmap -sv -p port IP
3、禁用主机检测
禁用主机检测(-Pn),如果主机屏蔽了ping请求,Nmap可能会认为该主机没有开机。这将使得Nmap无法进行进一 步检测,比如端口扫描、服务版本识别和操作系统识别等探测工作。为了克服这一问题,就 需要禁用Nmap的主机检测功能。在指定这个选项之后,Nmap会认为目标主机已经开机并会 进行全套的检测工作
nmap -Pn -A 118.24.11.235
nmap -P0 192.168.242.1
nmap -Pn 118.24.11.235
4、识别操作系统
操作系统检测(-O),Nmap还能识别目标主机的操作系统。
nmap -O 118.24.11.235
nmap -A 202.207.236.2(全面扫描)
5、防火墙/IDS 逃逸
nmap -f -v 61.241.194.153(报文分段)
nmap --mtu 16 192.168.1.131(指定偏移大小,设置TCP/IP协议传输数据报时的最大传输单元,需要注意的是偏移量必须是8的倍数)
nmap -D 192.168.1.104,192.168.1.103,192.168.1.101 192.168.1.104(IP 欺骗)
nmap -sI www.0day.cn:80 192.168.1.104(源地址欺骗)
nmap --source-port 902 192.168.1.104(源端口欺骗)
nmap --data-length 30 192.168.1.104(指定发包长度)
nmap --randomize-hosts 192.168.1.104(目标主机随机排序)
nmap -sT -Pn --spoof-mac 0 192.168.1.104(MAX 地址欺骗)
6、WAF探测
--script=http-waf-detect #验证主机是否存在WAF
--script=http-waf-fingerprint #验证主机是否存在WAF
7、信息收集
1.nmap -A -v -T4 IP(利用nmap对目标主机进行完整信息收集,一般在目标系统有授权情况下进行信息收集)
2.Whois解析
利用第三方的数据库或资源查询目标地址的信息,例如进行Whois解析
nmap-script external baidu.com
3.IP 信息收集
nmap --script ip-geolocation-* www.bbskali.cn
4.WHOIS 查询
nmap --script whois-domain www.pcos.cn
nmap --script whois-domain --script-args whois.whodb=nofollow
www.ithome.com
nmap -sn --script whois-domain -v -iL host.txt
5.IP 反查
nmap -sn --script hostmap-ip2hosts www.bbskali.cn
6.DNS 信息收集
nmap --script dns-brute www.bbskali.cn
nmap --script dns-brute dns-brute.threads=10 www.bbskali.cn
nmap --script dns-brute dns-brute.threads=10,dns-brute.hostlis
www.bbskali.cn
7.检索系统信息
nmap -p 445 445 192.168.1.104 --script membase-http-info
8.通过Snmp 列举Windows 服务/账户
nmap -sU -p 161 --script=snmp-win32-services 192.168.1.104
nmap -sU -f -p 161 --script=snmp-win32-users 192.168.1.110
9.枚举DNS 服务器的主机名
nmap --script dns-brute --script-args dns-brute.domain=baidu.com
10.HTTP 信息收集
nmap -sV -p 80 www.0day.com (HTTP 版本探测)
nmap -p 80 --script=http-headers www.pcos.cn (HTTP 信息头探测)
nmap -p 80 --script=http-sitemap-generator www.pcos.cn (爬行Web 目录结构)
11.枚举SSL 密钥
nmap -p 443 --script=ssl-enum-ciphers www.baidu.com
12.SSH 服务密钥信息探测
nmap -p 22 --script ssh-hostkey --script-args ssh_hostkey=full 127.0.0.1
8、漏洞扫描
nmap--script=auth 192.168.0.105(使用--script=auth可以对目标主机或目标主机所在的网段进行应用弱口令检测)
nmap--script=vuln 192.168.0.105(扫描常见的漏洞)
nmap --script vuln
nmap -sV -p 8443 --script ssl-heartbleed.nse 192.168.85.131(心脏滴血漏洞扫描)
nmap --script smb-check-vulns.nse -p 445 119.29.155.45(系统漏洞扫描)
nmap -p80 --script http-stored-xss.nse/http-sql-injection.nse 119.29.155.45(扫描Web 漏洞)
nmap -script smb-vuln-ms17-010 192.168.10.34(探测该主机是否存在ms17_010漏洞)
9、暴力破解
nmap --script=http-brute dvwa.vuln.leafsec.com(Nmap HTTP认证爆破)
nmap--script=brute 192.168.0.105(可对数据库、SMB、SNMP等进行简单密码的暴力猜解)
nmap --script=ftp-brute.nse 192.168.88.131(利用FTP指定脚本对目标特定FTP协议进行密码爆破)
nmap --script=ftp-brute.nse 192.168.88.131
数据库暴力破解
nmap --script=mysql-brute
nmap -p 3306 --script=mysql-brute.nse 192.168.123. 239(利用nmap暴力 mysql破解)
nmap --script oracle-brute -p 1521 --script-args oracle-brute.sid=ORCL
nmap -p 5432 --script pgsql-brute
其他
nmap -p 22 --script ssh-brute --script-args userdb=users.lst,passdb=pass.lst --script-args ssh-brute.timeout=4s
nmap --script dns-brute www.baidu.com(利用DNS进行子域名暴力破解)
10、TCP报文主要字段得主要含义:
SYN:请求连接
ACK:确认接收数据
FIN:请求断开连接
RST:强行断开连接
11、Nmap通过探测将端口划分为6个状态:
open:端口是开放的。
closed:端口是关闭的。
filtered:端口被防火墙IDS/IPS屏蔽,无法确定其状态。
unfiltered:端口没有被屏蔽,但是否开放需要进一步确定。
open|filtered:端口是开放的或被屏蔽,Nmap不能识别。
closed|filtered :端口是关闭的或被屏蔽,Nmap不能识别
12、CIDR 为你设置的子网掩码(/24 , /16 ,/8 等)
a类网
10.0.0.0 ~ 10.255.255.255
b类网
172.16.0.0 ~ 172.31.255.255
c类网
192.168.0. 0~ 192.168.255.255
A类网络缺省子网掩码:255.0.0.0,用CIDR表示为/8
B类网络缺省子网掩码:255.255.0.0,用CIDR表示为/16
C类网络缺省子网掩码:255.255.255.0,用CIDR表示为/24
解释:CIDR 为你设置的子网掩码(/24 , /16 ,/8 等)
更多扫描脚本的使用方法可参见https://nmap.org/nsedoc/categories。
检测一个网站是不是蜜罐](https://honeyscore.shodan.io/)
--script-updatedb #更新脚本数据库