随着2006年后“ARP”地址欺骗类攻击的兴起, 公共上网设施由于其终端众多、网络广播域大、用户层次面广的特征, 极易被不法分子利用, 他们使用ARP攻击发布不良信息、监听盗取用户账号、在公众服务网页挂载恶意代码等, 已经影响到公共环境上网安全。
我校有十几个公共机房, 近一段时间来, 频繁出现网速急剧下降, 时常掉线的现象, ping网关延迟, 重启交换机也就好几分钟, 接着是越来越频繁的掉线, 发展到后来, 整个公共机房网络瘫痪。
这些问题的出现有很大一部分都是由于ARP病毒攻击引起的。目前发现的“ARP攻击”系列病毒已经有了几十个变种。ARP病毒攻击只要一开始就造成局域网内计算机无法和其他计算机进行通讯, 而且网络对此种病毒没有任何耐受度, 只要局域网中存在一台感染“A R P欺骗”病毒的计算机, 不但会使网络产生较大的延时, 而且将会造成整个局域网通讯中断。并且中毒主机会截取局域网内所有的通讯数据, 并向其他用户发送带了自身ARP病毒的数据, 对局域网用户的网络使用造成非常严重的影响, 直接威胁着局域网用户自身的信息安全。从检测数据显示, APR攻击从未停止过, 甚至达到每秒几万次的攻击, 因此有效的防范ARP的网络攻击已成为确保网络畅通的必要条件。
本文主要目的是通过阐述ARP欺骗原理, 研究对ARP处理的办法。文章的创新点在于开发了《计算机ARP保护系统》, 它是在大型公共上网环境中, 以MAC地址单个或集中管理进行的整体防护手段。
1 ARP欺骗原理
ARP (Address Resolution Protocol) 是地址解析协议, 是一种将IP地址转化成物理地址的协议。计算机之间的通信是通过IP地址进行的, IP数据包通过以太网发送, 但是以太网设备并不识别32位的IP地址, 它们是以48位以太网地址传输以太网数据包。因此, 必须把IP目的地址转换成以太网目的地址 (MAC地址) 。
作为一个局域网协议, 它是建立在各个主机之间相互信任的基础上的, 因此存在安全问题。主机地址映射表是基于高速缓存、动态更新的。由于正常的主机间的MAC地址刷新都是有一定的时限的 (ARP缓存中的记录项在当前常用Windows操作系统上PC机默认存活2min, 在UNIX主机上默认存活30min, 在路由器和防火墙上默认存活4h) , 这样恶意用户如果在下次交换前成功地修改了被欺骗机器上的地址缓存, 就可进行A R P欺骗。由于A R P协议是无状态的, 任何主机即使事先没有发送ARP请求也要响应ARP应答。攻击者可以随心所欲地发送ARP应答, 只要应答分组是有效的, 接收到ARP应答分组的主机就无条件地根据应答分组的内容刷新本机的高速缓存, ARP应答无须认证。由于局域网内的主机间通信基本上是相互信任的, 因此, 只要是收到来自局域网内的ARP应答分组, 主机就会将其中的MAC—IP地址映射刷新到本机的高速缓存中, 而不进行任何认证。
2 我校ARP病毒的处理
当局域网内某台主机运行ARP欺骗的木马程序时, 会欺骗局域网内所有主机和路由器, 让所有上网的流量必须经过病毒主机。其他用户原来直接通过路由器上网现在转由病毒主机上网, 切换的时候用户会断一次线。切换到病毒主机上网后, 如果用户已经登陆了病毒主机, 那么病毒主机就会经常伪造断线的假象, 那么用户就得重新登录病毒主机, 这样病毒主机就可以盗号了。对于已经中了ARP攻击的公共机房, 首先要找到攻击源, 找到感染ARP病毒的机器。
方法一:在电脑上ping一下网关的IP地址, 然后使用ARP-a的命令看得到的网关对应的MAC地址是否与实际情况相符, 如不符, 可去查找与该MAC地址对应的电脑。
方法二:使用抓包工具, 分析所得到的ARP数据包。某个IP的A R P数据包占据了整网段的30%以上, 这个IP肯定有问题。有些ARP病毒是会把通往网关的路径指向自己, 有些是发出虚假ARP回应包来混淆网络通信。
方法三:使用M A C地址扫描工具, nbtscan扫描全网段IP地址和MAC地址对应表, 有助于判断感染A R P病毒对应M A C地址和IP地址。
方法四:使用360安全卫士开启“局域网ARP攻击拦截”功能, 记录到攻击者的M A C后, 查到M A C对应的那台机器。
但是这些方法都不能彻底地解决ARP病毒欺骗。
3 计算机ARP保护系统
我们经过实验测试, 开发了《计算机ARP保护系统》。现在它运行稳定, 能彻底解决A R P病毒欺骗问题。它由两个组成部分:驱动程序、计算机ARP保护系统软件。其使用的开发工具为微软DDK, 开发环境是Visual Studio 2008, 采用面向对象程序设计, 开发语言采用VB.NET, 还采用了多线程技术和容错技术。
3.1 软件安装
运行《计算机ARP保护系统》的操作系统Windows XP或Windows Server 2003需要安装微软.Net2.0, 以太网环境, TCP/IP协议。在桌面“网上邻居”点右键, 选择“属性”, 单击“安装”按钮, 选择“服务”, 单击“添加”按钮, 单击“从磁盘安装”按钮, 单击“浏览”按钮, 找到驱动程序所在目录, 单击“打开”按钮, 单击“确定”按钮, 单击“确定”按钮, 按照提示, 完成安装。
我校公共机房的电脑装有还原卡, 在电脑维护时, 是通过一台安装好操作系统并打好补丁及杀毒软件升级到最新的电脑作为母机, 向其它电脑传系统。因此, 母机的设置非常重要, 在传系统前, 我们对母机进行I P和M A C地址静态绑定。
3.2 软件主要操作流程
运行“计算机ARP保护系统”, 点击“获取计算机名称-IP-MAC”按钮, 获得计算机有关信息, 之后点击“将表格数据写入到计算机真实数据表格中”, 如图1所示。
进入“真实数据列表”, 点击“将下面表格中的信息存入文件”将生成IpMacFile.txt文件, 再进入“客户机设置”将文件复制到c:Windows目录下, 如图2所示。
驱动程序运行在中间层, 通过访问控制列表对A R P数据包进行控制, 通过共享内存与计算机A R P保护系统软件进行数据交换, 系统主要提供计算机在网络通讯中A R P保护, 通过驱动程序在中间层对A R P进行过滤拦截, 用户可以根据自己的需要随时更新I P、M A C访问控制列表, 并且可以显示被拦截的与I P、M A C访问控制列表不匹配的A R P数据包中的重要信息, 可以及时发现攻击源或被感染A R P病毒的主机, 本软件对于学校公共机房、校园网、网吧等大型网络管理用户适用。
3.3 软件实现的重要过程和函数
根据IP地址获得计算机的MAC地址功能函数:
根据IP地址获得计算机的名称功能函数:
为了防范ARP病毒攻击, 除了以上方法外, 我们应该时刻关注ARP病毒方面的有关报道, 加强防范措施, 保障我们公共机房的网络畅通, 使学生有个良好的上网环境。
摘要:本文介绍了ARP病毒产生的原因与原理, 探讨了对局域网内病毒主机的查找和ARP病毒的处理方法。开发了一个防范ARP欺骗软件, 从而达到拒绝ARP欺骗, 维护公共网络安全的目的。
关键词:ARP欺骗,ARP病毒,处理方法,公共机房
参考文献
[1] 王艳平, 张越.Windows网络与通信程序设计[M].北京:人民邮电出版社, 2006.
[2] 康博.VB.NET入门经典[M].北京:清华大学出版社, 2002.
[3] 崔彦峰, 银华强.精通ViSual Basic.NET网络编程[M].北京:清华大学出版社, 2004.
[4] 严蔚敏, 吴伟民.数据结构 (C语言版) [M].北京:清华大学出版社, 1997.
相关文章:
bgp协议原理总结01-04
加法原理乘法原理教案01-04
驱动原理01-04
TCP/IP详解之IP协议ARP协议和RARP协议01-04
基本原理01-04
加固原理01-04
办理流程01-04
原理优势01-04
安徽省地方税务局关于加强未达起征点纳税人地方税收管理的通知01-04
ARP欺骗原理与防范01-04