现代网络信息监控系统的设计与实现
作者:徐涌 龙全圣
来源:《电子世界》网页界面设计的网络系统有哪些2012年第24期
作者:徐涌 龙全圣
来源:《电子世界》网页界面设计的网络系统有哪些2012年第24期
【摘要】针对网络信息监控问题,分析了网络信息监控的实现手段,采用了基于SNIFFER技术的信息监控技术,解决了在高速网络中对网络传输的信息内容进行监控的需要,实现拥有自主版权的能够满足高速网络环境下的网络信息监测系统软件,能够在高速网络的边界路由器上进行网络信息监测,能够监测含有具备某种特征的敏感信息的网络内容的来源和去向,能够及时对网络上的安全事件进行处理。
【关键词】信息监控;网络安全;WinPcap;多模式匹配算法
一、引言
开发该系统的目的是由于现代网络的发展速度太快,通过这种媒体途径发布不良信息的话将给社会的政治、经济、精神文明等方面带来许多负面影响,然而我国的网络信息监测方面开发和使用监测系统起步较晚,且以往的各种网络安全检测工具都无法满足对现代网络信息内容
的监测需要,近期国内我也出现了一些安全工具但是功能有限,或者是根本无法满足对信息内容的监测。因此,目前急需一个拥有自主版权的并能够满足高速网络环境下的网络信息内容监测系统。
二、网络信息监控的实现方法
网络信息监控实现方法分为三种:
(1)对网络服务或者网络服务日志的信息监控程序
网络服务是指使用各种服务器所提供的修改各种服务器的程序或软件,在其中嵌入特殊信息过滤代从而使服务器上的程序具备对信息监测和过滤的功能。
(2)代理服务器技术的信息监控
使用多个代理服务器组成服务器集并提供信息监控和过滤服务,这是一种规则过滤技术。很多交换机就是使用这种技术充当防火墙,其原理是当信息流进入proxy后,必须通过过滤器的过滤后才能进行信息转发。依据规则集合库中的规则对信息进行过滤其中合法信息通过代理服务器转发到用户,而非法信息被抛弃。
(3)信息监控技术——SNIFFER
首先在硬件上给边界路由器设置一个或多个监听端口,用来捕获经过边界路由器的所有数据报。许多网络设备已经从硬件上支持和使用类似数据捕获的功能,通过端口映射的方式可以获取通过交换机的所有数据报文。Sniffer具备的最大的优点也是与前两种信息监测技术所不同的地方,就是对网络的性能无影响。
三、设计网络信息监控系统的思路
从三个层面进行系统设计的思路:
(1)首先在网络的链路层采用sniffer技术或通过网络探针技术捕获经过边界路由器上的所有数据报。
(2)其次是在网络层采用TCP/IP协议软件的实现方式处理数据包,具体的处理方式如下:a)首先对有分片的数据报进行IP层的重组,使之成为完整的IP数据报;b)然后在TCP层进行数据报的还原,使之还原为原始传输内容的数据;c)再根据其具体的应用层协议对数据进行还原分析。
(3)最后对已经过应用层协议还原的数据进行特征关键字匹配,从而完成对信息内容的监测。
四、网络信息监控系统的数据采集结构
网络信息监控系统的数据采集有两种实现结构:一种是在边界路由器和内网之间设置类似防火墙的监控主机,可以对出入的所有数据包进行检查、拦截和阻断,但是高速网络下很容易影响网络性能和网络带宽;另一种方案是监听方式,也就是所谓的sniffer方式,传统的方式是把一台主机的网卡设置成混杂模式,可以接受局域网所有的广播报,现在的方式是采用支持探针技术的交换机的端口映射技术,采用监听方式对原有网络设置不做任何改动,也不影响网络带宽,若监控主机发生故障无法正常工作,也不会影响网络的正常活动。
如图1所示,本系统采用监听方式中的探针方式,支持探针技术的交换机可以映射一个交换机的端口出来转发所有经过交换机的数据包,由一台主机设置混杂模式网卡来专门接收转发的数据包。由于在高速网络环境下接收数据包的主机如果独立完成数据包的重组和内容的监测,必定负载很重,导致丢包率高。因此在数据处理和信息监测模块采用负载均衡的分布式集结构,交换机转发的数据由数据接收机接收,数据接收机负责负载均衡的策略分配
和监测集中各个机器的负载,接收数据后再转发给集中的各个机器进行数据包处理和信息监测。同传统的网络信息监控系统相比,分布式结构能更好得实现系统的实时性、规模的可扩充性,更能满足高速网络和多种协议信息监测的需要。
五、系统功能的实现
网络信息监控本质上就是要对网络中的数据进行监查对比,以实现监控目的。为了得到每一个具体的网络包数据,就需要将流经网络的所有数据截获下来,如何能够快速和高效的将流经网络的数据包截获是系统实现的关键。然后,对截获的数据进行进分离,应用还原技术对数据进行对比,通过信息监控策略和模式匹配算法实现信息监控,主要实现以下各个功能模块。
1.数据捕获的实现
网络底层信息监听可以通过两种方法实现,一种是利用以太网络的广播特性,另一种方式是通过设置路由器的监听端口实现,两种方式分别适用于不同的工作情况。
2.网络协议分析及实现
将符合截获原则的数据截取,并过滤掉不需要的数据报本机在与连接的源端和目的端都没有TCP连接的情况下实现一个简化的TCP/IP协议组。对于网络信息监控系统来说,面对的是数据链路层的数据帧。一个完整的物理层的以太帧实际上是由四部分组成,首先头部是以太网的原始MAC地址头,然后是IP数据报头,然后是TCP/UDP的数据报头,最后才是实际的数据。图2是一个实际的数据报头的结构。
3.TCP还原的实现
TCP还原实现的方法和IP重组是类似的,就是对接受到的数据报如果是属于同一个TCP连接的要用一个排序树按照数据报的Sequence排序起来。然后只需要对这个排序树进行遍历就能够实现TCP的还原。对TCP的还原就是对iptree进行遍历的过程,按照sequence从小到大把相应的属于同一个TCP的IP数据报的内容进行还原。
通过上面的分析和设计捕获到数据的详细信息和信息的还原结果界面如图3所示,实现了对数据报详细信息的分析。对截获的数据进行内容的还原,还原后的结果进行监测以及在进行数据捕获时客户端和服务端间使用的命令情况。
4.应用层协议分析模块的实现
(1)HTTP协议分析设计与实现
通过对截获的原始数据的分析,要浏览一个网页,通常要建立多个连接以加快传送速度。因此,确定哪些连接(指利用该连接传送的内容)属于哪一个网页就成为HTTP还原的核心问题。
a)端口的单调递增性和局部性
从客户端浏览器向HTTP服务器发送第一个请求开始,操作系统为后续连接分配的端口号单调递增,而且具有局部性特征,即所分配的端口号相对连续,偶尔有跳跃。
b)原始数据的组织方式
a)SMTP协议分析
在系统中主要是监听邮件的内容,对邮件的内容进行分析,因此当分析到SMTP的“Data”的命令报文时[1],对后面发送的数据进行捕获,然后获得发送邮件的数据,再对整个邮件的数据进行语法分析,对于编码的部分进行解码,从而获得整个邮件的相关信息。
b)POP3协议分析
在系统中重点考虑Retr命令,因为它的出现代表着协议状态进入了数据传送的阶段,通过对它后面的数据包分析可以得到完整的用户邮件数据。
参考文献
[1]王军华,秦本涛.一个基于简单实验条件下邮件传输服务实验的设计[J].计算机与现代化,2006(8).
[2]蒋少华,姚娟,胡华平.分布式IDS的报警关联定义[J].计算机与现代化,2006(6).
[3]闵联营,赵婷婷.模式匹配算法的研究与改进[J].计算机与现代化,2006(8).
作者简介:
徐涌(1977—),男,江西南昌人,硕士,江西旅游商贸学院讲师,研究方向:计算机网络教学。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论