我正在尝试构建一个winpcap应用程序,能够在基于交换机的局域网中嗅探目标主机的通信量。
为了实现这一点,我试图执行arp欺骗。这样,目标主机和逃逸者之间的消息将通过我发送,然后我就能嗅探到它们。
我知道欺骗是如何工作的,我必须发送什么arp数据包,以及如何发送它们。问题带来了转发内容:默认情况下,我的机器将在到达时丢弃数据包,因为它们不是我的IP地址。
我读过关于IPEnableRouter窗口注册表值的文章,但是我更喜欢一些代码来获得它。
我一直在为WinPcap使用Java库(JNetPcap),但我可以使用其他一些语言。这两台计算机都安装了Windows。
发布于 2012-11-06 11:29:15
默认情况下,我的机器将在到达时丢弃数据包,因为它们不是我的IP地址。
如果将适配器置于混杂模式,则不应发生这种情况。据推测,用于WinPcap的Java支持混杂模式;libpcap/WinPcap pcap_open_live()
会这样做,并且自首次创建libpcap以来就已经这样做了。
这确实意味着你的程序将不得不进行转发,但是,如果你想玩网络游戏,比如ARP欺骗,你可能需要做更多的网络东西,比如包转发,比你想做的要多。
https://stackoverflow.com/questions/13244204
复制相似问题