网络监听技术是负责网络安全的管理员用来管理网络的一种工具,它和其他安全工具一样,主要负责管理网络即时状态、数据传播与流动、信息异常等非正常网络变化情况。局域网中各台主机之间传送信息主要通过广播的方式,在某个网域范围中,监听技术一方面可以帮助网络安全管理人员监测其维护范围内网络的状态、数据流动情况以及网络上传输的信息,但另一方面,监听技术也可以帮助黑客以不正当手段窃取网络上的所有信息,这样,监听技术还担负着对黑客入侵活动和其他网络犯罪进行侦查、取证。
2监听技术的原理
网络协议采用的工作方式是把要发送的信息数据包发往连接在一起的所有主机,在数据包头中指定要接收该数据包的主机的地址,按协议规定,只有数据包头中的地址与主机地址完全对应上后该主机才能接收数据包,但当某台主机工作的监听状态下,就跳过检测地址这一环节,这台主机就可以接收所有数据包了,并全部传递到上一个协议层,当数据包的信息以明文的形式传播的时候,所有的信息都将毫不设防地展现在接收者面前,遗憾的是,部分局域网上的数据信息大多都是以明文的方式传播的。当某连锁企业将数据信息发往另一台主机的时候,如果正好有一个黑客或网络不法分子承监听,那么就不难理解为什么会出现客户食宿信息泄漏的问题了。
3监听的实现方法
实现网络监听的最基本要求就是对网卡进行设置,使其工作在混杂模式下,普通模式下的网卡必须检测数据包携带的地址,只有完全相同,本台机器才能接收这个数据包,但工作在混杂模式下的网卡,直接跳过检测这个环节,对所有经过的数据包来者不拒,全部接收。所以,这要设置网卡的工作模式就可以实现网络监听。下面介绍三种设置网络工作模式的方法。(1)使用原始套接字(rowsocket)方法:首先创建原始套接字,然后使用setsockopt()函数进行IP头操作选项的处理,再使用bind()函数对主机网卡和原始套接字进行驳接绑定,最后,为了让原始套接字能够最大限度地接收经过本网络卡的数据包,再使用ioctlsocket()函数处理,此时,该主机就可以进行网络监听了。这种方法相对容易,但功能也相对较弱,只能对运行在较高层次上的数据包进行接收和处理。(2)使用NDIS库函数,NDIS库函数有22种近300个函数,比如MiniportWanSend,表示如果驱动程序控制着WANNIC,通过网络接口卡发送一个包到网络上。这种方法比较复杂,功能比较强大,但是相对来讲风险较大,一不小心,可能导致系统崩溃和网络瘫痪。(3)使用中间层驱动程序,这种中间层程序可以是自行编写的,也可以使用微软提供的win2000DDK。(4)使用第三方捕获组件或者库,比如Wnpcap。
二监听的检测(Monitordetection)
网络监听是一种被动的接收,很难发现,就像你将声音发出后,不能确定谁在听,谁没有听,也不能确定谁听取了什么内容,接收信息的机器都是被动接收同,没有信息交换,没有修改传输,所以识别监听相对比较困难,这里讨论几种常规的检测方法。(1)发送大量无地址或错地址的数据包,然后比较发送前后某台机器的运行状况,如果该机器综合性能明显降低,该台机器很可能运行机制了监听程序,因为监听程序要接收并处理数据包的海量信息,这样会占用机器的资源,所以综合性能就会下降。(2)用错误的IP地址ping,如果某台机器对于错误的地址也有响应,则可以判定这台机器运行了监听程序,这是因为正常的机器不接收错误的物理地址,处于监听状态的机器能接收。(3)使用第三方检测工具,比如Antisniffer就是一个常用的安全监视工具,用来监测网络内的主机的网卡是否处于混杂模式,以此来判断该机器是否在运行监听程序。
三监听的防范(Monitoringprevention)
1网络分段
网络分段是一种比较简单的经济的防范方式。它的基本原理是将一个大的物理范围网络划分为多个逻辑范围子网络。网络分段目的是将非法用户与敏感的网络资源相互隔离,从而防止可能的非法监听。一个网段就是一个小的局域网,监听的机器只能在在属于自己的小网段内监听,不会听到别的网段内的信息,减少安全隐患。这就像会议的分组讨论,一个“间谍”只有在一个小组内部监听,不能监听到别的小组,而不同小组讨论的信息内容是不一样的,这样减少信息被盗取的范围和程度。
2“以交代共”
这里的“交”指的是交换式集线器,“共”指的是共享式集线器。交换式集线器也叫交换机,它通过对信息进行重新生成,并经过内部处理后转发至指定端口,也就是说使用了交换机后可以直接将信息唯一性地发住目标机器,这样监听机器就不能听到传播的信息,从而对监听进行有效的防范。就像点对点的电话通讯,发送者和接收者通过单线联系,别人听不到自己在说什么,从而保证信息的安全。
3建立虚拟局域网虚
拟局域网(VLAN),是指网络中的站点不拘泥于所处的物理位置,而可以根据需要灵活地加入不同的逻辑子网中的一种网络技术。建立了虚拟局域网后,各虚拟网之间不能直接进行通讯,而必须通过路由器转发,为高级的安全控制提供了可能,增强了网络的安全性。可以防止大部分基于网络监听的入侵。这样即使有某一台机器在执行监听功能,但其可能不确定在某个逻辑子网,从而监听不到特定的数据信息,并且高层次的安全控制手段再落实到位,可能不论在哪个逻辑子网都无法监听到信息。
4信息加密信息加密技术
日益成熟,人们的安全意识也日渐增加,所以信息加密在目前年看来是一种简单可行的方法,我们只要在网络上传输信息就一定要加密,经过加密的数据即使被监听者捕获到,但得到的信息都是乱码,从而变成一堆无用的垃圾。如果监听者要对捕获的加密信息进行解密,那又将大大加重监听者的成本,特别是现在先进的加密技术下,监听到的数据信息有用的可用的将越来越少。