如何在两个链路本地 ipv6 地址之间执行中间人攻击

如何在两个链路本地 ipv6 地址之间执行中间人攻击

我正在尝试在计算机和仅使用 IPv6 链路本地地址进行通信的设备之间建立中间人。我已经在 Kali Linux VM 中使用 ettercap 成功将自己置于两者之间,因此第一步没问题。我在不可见代理模式下使用 burp 代理将请求重定向到设备,并且能够看到发生了什么变化,但由于请求被发送到设备的链路本地地址,因此它们无法到达 VM 上的 Burp 代理。

有没有办法配置 Kali Linux VM 的接口,以便将数据包发送到 Burp 代理的侦听套接字?我无法将接口的 ipv6 链路本地地址设置为设备的地址,因为它会在网络上重复。在本地主机接口上设置设备的 ipv6 链路本地地址是否可行?

有没有办法配置 Linux 以便转发 ipv6 链接本地地址?

如果没有的话我已经想到了几种使其发挥作用的方法:

  • 在 KALI VM 的接口上配置设备的 ipv6 链路本地地址,并创建阻止 NDP 回复的 iptable 规则,以便 Linux VM 不会看到该地址已被使用。它应该允许 Burp 代理接收请求并可能回答 SYN-ACK。但请求必须发送到设备 ipv6 地址,该地址也将位于接口上,因此我不确定请求是否会被转发。

  • 使用 scapy “复制”计算机发送到设备的数据包,只将 ipv6 链接本地目标地址更改为 Kali VM 的地址。然后我需要制定一个 iptable 规则来删除答案,然后再次使用 scapy 复制答案,这次重写 ipv6 源地址

您觉得如何?这两种解决方案都有效吗?有没有更简单的方法?

谢谢

相关内容