信息收集之nmap(常用参数详解以及高级扫描) |
您所在的位置:网站首页 › ipadair3参数详细参数 › 信息收集之nmap(常用参数详解以及高级扫描) |
0x00前言
nmap是一款开源的网络探测和安全审核工具,它的功能非常强大,可以扫描单个主机或者一个网络,从而发现存活的主机、主机上的端口开放情况、端口运行的服务以及操作系统版本等信息。但相对来说,要记忆使用的参数也是较多的~ 0x01常用参数详解(注意区分大小写) 一、目标指定-iL 指定一个文本文件,这个文件每一行应写一个IP地址或者一个网络 //ip.txt 192.168.1.1 192.168.2.0/24 nmap -iL ip.txt-iR 指定主机数量,随机扫描相应数量的主机 nmap -iR 5 192.168.1.0/24–exclude 指定一个或多个IP,不扫描这些IP nmap 192.168.1.0/24 --exclude 192.168.1.1,192.168.1.2,192.168.1.3–excludefile 指定一个文本文件,不扫描文件里的IP //exclude-ip.txt 192.168.1.1 192.168.1.2 nmap 192.168.1.0/24 --excludefile exclude-ip.txt 二、主机发现-sL 简单列出扫描的目标 nmap -sL 192.168.1.0/24 //会把扫描的IP一个一个列出来-sP/-sn 做ping扫描,网上说-sn参数在目标禁止回显ICMP的情况下也能扫描到,我用nmap 7.80版本实测,两个参数在目标禁ping情况下都能扫到,可能升级了吧吼吼~ nmap -sP/-sn 192.168.1.0/24-Pn/-P0 对于在线的主机,不要再次进行主机发现扫描,直接扫描其他信息 nmap -Pn/-P0 192.168.1.1-PS/-PA/-PU/-PY 分别是SYN扫描、ACK扫描、UDP扫描、SCTP扫描(这是传输层的一种协议,有意思的是,建立连接4次握手,断开需要3次握手,有兴趣可以了解一下~),也可指定端口 nmap -PS/-PA/-PU/-PY 192.168.1.1-PE/-PP/-PM 分别是ICMP回显、时间戳、网络掩码发现扫描 nmap -PE/-PP/-PM 192.168.1.1-n/-R 永不对IP地址进行反向域名解析/永远对IP地址进行反向域名解析 nmap -n/-R 192.168.1.1–dns-servers 指定dns服务器 nmap -R 192.168.1.1 --dns-servers 114.114.114.114,8.8.8.8–system-dns 使用系统的dns nmap -R 192.168.1.1 --system-dns 三、端口扫描技术在端口扫描之前,我们先看一个关于端口状态的信息~ 端口状态描述open目标机器上的应用程序已监听此端口closed端口未开放filtered端口被防火墙等设备过滤,报文无法到达目标端口unfiltered端口能被访问,但无法判断是open还是closedopen/filtered无法判断端口是open或是filteredclosed/filtered无法判断端口是closed或是filtered-sS/-sT/-sA/-sW/-sM 分别是SYN扫描,只发送SYN包;TCP全连接扫描,建立三次握手;ACK扫描,只发送ACK包;TCP窗口扫描,发送ACK包,判断窗口值;FIN/ACK扫描 nmap -sS/-sT/-sA/-sW/-sM 192.168.1.1-sU UDP扫描 nmap -sU 192.168.1.1-sN/-sF/-sX 分别是NULL扫描,不设置任何标志位,即tcp头为0;FIN扫描,只设置tcp FIN标志位;Xmas扫描,设置FIN、PSH、URG标志位 nmap -sN/-sF/-sX 192.168.1.1–scanflags 自定应tcp头的标志位 nmap 192.168.1.1 --scanflags SYN–sI 僵尸扫描,最为隐蔽,攻击机和目标机不进行交互 nmap 1.1.1.1 -sI 2.2.2.2:4444 //不指定端口默认为80-b FTP弹跳扫描,可以通过连接发布的FTP服务当作跳板扫描内网,经常用来躲避防火墙 nmap 192.168.1.0/24 -b :@:ps: 如果在没有nmap的Windows主机上怎么做一些端口扫描的简单的测试呢?可以使用telnet工具,example:telnet 192.168.1.1 80,如果对方端口没开放则提示连接失败,如果开放将跳到一个空的黑窗口~~ 四、端口指定-p 指定要扫描的端口,一般形式有以下几种: -p 21,53,80,443,1433,1521,3306 -p 1-1024 -p U:53,111,137 T:21-25,80,8080 //当即扫描udp端口又扫描tcp端口可以这么指定 nmap -sU 192.168.1.1 -p U:53,111,137 T:21-25,80,8080 //既扫描 UDP又扫描TCP,必须指定 -sU ,以及至少一个TCP扫描类型 ps:不指定-p选项,默认扫描1-65535端口,但nmap默认跳过9100TCP端口,因为此端口为默认打印机服务端口,为避免有一些打印机直接将nmap请求打印出来~-F 快速扫描 -r 不要按随即顺序扫描端口,nmap出于效率的考虑,会把常用的端口先扫描 五、服务版本探测-sV 探测开放端口运行的服务以及版本 nmap -sV 192.168.1.1 ps:-A参数可以同时识别服务版本和操作系统版本 六、操作系统识别-O 进行操作系统的识别 nmap -O 192.168.1.1 ps:-A参数可以同时识别服务版本和操作系统版本 七、绕过防火墙/IDS-f 报文分段发送,通过修改IP包头的分段标志位实现 –mtu 指定mtu的大小,mtu:最大传输单元,在网络层封装完毕后,整个数据包的大小,默认为1500,超过1500对端可能不会接收~ -S 指定IP地址,源地址欺骗 -e 指定接口,如eth0 –source-port 指定源端口,源端口欺骗 –spoof-mac 指定MAC地址,MAC地址欺骗 –ttl 指定ttl值,自定义ttl值 八、常用脚本使用nmap扫描指定脚本一般用 --script 参数~ http-enum 脚本可以扫描端口信息的同时对web站点进行针对性收集,例如cms和目录文件的爆破等 nmap test.com --script http-enumhttp-auth-finder 指定该脚本可以在web站点上尝试寻找登录认证页面 nmap test.com -p 80 --script http-auth-findernmap的强大之处还在于能对一些服务进行爆破~ mysql爆破 nmap --script=mysql-brute 192.168.1.1 //使用默认字典SMTP爆破 nmap -p25 --script smtp-brute 192.168.1.1SMB爆破 nmap -p445 --script smb-brute.nse –script-args userdb=./user.txt,passdb=./pass.txt 192.168.1.1 //指定用户名和密码字典FTP爆破 nmap -p21 --script ftp-brute.nse --script-args userdb=./user.txt,passdb=./pass.txt 192.168.1.1还可以对一些常规漏洞进行扫描 nmap --script=smb-vuln-ms06-025 192.168.1.1 //扫描是否存在ms06-025这个漏洞 nmap --script=vuln 192.168.1.1 //扫描所有开放的端口上的服务有没有漏洞,也可指定端口 ls /usr/share/nmap/scripts/ //可以查看脚本,更多脚本自己发发掘~ 九、扫描结果输出-oN 标准输出,写入指定文件,格式和终端显示一致 nmap -A 192.168.1.1 -oN scan.txt-oX XML格式输出,便于处理文档 nmap -A 192.168.1.1 -oX scan.xml-oA 指定一个目录,输出所有格式 nmap -A 192.168.1.1 -oA /root/scan/ 0x02结语以上就是nmap的一些常用命令的使用,以及对命令原理的简单概括,我这里收藏了nmap的中文手册:http://www.nmap.com.cn/doc/manual.shtm#11 ,里面写了非常完整的选项和工作原理,感兴趣可以翻看一下~ 谨此记之,以便日后查阅~~ The end~ |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |