【tools】nmap 喜欢ヅ旅行 2022-10-14 00:47 161阅读 0赞 # nmap # ## 介绍 ## (网络映射器)是 Gordon Lyon 最初编写的一种安全扫描器,用于发现计算机网络上的主机和服务,从而创建网络的“映射”。为了实现其目标,Nmap 将特定数据包发送到目标主机,然后分析响应.NMAP 强大的网络工具,用于枚举和测试网络。 ## 原理 ## 【】 ### 探测目标是否在线 ### 当探测公网 ip 时 Nmap 会发送四种不同类型的数据包来探测主机是否在线。 以次发送四个报文探测目标主机是否开启。只要收到其中一个包的回复,那就证明目标主机开启。使用不同类型的数据包可以避免因防火墙或丢包造成的判断错误。 通常主机发现并不单独使用,而只是作为端口扫描、版本探测、OS 侦测先行步骤。而在某些特殊应用(例如大型局域网内活动的主机数量),可能会单独专门使用主机发现功能来完成。 ICMP echo request a TCP SYN packet to port 443(https) a TCP ACK packet to port 80(http) an ICMP timestamp request ### 当探测内网 ip 时 ### 使用 nmap -sn 内网 ip 这个命令会发送 arp 请求包探测目标 ip 是否在线,如果有 arp 回复包,则说明在线。此命令可以探测目标主机是否在线,如果在线还可以得到其 mac 地址。但是不会探测其开放的端口号。 ## 安装 ## https://nmap.org/download.html windos 直接官网下载安装 安装前安装 Npcap linux 直接 install nmap ## 配置 ## ## 使用 ## nmap 默认发送一个 ARP 的 PING 数据包,来探测目标主机 --top-ports 1000 的端口 默认 端口扫描是随机的想要顺序的可以加 -r 参数 ### Nmap 常用操作 ### nmap --traceroute 192.168.0.105 #对目标进行路由跟踪 nmap -sP 192.168.0.100/24 #C 段在线状况-sP 为ping扫描 nmap -O 192.168.0.105 #系统指纹识别 nmap -sV 192.168.0.123 #开放端口对应的服务版本 nmap -sF -T4 192.168.0.100 #探测防火墙状态 nmap -p80,445,3389 192.168.0.123 #扫描指定端口或-p nmap -sS -T5 -p 80,21,22,23 -iL iplist.txt -n -oX result.txt #从文件导入扫描,结果导出为文件 -sn #只做 ping 扫描 -Pn #不做发现操作,默认所有目标都是在线 -n 或-R #不做 DNS 反向解析 -iR #random(随机选择目标) -sU #UDP -A # -vvv #详细打印 -sL #list 只列出目标 ### Nmap 端口状态与含义 ### open -->开放的,表示应用程序正在监听该端口,外部可以访问 filtered --> 被过滤的,表示端口被防火墙或其他网络设备阻止,不能访问 closed -->关闭的 unfiltered -->未被过滤的,,表示 Nmap 无法确定端口状态,需要进一步探测 open/filtered --> 开发的或被过滤的,Nmap 不能识别 closed/filtered -->关闭的或被过滤,Nmap 不能识别 ### Nmap 高级用法 ### nmap -F -Pn -D 10.96.10.100,10.96.10.110,ME -e eth0 -g 5555 202.207.236.3 #-F参数表示快速扫描100个端口,-Pn不进行ping扫描,-D表示使用ip诱骗方式掩饰真实ip,使用的是10.96.10.100和10.96.10.110,ME表示自己真实的ip,这里是10.96.10.234,-e 参数指定eth0网卡发送数据包,-g参数指定发送的端口号 nmap -p 88 --script krb5-enum-users --script-args krb5-enum-users.realx="xie.com",userdb="users.txt" 192.168.10.131 #当主机不在域环境,可通过以下命令爆破域内用户 ### Nmap 漏洞扫描 ### nmap --script-updatedb #漏洞脚本升级 nmap --script=auth 192.168.0.105 #应用弱口令探测 nmap --script=brute 192.168.0.105 #暴力破解攻击 nmap --script=vuln 192.168.0.105 #扫描常见的漏洞 nmap --script=http-iis-webdav-vuln 192.168.0.105 #webdav 远程执行漏洞扫描 nmap -p80 --script=http-iis-short-name-brute 192.168.0.105 #IIS<7.5 尝试短文件漏洞目录文件扫描 nmap -T4 -A -sV -v3 -d -oATargetoutput --script all 192.168.0.105 #针对目标主机使用所有脚本 nmap --script=dns-zone-transfer --script-args dns-zone-transfer.domain=xxx.com -p 53 -Pn dns.xxx.com #检测域传送漏洞 nmap -v -p139,445 --script=smb-check-vulns --script-args=unsafe=1.1.1.1 #扫描 SMB 漏洞 ### 增加 script ### https://github.com/cldrn/nmap-nse-scripts cp -rf scripts/\* /usr/share/nmap/scripts/ ### Nmap Full Web Vulnerable Scan ### mkdir /usr/share/nmap/scripts/vulscan cd /usr/share/nmap/scripts/vulscan wget http://www.computec.ch/projekte/vulscan/download/nmap_nse_vulscan-2.0.tar.gz && tar xzf nmap_nse_vulscan-2.0.tar.gz nmap -sS -sV –script=vulscan/vulscan.nse target nmap -sS -sV –script=vulscan/vulscan.nse –script-args vulscandb=scipvuldb.csv target nmap -sS -sV –script=vulscan/vulscan.nse –script-args vulscandb=scipvuldb.csv -p80 target nmap -PN -sS -sV –script=vulscan –script-args vulscancorrelation=1 -p80 target nmap -sV –script=vuln target nmap -PN -sS -sV –script=all –script-args vulscancorrelation=1 target ## 总结 ## nmap 除了做端口扫描外 还可以结合脚本做很多事情,比如漏洞扫描,暴力破解等 但一般我们还是用 nmap 做端口扫描这类工作或做为主机发现工具集成到平台内。 对于大段的扫描,masscan 可能效率更高,但误报也很高,常常 masscan 结合 nmap 用 ## 常见故障 ## 配合 proxychains4 nmap 扫描对方内网的时候出现: netutil.cc:1351: int collect\_dnet\_interfaces(const intf\_entry\*, void\*): Assertion \`rc == 0’ failed vi /etc/proxychains.conf 注释掉 proxy\_dns 扫描的时候一定要带上-Pn ## 参考引用 ## https://nmap.org/ https://www.cnblogs.com/R1card0/p/14551018.html
还没有评论,来说两句吧...