1.网络监听原理
网络监听是一种数据链路层的技术,利用的是共享式的网络传输介质。共享意味着网络中的一台机器可以监听到传递给本网段(冲突域)中的所有机器的报文。例如,最常见的以太网就是一种共享式的网络技术。以太网卡收到报文后,通过对目的地址进行检查来判断报文是否是传递给自己的,如果是,则把报文传递给操作系统;否则,将报文丢弃,不进行处理。网卡存在一种特殊的工作模式,在这种工作模式下,网卡不对目的地址进行判断,而直接将它收到的所有报文都传递给操作系统进行处理。这种特殊的工作模式称为混杂模式(Promiscuous Mode)。网络监听器通过将网卡设置为混杂模式,并利用数据链路访问技术来实现对网络的监听。实现了数据链路层的访问,就可以把监听能力扩展到任意类型的数据链路帧,而不只是IP数据报。例如Tcpdump、Netxray就是直接访问数据链路层的常用程序。
2.网络监听防范措施
网络监听是很难被发现的,因为运行网络监听的主机只是被动地接收在局域局上传输的信息,不主动与其他主机交换信息,也不修改在网上传输的数据包。
1)从逻辑或物理上对网络分段
网络分段通常被认为是控制网络广播风暴的一种基本手段,但它其实也是保证网络安全的一项措施。其目的是将非法用户与敏感的网络资源相互隔离,从而防止可能的非法监听。
2)以交换式集线器代替共享式集线器
对局域网的中心交换机进行网络分段后,局域网监听的危险仍然存在。这是因为网络最终用户的接入往往是通过分支集线器而不是中心交换机,而使用最广泛的分支集线器通常是共享式集线器。这样,当用户与主机进行数据通信时,两台机器之间的数据包(称为单播包Unicast Packet)还是会被同一台集线器上的其他用户所监听。因此,应该以交换式集线器代替共享式集线器,使单播包仅在两个节点之间传送,从而防止非法监听。当然,交换式集线器只能控制单播包,而无法控制广播包(Broadcast Packet)和多播包(Multicast Packet)。广播包和多播包内的关键信息远远少于单播包。
3)使用加密技术
数据经过加密后,通过监听仍然可以得到传送的信息,但显示的是乱码。使用加密技术的缺点是影响数据传输速度,并且若使用弱加密术比较容易被攻破。系统管理员和用户需要在网络速度和安全性上进行折中。(www.xing528.com)
4)划分VLAN
运用VLAN(虚拟局域网)技术,将以太网通信变为点到点通信,可以防止大部分基于网络监听的入侵。
3.网络监听检测方法
1)Ping方法
大多数非法的网络监听程序都是运行在网络中安装了TCP/IP协议栈的主机上,这就意味着如果向这些计算机发送一个请求,它们将产生回应。Ping方法就是向可疑主机发送包含正确IP地址和错误MAC地址的Ping包。没有运行网络监听程序的主机将忽略该帧,不产生回应。如果得到回应,那么说明可疑主机确实在运行网络监听程序。目前针对这种检测方法,有的网络监听程序已经增加了虚拟地址过滤功能。从这种方法可以引申出其他方法,任何产生回应的协议都可以利用,比如TCP、UDP等。
2)ARP方法
这是本项目要重点描述的Wireshark检测方法,以下根据连接网络的不同介质来介绍。在共享介质环境中,利用ARP协议,由检测主机创建并发送可疑主机的IP地址作为目的IP地址,而MAC地址不同于此主机的ARP请求包,所有计算机都将收到这个ARP请求包,但只有运行了Wireshark软件的主机的网卡驱动程序会直接将这个请求包传送给内核协议栈进行处理,其他主机会丢弃这个ARP请求包。可以通过接收可疑主机是否有ARP应答包来判断该主机的网卡是否处于混杂模式以进一步作出判断。在交换介质环境中,通过对ARP欺骗原理的分析发现,当网络中存在Wireshark进行ARP欺骗时,会有以下两种情况出现。一是出现源IP地址相同、源MAC地址不同的ARP冲突应答包,这是由于欺骗主机向目标主机发送构造的ARP应答包,而被骗主机在正常响应ARP请求时也会发送正确的ARP应答包,这样网络中就出现了两种不同的ARP冲突应答包。二是为了达到稳定欺骗效果,某主机周期性地发送ARP应答包,且发包频率高于正常的ARP包出现频率。假定交换机是可管理的,可以得到通过交换机的所有数据拷贝,将运行反窃听程序的主机接到交换机监听口,监视流经交换机的所有ARP数据包,对收到的每一个ARP包进行IP-MAC地址对解析,再与缓存表中的地址对进行比较来判断是否有监听行为发生。
Wireshark是一个网络封包分析软件。它拥有强大的过滤器引擎,用户可以使用过滤器筛选出有用的数据包,显示网络封包的详细信息。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。