nmap用于网络扫描和主机检测 漏洞探测 安全扫描
发现主机
nmap -sP 10.0.3.0/24 发现有哪些机器,主机,路由器,交换机,跳过端口检测
nmap -sn 10.0.1.161-166 ping探测扫描主机,不进行端口扫描
nmap 10.0.1.161 -sA (发送tcp的ack包进行探测,可以探测主机是否存活)
nmap 192.168.1.1-100 (扫描IP地址为192.168.1.1-192.168.1.100内的所有主机)
nmap -iL target.txt (ip地址列表)
nmap 192.168.1.1/24 -exclude 192.168.1.1(扫描除过某一个ip外的所有子网主机)
nmap 192.168.1.1/24 -exclude filexxx.txt(xxx.txt中的文件将会从扫描的主机中排除)
端口(服务发现)
nmap -F 192.168.11128,使用快速扫描方式,仅扫描TOP 100的端口
指定具体的端口类型和端口号来让nmap扫描
nmap -p T:8888,80 server2.tecmint.com
有时候包过滤防火墙会阻断标准的ICMP ping请求,
在这种情况下,我们可以使用TCP ACK和TCP Syn方法来扫描远程主机。
nmap -PS 192.168.0.101
nmap -vv 192.168.11.128,用Nmap进行简单扫描,并对返回的结果详细描述输入。
-vv 参数设置对结果的详细输出
使用TCP ACK扫描远程主机上特定的端口
nmap -PA -p 22,80 192.168.0.101
使用TCP Syn扫描远程主机上特定的端口
nmap -PS -p 22,80 192.168.0.101
**Tcp SYN Scan (sS) 默认扫描类型,半开放扫描,不会在远程主机产生会话和任何日志记录,需要root/administrator权限
nmap -sS 192.168.1.1
**TCP connect()扫描 调用系统的connect() 需要完成三次握手 适用于找出TCP和UDP端口
nmap -sT 192.168.1.1
nmap -sT 10.0.1.161等同于 nmap 10.0.1.161
**Udp scan(sU) 针对UDP端口的
nmap -sU 192.168.1.1
**FIN scan(sF) 目标主机有时候可能有IDS和IPS系统的存在,防火墙会阻止掉SYN数据包。
发送一个设置了FIN标志的数据包并不需要完成TCP的握手.
和sS扫描效果差不多,比sT速度快(对windows无效)
nmap -sF 10.0.1.161
nmap -sN 192.168.0.101(执行TCP空扫描以骗过防火墙)
版本检测 系统检测
用来扫描目标主机和端口上运行的软件的版本
nmap -sV 10.0.1.161
nmap -version-intensity 3 172.16.1.252 强度越高,探测出的服务越准确
nmap -O 172.16.1.252 通过目标开放的端口来探测主机所运行的操作系统类型
nmap --traceroute 192.168.11.128 跟踪详细路由信息
nmap -sV -v -O - Pn 172.16.1.175
-sV,代表进行版本侦测,-O 代表进行OS侦测,
-pn将所有指定的主机视作开启,跳过主机发现的过程 ,-v表示详细的显示所有结果。
常用NSE脚本
nmap --script=vuln 192.168.11.128, 检查是否存在常见漏洞
nmap --script=auth 192.168.11.128 负责处理鉴权证书(绕开鉴权)的脚本,也可以作为检测部分应用弱口令
nmap --script=default 192.168.11.128 或者 nmap -sC 192.168.11.128,默认的脚本扫描,主要是搜集各种应用服务的信息,
收集到后,可再针对具体服务进行攻击
nmap --script=broadcast-netbios-master-browser 192.168.11.128,使用脚本 发现网关
nmap -sV -p139,445 -oG 1.txt 192.168.11.128,其中-sV代表让nmap进行版本侦测,-p代表指定端口,-oG代表输出为1.txt文件