基于内网安全的ICMP探针检测

时间:2022-09-18 08:59:25

基于内网安全的ICMP探针检测

摘要:随着计算机技术的飞速发展,信息网络已经成为社会发展的重要保证。于此同时,计算机犯罪率的迅速增加,使各国的计算机系统特别是网络系统面临着很大的威胁,网络安全成为严重的社会问题之一。本文利用ICMP协议和C#,Socket的网络编程完成了“双网络”主机的探测工具的设计、实现和测试,该ICMP探针在无防火墙存在的情况下能够完成“双网络”主机的探测功能。

关键词:内网安全 ICMP 主机探测

1引言

随着计算机网络的飞速发展,信息网络已经成为社会发展的重要保证。信息网络涉及到国家的政府、军事等诸多领域。提起网络安全,人们自然就会想到病毒破坏和黑客攻击,其实不然。常规安全防御理念往往局限在网关级别、网络边界(防火墙、漏洞扫描、防病毒、IDS)等方面的防御,重要的安全设施大致集中于机房或网络入口处,在这些设备的严密监控下,来自网络外部的安全威胁大大减小。相反,来自网络内部的计算机客户端的安全威胁却是众多安全管理人员所普遍反映的问题。因此,内网安全问题也成为现在网络建设中不得不考虑的问题。

2相关技术

2.1网络探针技术

网络探针是对接入网络的计算机终端进行接入控制的一种程序,它由网络探针服务器和网络探针客户端两部分组成。它能够监测到同一子网内没有安装运行指定程序或没有进行入网授权的计算机,并采取措施自动将其引导至指定服务器下载指定程序或申请入网授权,也可以直接阻断这些计算机的网络通信。网络探针的主要功能有以下2个方面。

1. 网络探针的轮询功能

由哪台计算机终端担任网络探针角色是网络探针服务器在安装有网络探针客户端的计算机终端中自动指定的,不需要网络管理员的特别指定。网络探针轮询功能的优点是只要同一子网内的计算机终端有一台运行网络探针客户端,就可以保证网络探针对整个网络探测子网生效。

2. 网络探针的阻断计算机终端访问网络工作模式

网络探针可以利用ARP重定向技术阻断网络探针检测到的没有安装指定程序或授权的计算机终端试图访问网络的行为。同理,在网络探针的阻断计算机终端访问网络工作模式下,没有安装指定程序或授权的计算机也是无法和内网中的其他计算机终端进行通信的。

2.2活动主机探测技术

活动主机探测[2]是一项探测本地或者远程主机存活情况的技术,它给端口扫描和操作系统指纹探测提供活动主机。活动主机探测是向目标主机或目标主机的指定端口发送探测数据包,并记录目标主机的响应通过分析响应的数据包来判断目标主机是否存活。本文用到的活动主机的探测常用方法是ICMP ping:

ICMP ping[3]

向目标主机发送 ICMP 回显请求( echo request ICMP 类型为8)报文,期待从运行的主机得到ICM回显应答( echo reply,ICMP type 0)报文,从而判断出目标主机的存活状态。通过采用并行轮转形式发送大量的ICMP ping 请求,可以用来对一个网段进行大范围的扫射,由此来确定主机存活情况。尽管并行轮转探测的准确率和效率都比较高,但是一般的边界路由器或防火墙都通过阻塞 ICMP 数据报限制ICMP ping探测。ICMP回显请求是标准的ICMP ping 查询,除了ICMP 回显请求以外,在ICMP 扫描技术中也用到Non ECHO ICMP 技术。这种技术中主要用到 ICMP 时间戳请求、ICMP 地址掩码请求和ICMP 信息请求。虽然这些查询是用来获得主机信息如当前时间或地址掩码,但它们也可以很容易的用于主机发现,即有回应的主机就是活动的主机。当有些主机封锁了ICMP 回显请求数据报而忘了封锁其它的ICMP ping查询,这时用Non ECHO ICMP技术探测活动主机是很有价值的。

3基于内网安全的ICMP探测工具设计与实现

内网计算机监控系统[4-5]是为了高效安全管理好内网的所有计算机而建立的一种管理系统,是信息化建设、信息安全的重要保障。对于该基于ICMP协议的探针工具,本文采用如下图1的原理框图:

该探针工具采用的是发送端加接收端的结构,其中ICMP协议为探测数据包的发送提供协议基础,而winpcap和socket则分别为发送端和接收端提供通信机制。首先,在处在A网络的发送端整理好需要探测的目的主机地址或是目的网段网关地址。然后,为每个地址构造拥有伪造的源地址(即B网络接收端IP地址的)和指定的ICMP报文数据区内容的echo-request请求包并发送。当同时身处A、B两个网络的PC主机收到请求后,会以为是B网络的接收端所在IP对其的请求而予以回应。之后,接收端截获其所有ICMP数据包并解析其详细数据区内容。如若发现有与我们预先设置的数据区内容相同的数据包存在,则可根据该包的源地址确定双网络主机在A网络的具体IP地址,从而及时发现双网络主机的存在。

4工具测试

测试原理图:

图中探测段2对应的主机PC2安装ICMP探测工具,担任网络探针角色。实验结果表明,在没有防火墙的情况下,利用“双探针”配合伪造地址的ICMP请求的方法可以探测到非正常的“双网络”PC3的私接。若被探测主机防火墙开启,则捕获不到来自被探测主机的ICMP应答报文。

5总结

基于ICMP的“探针”工具在没有防火墙的情况下可完成对“双网络”主机的探测功能,起到检测内网主机安全性的作用,防止伪造假冒地址主机的欺骗性攻击,可在内网安全监测中起到一定作用。

参考文献:

[1]孙大跃,王卫亚.计算机网络—原理、应用和实现[M].北京:清华大学出版社,2007:114-116.

[2]张国林,于海英,杨松涛.活动主机探测 [J].佳木斯大学学报,2007,25 ( 3):305-307

[3]杜树杰.基于ICMP协议的Ping主机探测 [J].计算机系统应用,2009,(12): 212-214.

[4]杜宇明.ICMP协议及网络测试工具的设计 [J] .安徽广播电视大学学报,2006,(1):126-128

[5]杨铭,周矛欣,许秀文.浅谈网络探针接入控制技术 [J] .中国管理信息化,2010,13(15):82-83

上一篇:利用模型分析自动变速箱换档 下一篇:基于改进的模板匹配识别算法的研究