在局域网上查找嗅探器

有哪些工具或技术可用于* nix和Windows,以帮助查找局域网中的其他人是否正在使用嗅探器?

话虽如此,并强烈地认为有工具可以发现这样的“现象”,那么为了不被嗅到什么呢?

嗅探器是非常困难的,因为它们被动地工作。 有些嗅探器确实会产生less量的stream量,但是有些技术可以检测到这些stream量。

  • 机器cachingARP(地址parsing协议)。 发送非广播ARP,混杂模式下的一台机器(使网卡通过所有stream量的网卡)将caching您的ARP地址。 然后,使用我们的IP发送广播ping数据包,但发送一个不同的MAC地址。 只有一台拥有正确的MAC地址的机器才能响应我们的广播ping请求。 所以,如果机器正在响应,它必须是嗅探。
  • 大多数嗅探器做一些parsing。 发送大量数据并数据泛滥之前和数据泛洪期间 ping可疑机器。 如果疑似机器的网卡处于混杂模式,将parsing数据并增加负载。 这样就需要一些额外的时间来响应ping。 这个小小的延迟可以用来指示机器是否在嗅探。 如果由于高stream量在networking上出现一些“正常的”延迟,可能会引起一些误报。
  • 下面的方法是旧的,不再可靠:用可疑机器的IP地址发送ping请求,但不发送其MAC地址。 理想情况下,没有人应该看到这个数据包,因为每个网卡都会拒绝ping,因为它不匹配它的MAC地址。 如果可疑机器正在嗅探,它将作出响应,因为它不会拒绝具有不同目标MAC地址的数据包。

有一些工具可以实现这些技术,例如Neped和ARP Watch等开源工具,或Windows的AntiSniff ,这是一个商业工具。

如果你想防止嗅探,最好的办法是对任何networking活动(SSH,https等)使用encryption 。 这样嗅探器可以读取stream量,但数据对他们来说并不合适。

数据包嗅探是一种被动的活动,通常不可能判断某人是否在嗅探您的networking。 但是,为了使有线交换局域网上的某个人看到不仅仅是去往或来自其IP(或者广播到networking/子网)的stream量,他们需要能够访问所有stream量的被监控/镜像端口,或者在网关上安装一个“tap”。

最好的防御嗅探是体面的端到端encryption,以及对敏感硬件的物理控制。

编辑:CPM,Neped和AntiSniff现在是10 – 15年陈旧…认为Linux内核<2.2或Windows NT4。 如果有人可以使用水龙头或镜子,通常很难检测到。 操纵ARP或DNS可能是最好的select,但这远远不是一件确定的事情。

(我相信)你可以嗅探交换局域网上所有stream量的唯一方法就是“中间人”攻击。 你基本上做ARP中毒,窃取每个人的数据包,读取它们,然后将它们发送到正确的计算机。

可能有多种工具可以做到这一点,我只知道一个:

Ettercap既可以执行Mitm攻击,也可以在别人正在执行时检测到。

社会工程是另一种做法。 设置一个蜜jar根/pipe理帐户或其他诱人的目标,在明确广播它的密码,并观看你的日志。

有一个简单的方法来检测大多数嗅探器。 在networking上放置两个不在DNS中的盒子,不用于其他任何东西。 让他们定期ping或另外沟通。

现在,监视您的networking,查找其IP的任何DNS查找和/或ARP请求。 许多嗅探器默认会查找他们find的任何地址,因此在这些设备上查找将是一个可靠的警告。

一个聪明的黑客可以closures这些查询,但是很多人不会想到,而且肯定会减慢他的速度。

现在,如果他足够聪明,无法启用DNS查找,并防止这些设备的任何ARP,你的任务就更加困难。 在这一点上,你应该遵循networking总是被嗅探的哲学,并且制定积极的程序来防止在这个假设下出现的任何漏洞。 包括几个:

  1. 使用完全交换的networking
  2. 将交换机端口绑定到MAC地址
  3. 不允许在NIC上启用混杂模式(如果可能的话,在您的环境中)
  4. 使用安全协议

Wireshark是监视networkingstream量的一个很好的工具。 它会查找名称来匹配IP地址,从MAC地址find制造商等。当然,你可以看着它做这些查询,然后你知道它正在运行。

当然,你可以closures这些东西,然后不被发现。 还有其他计划旨在故意不被发现。 所以这只是要回答这个问题时要考虑的事情。

唯一可行的方法是检查子网上的每个设备。

有工具,例如nmap ,但他们不能保证工作,被动的水龙头不会背叛他们的存在。

最好的方法是假定你的networking或多或less是公开的并且使用encryption。 无论是在应用程序的基础上 – SSH,HTTPS IMAPS等,或通过VPN隧道所有的stream量

closures我的头顶上,我会看交换机SNMP接口数据的接口,主机正在接收更多的数据和/或发送更less的数据比平均水平。 寻找超出标准偏差的任何东西,你可能会发现人们最有可能做他们不应该做的事情。

它可能不仅仅是嗅探器,可能会发现狂热的hulu / netflix观察者。

你的交换机/路由器也可能有function要注意,并抓住试图毒害ARP表的人,这也是一个非常大的乐趣。

集线器(或者像Thinnet / Thicknet这样的真正旧的networking设置)总是通过线路传输所有的数据。 任何插入的人都会看到本地网段上的每个数据包。 如果您将网卡设置为混杂模式(读取所有数据包,而不是直接发送给您的数据包)并运行数据包捕获程序,则可以看到发生的所有事情,嗅探密码等。

交换机像旧学校的网桥一样运行,它们只是将stream量从一个端口转移出去,如果它是a)广播b)去往该设备的

交换机维护一个caching,指示哪个MAC地址在哪个端口上(有时会有一个集线器或交换机菊花链接端口)。 交换机不会将所有stream量复制到所有端口。

高端交换机(用于商业用途)可能有特殊的端口(跨度或pipe理),可configuration为复制所有stream量。 IT部门使用这些端口来监控stream量(合法嗅探)。 检测未经授权的嗅探应该很容易 – 查看交换机,看是否有任何东西插入该端口。