【问题标题】:Linux Socket and ARP spoofingLinux Socket 和 ARP 欺骗
【发布时间】:2018-04-20 10:55:51
【问题描述】:

我一直在我的本地 LAN 上试验 ARP 欺骗。 现在,我想尝试用 C 编写一个简单的嗅探器,但我有一些问题:

  1. 如果 ARP 欺骗成功,我的 NIC 将接收并且不会丢弃具有我的 MAC 地址(第 2 层)但 DST IP(第 3 层)不是我的数据包。我可以使用什么样的套接字来接收这些数据包?我认为某种 RAW 套接字,但一个例子或一个很好的参考将不胜感激。
  2. 有没有办法(抛出 C)将我的 NIC 置于混杂模式以强制它接收具有不同 MAC 的数据包?

【问题讨论】:

  • 混杂模式支持是 NIC 驱动程序/FW 的专有功能。请参阅产品文档。
  • 呃,不,这不正确。虽然 NIC 在细节上有所不同,但几乎每个 NIC 都支持混杂模式,并且有启用它的标准机制,无需查看 NIC 文档。我将从libpcap (tcpdump.org) 开始。您可能最终需要直接使用AF_PACKET 套接字进行更高级的操作,但不仅仅是嗅探流量。

标签: linux sockets ip arp raw-sockets


【解决方案1】:

经过一番调查,我认为最好的方法是使用 libcap http://man7.org/linux/man-pages/man3/libcap.3.html,它带有很好的调用例程。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-20
    • 1970-01-01
    • 2015-10-18
    • 1970-01-01
    • 1970-01-01
    • 2020-07-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多