kali渗透测试日记 - 僵尸扫描思维学习

注意学习这种扫描的思维。
渗透,思维counts。

僵尸扫描

僵尸主机:僵尸主机是指感染僵尸程序病毒,从而被黑客程序控制的计算机设备。
但是僵尸扫描中的僵尸主机指得是一个闲置的操作系统(这里的闲置是指主机不会主动和任何人通信),且此系统中 IP 数据包中 ID 是递增的。
使用条件:

  1. 可伪造源地址进行访问
  2. 僵尸机的IPID需要递增(不被打扰。比如XP系统)

原理

端口开启的情况


第一步:参考图 1。
(1)、攻击者向僵尸机发送 SYN/ACK 确认包。
(2)、僵尸主机返回我们 RST 数据包关闭链接,RST 数据包中包含了 IPID 信息。假设 IPID=X
注:三次握手的第一个包是 SYN,目标主机收到 SYN 才会应答 SYN/ACK,因为僵尸主机没有向我
们发送 SYN 请求。所以僵尸主机返回我们 RST 数据包关闭链接。
第一步中,黑客的收获是:知道了僵尸主机的 IPID。

第二步:参考图 2。
(1)、攻击者修改 IP 包头的 SRC 字段为僵尸主机的 IP,伪装成僵尸主机给目标主机发 SYN 请求。
(2)、目标主机收到请求,如果端口是开放的就会返回给僵尸主机一个 SYN/ACK 的数据包。
(3)、僵尸主机收到目标主机发来的 SYN/ACK 确认包,因为僵尸主机没有给你发 SYN 请求。所以僵尸主机给目标主机返回了一个 RST 数据包。这个数据包表示关闭连接。此僵尸主机对外外发出一个数据包,所以僵尸主机的 IPID 值+1。此时 IPID 值为 X+1。
第二步中,黑客的收获是:如果目标主机端口开放,让僵尸主机的 IPID+1

第三步:参考图 3。
(1)、攻击者再次向僵尸主机发送 SYN/ACK 确认包
(2)、僵尸主机同样向攻击者返回了一个 RST 数据包,此僵尸主机对外又发出一个数据包,所以僵
尸主机的 IPID 值再+1。此时 IPID 值为 X+2。

第四步:计算 3 次通信过中的 IPID 值。
(1)、攻击者查看僵尸主机返回的数据包中 IPID 值为 X+2。
(2)、攻击者对比在第一步中的 IPID 值 X,发现增加了 2。
结论:肯定目标主机和僵尸主机通信了,能通信,就说明目标主机端口是开放的。

由于僵尸主机Zombie的IPID是自增1的,中途不会被其他通信干扰。
通过上图三个步骤可以在不暴露Scanner主机给目标主机的情况下,通过发行IPID增加了2个而间接发现目标主机的某端口是开放的。

端口关闭的情况


第一步:参考图 1。
(1)、攻击者向僵尸机发送 SYN/ACK 确认包。
(2)、僵尸主机返回我们 RST 数据包关闭链接,数据包中包含了 IPID 信息。假设 IPID=X
注:三次握手的第一个包是 SYN,目标主机收到 SYN 才会应SYN/ACK,因为僵尸主机没有向我们发送 SYN 请求。所以僵尸主机返回我们 RST 数据包关闭链接。

第二步:参考图 2。
(1)、攻击者修改 IP 包头的 SRC 字段为僵尸主机的 IP,伪装成僵尸主机给目标主机发 SYN 请求。
(2)、目标主机收到请求,如果端口是关闭的。就会返回给僵尸主机一个 RST 的数据包。
(3)、僵尸主机收到目标主机发来的 RST 包,关闭链接不对外发送数据包。此僵尸主机的 IPID 值还是 X。

第三步:参考图 3。
(1)、攻击者再次向僵尸主机发送 SYN/ACK 确认包
(2)、僵尸主机同样向攻击者返回了一个 RST 数据包,此僵尸主机对外发出一个数据包,所以僵尸主机的 IPID 值+1。此时 IPID 值为 X+1。

第四步:计算 3 次通信过中的 IPID 值。
(1)、攻击者查看僵尸主机返回的数据包中 IPID 值为 X+1。
(2)、攻击者对比在第一步中的 IPID 值 X,发现增加了 1。
结论:肯定目标主机和僵尸主机没有通信了。没能通信,就说明目标主机端口是关闭的。

以上就是僵尸扫描原理。

posted @ 2021-09-07 16:26  天气冷  阅读(200)  评论(0)    收藏  举报