1.Nmap列举远程机器开放的端口
nmap进行探测之前要把域名通过DNS服务器解析为IP地址,我们也可以使用指定的DNS服务器进行解析。 使用--dns-servers参数来指定
对于已经知道主机存活或者防火墙开启的机器,可以使用-Pn参数来停止探测之前的ICMP请求。已达到不触发防火墙安全机制。
对于默认的端口范围,并不能满足日常工作需要。可以使用-p mn来指定探测端口范围为m-n之间的所有端口。
端口状态:
- Open 表示端口处于开放状态 ;
- Closed 表示端口处于关闭状态;
- Filterd 表示端口处于过滤无法收到返回的probe状态;
- UnFilterd 表示端口收到返回的probe,但是无法确认;
- Opend/UnFilterd 表示端口处于开放或者是过滤状态:
- Closed/UnFilterd 表示端口处于关闭或者未过滤状态
2.服务指纹
为了确保有一个成功的渗透测试或网络设备监控,必须需要知道目标系统中服务的指纹信息。服务指纹信息包括服务端口、服务名和版本等。
通过分析目标往Nmap发送的数据包中某些协议标记、选项和数据,我们可以推断发送这些数据包的操作系统等。
nmap通过向目标主机发送多个UDP与TCP数据包并分析其响应来进行操作系统指纹识别工作。
Nmap识别服务指纹
使用命令nmap -sV IP 地址来识别目标机器的服务信息。
Nmap侵略性的探测
IP地址使用命令nmap -A -V -T4来探测目标机器的操作系统、服务等信息
Nmap侵略性的探测
来探测目标机器的操作系统、服务等信息。使用nmap -sC -sV -O IP地址其中 sC 参数表示使用Nmap脚本进行探测,SV 表示探测目标机器上的服务信息,0表示探测目标机器的操作系统信息。--sC: equivalent to --script=default
主机发现
一个局域网中肯定是连接着多台设备,使用 ping ip地址进行探测,也可以使用不同的工具来进行批量探测。
CIDR CIDR(无类别域间路由,Classless,Inter-Domain Routing),可以快速表示一个网络比如 :172.16.1.1/24 表示在 172.168.1.1-17216.1.25之间的所有主机IP地址。
Nmap主机发现
对该网络中所有主机进行ping扫描,以探测主机存活性。扫描过程使用Nmap命令: nmap -SP CIDR中使用了TCP SYN扫描、ICMP echo Request来探测主机存活。
Nmap主机发现
使用Nmap命令: nmap -sn CIDR对该网络中所有主机进行ping扫描,以探测主机存活性
Nmap主机发现,结果输出
使用Nmap命令: nmap -sn CIDR -ox test.xml对该网络中所有主机进行ping扫描,以探测主机存活性。同时将结果输出到test.xm1文件中,以便后续使用
实际场景
在实际环境中,当系统管理员对设备进行管理时,或者渗透测试人员对设备进行检测时,并不定对所有的服务进行操作。极有可能是对某个或某个范围内的服务进行检测。
如果对所有服务进行探测,那么就会出现耗时长,费力不讨好的情况。针对这样的情况,我们很有必要了解如何使用Nmap来更加灵活的进行服务探测,避免全端口探测对服务器造成压力。
端口探测技巧
对某个端口进行探测 nmap -p8 ip
端口探测技巧
对某个范围端口进行探测 nmap -p1-1e ip
端口探测技巧
指定协议探测端口 nmap -p T:25,U:53 ip
通过协议名来扫描端口 nmap -p smtp ip
通过名称范围扫描
nmap -p s* ip