2

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描

 2 years ago
source link: https://blog.51cto.com/u_1965839/4907439
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

本文使用Nmap和Wireshark进行网络端口扫描的实验和原理探究。

端口扫描是人为发送一组端口扫描消息,试图以此了解某台计算机的弱点,并了解器提供的计算机网络服务类型(这些网络服务均与端口号相关)。

nmap支持端口扫描,所有的扫描选项都是以-s<X>形式出现的。

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_nmap

我们的基础网络拓扑为

kali:192.168.189.141

windows2012:192.168.189.153

其中windows2012中部署了http服务,开放了80端口。

SYN半连接扫描

-sS是端口扫描中较常用,高效的一种扫描方式,扫描速度要快于全连接扫描。

SYN半连接扫描由于不会建立完整的TCP连接,因此难以被防火墙或者管理员发现。如果发现目标端口出现被开放或者过滤的情况,可以考虑使用SYN半连接扫描。

nmap -sS 192.168.189.153 -p 80

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_抓包_02

我们使用wireshark进行抓包分析,使用过滤规则为

ip.addr==192.168.189.153 and tcp.port==80

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_web安全_03

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_抓包_04

可以看到我们的kali发送了tcp请求报文,但是没有完成3次握手,在第二次握手后就主动进行了释放。

TCP全连接扫描

-sT是端口扫描中最基础、最稳定的扫描方式。

nmap -sT 192.168.189.153 -p 8080

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_web安全_05

我们使用wireshark进行抓包分析,使用过滤规则为

ip.addr==192.168.189.153 and tcp.port==80

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_web安全_03

可以看到有2组,每组4个包,表示3次握手和释放连接。

TCP全连接扫描用于SYN扫描不能使用的时候,Nmap会在相应端口上建立完整的3次握手,因此不会因泛红而导致目标主机崩溃。

如果我们扫描没有开放的端口,如8080端口。

nmap -sT 192.168.189.153 -p 8080

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_端口扫描_07

我们使用wireshark进行抓包分析,使用过滤规则为

ip.addr==192.168.189.153 and tcp.port==80

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_抓包_08

可以看到只有两个包,一个是SYN包进行请求,一个是RST包释放连接。

只能在linux中使用,原理是发送TCP畸形请求报文,躲避无状态防火墙的检测,如果扫描不出结果或者出现被过滤的情况,可以使用以下三种方式进行扫描。

Null扫描

nmap -sN 192.168.189.153 -p 80

-sN选项是通过发送flags置位全为0的SYN请求报文,如果目标主机的相应端口关闭,就会响应一个RST数据包,反之不会响应任何信息。

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_端口扫描_09

我们使用wireshark进行抓包分析,使用过滤规则为

ip.addr==192.168.189.153 and tcp.port==80

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_web安全_10

可以看到发送的SYN请求中Flags位全空,而正常情况下,SYN请求包中SYN是置位的,这是一种畸形TCP报文。

Xmas扫描

nmap -sX 192.168.189.153 -p 80

-sX选项是通过发送flags为FIN、PSH、URG位置位的请求报文,如果目标主机的相应端口开放,就会响应一个RST数据包,反之不会响应任何信息。

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_端口扫描_11

我们使用wireshark进行抓包分析,使用过滤规则为

ip.addr==192.168.189.153 and tcp.port==80

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_端口扫描_12

可以看到发送的SYN请求中Flags位URG PSH FIN位置位了,而正常情况下,SYN请求包中只有SYN是置位的,这也是一种畸形TCP报文。

FIN扫描

nmap -sF 192.168.189.153 -p 80

-sF选项是通过发送flags为FIN置位的请求报文,如果目标主机的相应端口开放,就会响应一个RST数据包,反之不会响应任何信息。

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_wireshark_13

我们使用wireshark进行抓包分析,使用过滤规则为

ip.addr==192.168.189.153 and tcp.port==80

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_端口扫描_14

可以看到发送的SYN请求中Flags位FIN位置位了,而正常情况下,SYN请求包中只有SYN是置位的,这也是一种畸形TCP报文。

#yyds干货盘点#web安全day44:进阶!使用Nmap+Wireshark理解端口扫描_抓包_15


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK