网络安全|测试攻击机伪装成目标机 IP 给目标机发送攻击报文是否成功


文章目录

      • 1 测试内容
      • 2 测试环境
      • 3 测试步骤
      • 4 结论

1 测试内容
【网络安全|测试攻击机伪装成目标机 IP 给目标机发送攻击报文是否成功】测试 Linux 环境下,攻击机伪装成目标机发送数据包给目标机,即源地址和目标地址都为目标机的 IP 地址,看目标机是否能够接受到该数据包。
2 测试环境
  • 攻击机 A (Ubuntu):192.168.10.20
  • 目标机 B (Ubuntu):192.168.10.2
3 测试步骤
  1. 测试连通:在 A 主机中发送 ping 包给 B 主机,命令:ping 192.168.10.2,测试结果如下,证明网络是通的:
    网络安全|测试攻击机伪装成目标机 IP 给目标机发送攻击报文是否成功
    文章图片
  2. 在 B 主机开启 wireshark,设置条件 tcp and tcp.port == 80 and ip.dst == 192.168.10.2
  3. 在 B 主机编写 iptables 规则,看数据包是否有进入到系统,规则如下:
    iptables -F iptables -A INPUT -p tcp --dport 80 -j LOG --log-prefix "iptables test"

  4. 在 B 主机上开启日志回显,dmesg -w
  5. A 主机通过 hping3 发送数据包,不伪装地址,命令:hping3 -S -p 80 -c 3 192.168.10.2
  6. A 主机通过 hping3 发送数据包,伪装成其它主机,命令:hping3 -S -p 80 -c 3 -a 192.168.10.3 192.168.10.2
  7. A 主机通过 hping3 发送数据包,伪装成目标主机,命令:hping3 -S -p 80 -c 3 -a 192.168.10.2 192.168.10.2
  8. 可以看到如下现象:
    网络安全|测试攻击机伪装成目标机 IP 给目标机发送攻击报文是否成功
    文章图片

    网络安全|测试攻击机伪装成目标机 IP 给目标机发送攻击报文是否成功
    文章图片
4 结论
目标机上运行的 wireshark 都能抓到攻击机发送的数据包,而 iptables 中只有 192.168.10.3 和 192.168.10.20 的数据包被获取到,而 192.168.10.2 的数据包则未收到。
由此,可以得出结论,攻击机伪装成目标机的 IP,给目标机发送的数据包会被 Linux 内核丢弃。

    推荐阅读