我正在尝试构建一个能够在基于交换机的局域网内嗅探目标主机流量的winpcap应用程序。
为了执行此操作,我正在尝试执行arp欺骗。这样,目标主机和逃跑之间的消息将通过我发送,然后我就可以嗅探它们。
我知道欺骗是如何工作的,我必须发送什么arp数据包以及如何发送它们。 带有转发内容的问题:默认情况下,我的计算机将在到达时丢弃数据包,因为它们不会发往我的IP地址。
我已经阅读了有关IPEnableRouter Windows注册表值的信息,但我更喜欢一些代码来获取它。
我一直在为WinPcap(jNetPcap,Jpcap)使用Java Wrapper库,但我可以使用其他一些语言。 两台计算机都安装了Windows Vista。
答案 0 :(得分:0)
默认情况下,我的机器会在到达时丢弃数据包,因为它们不会发往我的IP地址。
如果将适配器置于混杂模式,那么不应该发生。据推测,WinPcap的Java包装器支持混杂模式; libpcap / WinPcap API pcap_open_live()
这样做,并且自从首次创建libpcap以来已经这样做了。
这确实意味着你的程序必须进行转发,但是,如果你想玩ARP欺骗等网络游戏,你可能需要做更多的网络工作,例如数据包转发,比你想要的要多。