通常被称为半开放扫描(因为自己先SYN,然后收到服务端的SYN/ACK之后并不ACK,而是RST所以并不建立TCP连接)。
发送SYN
包,
- 如果收到
SYN/ACK
=> 端口开放; - 如果收到
RST
=> 端口关闭; - 如果未收到回复=> 端口被屏蔽(Filtered) 由于仅发送SYB包,不建立完整TCP连接,相对隐蔽,效率高
建立完整的TCP连接(因为自己先SYN,然后收到服务端的SYN/ACK之后先ACK才RST,于是三次握手已完成,TCP连接建立)。
发起connect连接,
- 如果连接建立 => 端口开放
- 如果收到
RST
=> 端口关闭
用于辅助SYN方式判断防火墙的情况。
发送ACK包,
- 如果收到RST包 => 没有被防火墙屏蔽
- 如果未收到RST包 => 被防火墙屏蔽
只能用于探测是否被防火墙屏蔽
发送FIN,
- 如果收到RST => 端口关闭
- 如果未收到RST => 端口开放/屏蔽(
open|filtered
)