nmap的使用:
nmap 在渗透中常用命令:
1.扫描子网 nmap 192.168.1.0/24
2.扫描全端口信息:nmap -p- 靶机ip
3.在防火墙禁止ping 的情况下使用:nmap -po 靶机ip
4.查看开放了那些端口:nmap -sT 靶机ip
5.查看存活的主机:nmap -sP 靶机ip
6.扫描隐藏端口:nmap -sS 靶机ip
7.进行主机系统识别: nmap -sS -O 靶机ip
8.将扫描结果保存到1.txt: nmap -oN 1.txt 靶机ip
9.检测操作系统和服务:nmap -A 靶机ip
10.标准服务检测 :nmap -sV 靶机ip
11.探测防火墙规则: nmap -sA 靶机ip
12.探测是否有防火墙: nmap -PN 靶机ip
13. 扫描全部端口并且扫描端口服务 nmap -sV -p- 靶机ip
14. nmap -sS -p 3389 -oG- 网关ip/24 (加上 | grep open 更清晰) //再加上“-oG”选项表示以一种易于检索的格式记录信息,即每台主机都以单独的行来记录所有信息。
nmap -O -sV 192.168.1.1
扫描系统版本信息和服务版本信息,
要扫描单个服务信息(如web)使用nmap -sV -p 80 192.168.1.1
扩展 以下是常用参数:
-O:**操作探测;
-P0:只进行扫描,不ping主机;
-PT:同TCP的ping;
-sV:探测服务版本信息;
-sP:ping扫描,仅发现目标主机是否存活;
-ps:发送同步(SYN)报文;
-PU:发送udp ping;
-PE:强制执行直接的ICMPping;
-PB:默认模式,可以使用ICMPping和TCPping;
-6:使用IPv6地址;
-v:得到更多选项信息;
-d:增加调试信息的输出;
-oN:以人们可阅读的格式输出;
-oX:以xml格式向指定文件输出信息;
-oM:以机器可阅读的格式输出;
-A:使用所有高级扫描选项;
--resume:继续上次执行完的扫描;
-P:指定要扫描的端口,可以是一个单独的端口,用逗号隔开多个端口,使用“-”表示端口范围;
-e:在多网络接口Linux系统中,指定扫描使用的网络接口;
-g:将指定的端口作为源端口进行扫描;
--ttl:指定发送的扫描报文的生存期;
--packet-trace:显示扫描过程中收发报文统计;
--scanflags:设置在扫描报文中的TCP标志。
2.nmap脚本引擎
nmap的脚本默认目录为:/usr/share/nmap/scripts/
类别 | 解释 |
auth | 负责处理鉴权证书(绕开鉴权)的脚本 |
broadcast | 在局域网内探查更多服务开启状况,如dhcp/dns/sqlserver等服务 |
brute | 提供暴力**方式,针对常见的应用如http/snmp等 |
default | 使用-sC或-A选项扫描时候默认的脚本,提供基本脚本扫描能力 |
discovery | 对网络进行更多的信息,如SMB枚举、SNMP查询等 |
dos | 用于进行拒绝服务攻击 |
exploit | 利用已知的漏洞入侵系统 |
external | 利用第三方的数据库或资源,例如进行whois解析 |
fuzzer | 模糊测试的脚本,发送异常的包到目标机,探测出潜在漏洞 intrusive:入侵性的脚本,此类脚本可能引发对方的IDS/IPS的记录或屏蔽 |
malware | 探测目标机是否感染了病毒、开启了后门等信息 |
safe | 此类与intrusive相反,属于安全性脚本 |
version | 负责增强服务与版本扫描(Version Detection)功能的脚本 |
vuln | 负责检查目标机是否有常见的漏洞(Vulnerability),如是否有MS08_067 |
举个栗子使用vuln模块进行常见漏洞检测(会有点慢):
nmap --script vuln 192.168.88.14
3.防火墙逃逸,绕过防火墙扫描。
- 报文分段法:
- nmap -f -v 192.168.88.14
- 在Nmap使用-f选项时会将TCP头分段在几个包中,使得包过滤器、IDS以及其他工具的检测更加困难。Nmap在IP头后会将包分为8个字节或更小。
- 一些主机会禁止相应ICMP请求,对于这种情况就可以使用报文分段的方法来逃避目标防火墙的规则。
- 指定报文大小:
- nmap --mtu 16 192.1688.14
- 此值设定TCP/IP协议传输数据报时的最大传输单元。使用指定MTU可以达到逃逸防火墙/IDS的目的,需要注意的是偏移量必须是8的倍数。
- 指定发包长度
- nmap --data-length 30 192.168.88.14
- 通常情况下,TCP包是40个字节,ICMP Echo 有28个字节,所以在原来的报文基础上附加随机数据达到规避防火墙的效果。
4.探测目标防火墙规则
nmap --script=firewalk --traceroute 192.168.88.14
在Nmap的firewalk脚本通过发送一个请求并分析TTL值,可以探测防火墙的规则。
VMWare认证**
5.VMWare认证**
- nmap -p 902 --script vmauthd-brute 192.168.88.14
- Nmap中的vmauthd-brute脚本可以**安装虚拟机系统的用户名与密码。