个人使用
- nmap -sU --script nbstat.nse -p137 192.168.1.0/24 -T4 主机发现
- arp-scan -l
- nmap -sC -sV -v -p- -A 192.168.192.129 主机扫描
参数详解
- nmap -sC -sV -v -p- -A 192.168.192.129
-sC 是指的是采用默认配置扫描,与--script=default参数等价;
--script=脚本名称,脚本一般都在Nmap的安装目录下的scripts目录中
/usr/share/nmap/scripts
- telnet爆破脚本
ls /usr/share/nmap/scripts/ | grep telnet
nmap --script-help=telnet-brute
nmap -p 23 --script telnet-brute --script-args userdb=myusers.lst,passdb=mypwds.lst,telnet-brute.timeout=8s <target>
- -sC调用的脚本default NSE Category
- nmap -sT -Pn -F 10.14.16.0/24
nmap -p 23 -Pn --script=telnet-brute --script-args=userdb=admin.lst,passdb=passwords.lst,telnet-brute.timeout=3s --script-trace 10.14.16.106 爆破23 - 漏洞利用方面:vuln NSE Category
权限验证方面:auth NSE Category
暴力破解方面:brute NSE Category
服务信息发现:discovery NSE Category
DOS攻击方面:dos NSE Category
漏洞利用方面:https://nmap.org/nsedoc/categories/exploit.html
外部扩展方面:external NSE Category (集成了shodanAPI)
FUZZ测试方面:fuzzer NSE Category
一些针对的服务入侵模块:intrusive NSE Category
恶意后门方面:malware NSE Category
版本识别:version NSE Category
--script=all 调用所有脚本扫描
参考 1.2.3 - 进阶参数
- -sP 打印出对ping扫描做出响应的主机,不做进一步测试(如端口扫描或者操作系统探测):
- -sn ping探测扫描主机, 不进行端口扫描 (测试过对方主机把icmp包都丢弃掉,依然能检测到对方开机状态)
- -sA 发送tcp的ack包进行探测,可以探测主机是否存活
- -sS :半开放扫描(非3次握手的tcp扫描)
使用频率最高的扫描选项:SYN扫描,又称为半开放扫描,它不打开一个完全的TCP连接,执行得很快,效率高
优点:Nmap发送SYN包到远程主机,但是它不会产生任何会话,目标主机几乎不会把连接记入系统日志。(防止对方判断为扫描攻击),扫描速度快,效率高,在工作中使用频率最高缺点:它需要root
/administrator
权限执行
- sU:udp端口的扫描
Udp scan(sU) 顾名思义,这种扫描技术用来寻找目标主机打开的UDP端口.它不需要发送任何的SYN包,因为这种技术是针对UDP端口的。UDP扫描发送UDP数据包到目标主机,并等待响应,如果返回ICMP不可达的错误消息,说明端口是关闭的,如果得到正确的适当的回应,说明端口是开放的.udp端口扫描速度比较慢
- -sF、-sX、-sN
秘密FIN数据包扫描、圣诞树(XmasTree)、空(Null)扫描模式
有的防火墙可能专门阻止-sS扫描。使用这些扫描可以发送特殊标记位的数据包
比如,-sF发送一个设置了FIN标志的数据包
它们和-sS一样也需要完成TCP的握手.
和sS扫描效果差不多,都比sT速度快
除了探测报文的标志位不同,三种扫描在行为上一致
优势:能躲过一些无状态防火墙和报文过滤路由器,比SYN还要隐秘
劣势:现代的IDS产品可以发现,并非所有的系统严格遵循RFC 793
- sV:版本检测(sV)
版本检测是用来扫描目标主机和端口上运行的软件的版本 - -A参数
-A综合扫描,包括系统探测,版本探测,脚本扫描,路由跟踪 - -S
nmap -e eth0 10.0.1.161 -S 10.0.1.167 -Pn - -Pn 目标机禁用ping,绕过ping扫描,默认所有目标主机存活
- nmap -sI 僵尸ip 目标ip //使用僵尸机对目标机发送数据包
- nmap -T1~6 192.168.96.4 //设置扫描速度,一般T4足够。
- nmap –data-length: <length> 192.168.96.4 //改变发生数据包的默认的长度,避免被识别出来是nmap发送的。
- 欺骗防火墙nmap -F -o -D1.1.1.1,2.2.2.2,3.3.3.3 -g8080 127.0.0.1(扫描的地址) #-o探测版本;-Dx.x.x.x,x.x.x.x 伪造ip;-g伪造端口nmap -p 4444 -sT -sv --spoof-mac xx:xx:xx:xx:xx:xx #--spoof-mac mac源地址欺骗
利用其他主机进行空闲扫描
nmap -Pn -si 8.8.8.8 :80 www.baidu.com 格式: nmap -Pn -si 空闲主机ip:端口port 目标#-si
发现空闲主机
nmap --script ipidseq -iR 10000 -oN ipidseq.txt 利用脚本随机扫描10000个输出保存在ipidseq.txt中
- -D RND:10 设置10个虚假ip
- -oX 生成xml报告文件