无法为主机进行 arp,Kali Linux

无法为主机进行 arp,Kali Linux

我目前正在学习网络安全基础知识,并尝试遵循以下有关 ARP 欺骗的教程。我在 Windows PC 上的 VirtualBox VM 上使用 kali linux 将我的 Windows 计算机的网关重定向到我的 kali VM,但我一直收到“无法为主机进行 arp”错误。我还尝试将我的 iPhone 网关重定向到 kali,以防从 VM 重定向我的计算机不合理,但我遇到了同样的问题。
我的完整过程是在 Windows 上使用 ipconfig 来获得类似以下内容(法语):

Carte réseau sans fil Wi-Fi :  
   Suffixe DNS propre à la connexion. . . : epfl.ch  
   Adresse IPv6 de liaison locale. . . . .:  fe80::9c0c:82bd:c93d:a9ad%11  
   Adresse IPv4. . . . . . . . . . . . . .: 128.179.179.227  
   Masque de sous-réseau. . . . . . . . . : 255.255.248.0  
   Passerelle par défaut. . . . . . . . . : 128.179.176.1  

从中我推断出我必须在 kali 上运行的命令是:

echo 1 > /proc/sys/net/ipv4/ip_forward
arpspoof -i eth0 -t 128.179.179.227 128.179.176.1

我的手机 IP 是 128.179.199.89。
当我在 kali 上运行时ip a,我得到的 IP 地址是 10.0.2.15,网关是 10.0.2.2,我不知道这个差异是否是我无法使命令工作的原因。如果有人知道我可能遗漏了什么或我应该调用什么,我很乐意听听你的想法。谢谢!
https://www.youtube.com/watch?v=mchrDyBdMmc&t=421s

答案1

存在几个问题:

  1. 当我在 kali 上运行 ip a 时,我得到的 IP 地址是 10.0.2.15,网关是 10.0.2.2

    您的 VirtualBox VM 处于“NAT”模式,这意味着它位于与您的实际 LAN 完全不同的“物理”网络中。有一个路由器(VirtualBox 本身)允许网络层 (L3) 通信,但 ARP 是一种链路层 (L2) 机制;它仅在同一子网内起作用 - ARP 数据包不会跨路由器传输。

    为了实现这一点,虚拟机需要处于“桥接”网络模式,这样它就直接与主机处于同一网络上。

    桥接也不能保证在 Wi-Fi 上工作——VirtualBox 必须实现一些技巧才能实现。(具体来说,问题是它无法通过 Wi-Fi 让虚拟机的真实 MAC 地址可见;它们会显示为拥有主机的 MAC,而 VirtualBox 必须神奇地重写 ARP 响应以匹配。)我建议始终使用以太网连接。

    (强调所有方式 - 使用以太网交换机很好,但连接到 Wi-Fi 并为您提供以太网端口的“范围扩展器”将具有与 VirtualBox 本身完全相同的问题。)

  2. 您的计算机和手机也位于不同的子网中。将计算机的地址 (128.179.179.227) 与网络掩码 (255.255.248.0) 相结合,您将获得网络地址 128.179.176.0/21 – 作为一个范围,它将以 128.179.183.255 结束。请注意,您的手机的 IP 地址不在此范围内。

    这意味着,至少你的手机会向一个与你的完全不同的网关地址发出 ARP 查询,最有可能的是,两个网络也在链路层分离,这意味着一个网络的 ARP 查询在另一个网络是不可见的。

  3. 您的计算机的 Wi-Fi 连接似乎允许您访问共享子网(我猜是校园范围的 Wi-Fi)——如果你在那里实施 ARP 欺骗,它会影响连接到它的所有用户,这可能会 a) 将几百台设备的流量路由到你的笔记本电脑,b) 使设备所有者不高兴,c) 使 EPFL 网络管理员非常不高兴,d) 以上所有。

    这是假设它有效。更可能的是,网络管理员已启用客户端隔离在 Wi-Fi 接入点上,这样你的计算机就永远不会看到其他设备的 ARP 查询即使在同一个子网中(接入点代表被查询的设备回答),同样,其他设备永远不会看到您的“欺骗” ARP 响应。

    (客户端隔离正是为了防止某人做你想做的事情。)

相关内容