ARP地址欺骗类病毒发作的时候会向全网发送伪造的ARP数据包,干扰全网的运行,它的危害比一些蠕虫还要严重。本文从网络结构模型深入浅出的向大家讲解了ARP病毒及ARP地址欺骗的原理及表现形式。

AD:

一、ARP病毒
ARP地址欺骗类病毒(以下简称ARP病毒)是一类特殊的病毒,该病毒一般属于木马(Trojan)病毒,不具备主动传播的特性,不会自我复制。但是由于其发作的时候会向全网发送伪造的ARP数据包,干扰全网的运行,因此它的危害比一些蠕虫还要严重得多。
二、ARP病毒发作时的现象
网络掉线,但网络连接正常,内网的部分PC机不能上网,或者所有电脑不能上网,无法打开网页或打开网页慢,局域网时断时续并且网速较慢等。
三、ARP病毒原理
3.1  网络模型简介

众所周知,按照OSI (Open Systems Interconnection Reference Model 开放系统互联参考模型) 的观点,可将网络系统划分为7层结构,每一个层次上运行着不同的协议和服务,并且上下层之间互相配合,完成网络数据交换的功能,如图1:

然而,OSI的模型仅仅是一个参考模型,并不是实际网络中应用的模型。实际上应用最广泛的商用网络模型即TCP/IP体系模型,将网络划分为四层,每一个层次上也运行着不同的协议和服务,如图2:

上图中,蓝色字体表示该层的名称,绿色字表示运行在该层上的协议。由图2可见,我们即将要讨论的ARP协议,就是工作在网际层上的协议。
3.2  ARP协议简介
我们大家都知道,在局域网中,一台主机要和另一台主机进行通信,必须要知道目标主机的IP地址,但是最终负责在局域网中传送数据的网卡等物理设备是不识别IP地址的,只能识别其硬件地址即MAC地址。MAC地址是48位的,通常表示为12个16进制数,每2个16进制数之间用“-”或者冒号隔开,如:00-0B-2F-13-1A-11就是一个MAC地址。每一块网卡都有其全球唯一的MAC地址,网卡之间发送数据,只能根据对方网卡的MAC地址进行发送,这时就需要一个将高层数据包中的IP地址转换成低层MAC地址的协议,而这个重要的任务将由ARP协议完成。
ARP全称为Address Resolution Protocol,地址解析协议。所谓“地址解析”就是主机在发送数据包前将目标主机IP地址转换成目标主机MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。 这时就涉及到一个问题,一个局域网中的电脑少则几台,多则上百台,这么多的电脑之间,如何能准确的记住对方电脑网卡的MAC地址,以便数据的发送呢?这就涉及到了另外一个概念,ARP缓存表。在局域网的任何一台主机中,都有一个ARP缓存表,该表中保存这网络中各个电脑的IP地址和MAC地址的对照关系。当这台主机向同局域网中另外的主机发送数据的时候,会根据ARP缓存表里的对应关系进行发送。
下面,我们用一个模拟的局域网环境,来说明ARP欺骗的过程。
3.3  ARP欺骗过程
假设一个只有三台电脑组成的局域网,该局域网由交换机(Switch)连接。其中一个电脑名叫A,代表攻击方;一台电脑叫S,代表源主机,即发送数据的电脑;令一台电脑名叫D,代表目的主机,即接收数据的电脑。这三台电脑的IP地址分别为192.168.0.2,192.168.0.3,192.168.0.4。MAC地址分别为 MAC_A,MAC_S,MAC_D。其网络拓扑环境如图3:

现在,S电脑要给D电脑发送数据了,在S电脑内部,上层的TCP和UDP的数据包已经传送到了最底层的网络接口层,数据包即将要发送出去,但这时还不知道目的主机D电脑的MAC地址MAC_D。这时候,S电脑要先查询自身的ARP缓存表,查看里面是否有192.168.0.4这台电脑的MAC地址,如果有,那很好办,就将MAC_D封装在数据包的外面。直接发送出去即可。如果没有,这时S电脑要向全网络发送一个ARP广播包,大声询问:“我的IP是192.168.0.3,硬件地址是MAC_S,我想知道IP地址为192.168.0.4的主机的硬件地址是多少?” 这时,全网络的电脑都收到该ARP广播包了,包括A电脑和D电脑。A电脑一看其要查询的IP地址不是自己的,就将该数据包丢弃不予理会。而D电脑一看IP地址是自己的,则回答S电脑:“我的IP地址是192.168.0.4,我的硬件地址是MAC_S”需要注意的是,这条信息是单独回答的,即D电脑单独向S电脑发送的,并非刚才的广播。现在S电脑已经知道目的电脑D的MAC地址了,它可以将要发送的数据包上贴上目的地址MAC_D,发送出去了。同时它还会动态更新自身的ARP缓存表,将192.168.0.4-MAC_D这一条记录添加进去,这样,等S电脑下次再给D电脑发送数据的时候,就不用大声询问发送ARP广播包了。这就是正常情况下的数据包发送过程。
这样的机制看上去很完美,似乎整个局域网也天下太平,相安无事。但是,上述数据发送机制有一个致命的缺陷,即它是建立在对局域网中电脑全部信任的基础上的,也就是说它的假设前提是:无论局域网中那台电脑,其发送的ARP数据包都是正确的。那么这样就很危险了!因为局域网中并非所有的电脑都安分守己,往往有非法者的存在。比如在上述数据发送中,当S电脑向全网询问“我想知道IP地址为192.168.0.4的主机的硬件地址是多少?”后,D电脑也回应了自己的正确MAC地址。但是当此时,一向沉默寡言的A电脑也回话了:“我的IP地址是192.168.0.4,我的硬件地址是MAC_A” ,注意,此时它竟然冒充自己是D电脑的IP地址,而MAC地址竟然写成自己的!由于A电脑不停地发送这样的应答数据包,本来S电脑的ARP缓存表中已经保存了正确的记录:192.168.0.4-MAC_D,但是由于A电脑的不停应答,这时S电脑并不知道A电脑发送的数据包是伪造的,导致S电脑又重新动态更新自身的ARP缓存表,这回记录成:192.168.0.4-MAC_A,很显然,这是一个错误的记录(这步也叫ARP缓存表中毒),这样就导致以后凡是S电脑要发送给D电脑,也就是IP地址为192.168.0.4这台主机的数据,都将会发送给MAC地址为MAC_A的主机,这样,在光天化日之下,A电脑竟然劫持了由S电脑发送给D电脑的数据!这就是ARP欺骗的过程。
如果A这台电脑再做的“过分”一些,它不冒充D电脑,而是冒充网关,那后果会怎么样呢?我们大家都知道,如果一个局域网中的电脑要连接外网,也就是登陆互联网的时候,都要经过局域网中的网关转发一下,所有收发的数据都要先经过网关,再由网关发向互联网。在局域网中,网关的IP地址一般为192.168.0.1。如果A这台电脑向全网不停的发送ARP欺骗广播,大声说:“我的IP地址是192.168.0.1,我的硬件地址是MAC_A”这时局域网中的其它电脑并没有察觉到什么,因为局域网通信的前提条件是信任任何电脑发送的ARP广播包。这样局域网中的其它电脑都会更新自身的ARP缓存表,记录下192.168.0.1-MAC_A这样的记录,这样,当它们发送给网关,也就是IP地址为192.168.0.1这台电脑的数据,结果都会发送到MAC_A这台电脑中!这样,A电脑就将会监听整个局域网发送给互联网的数据包!
实际上,这种病毒早就出现过,这就是ARP地址欺骗类病毒。一些传奇木马(Trojan/PSW.LMir)具有这样的特性,该木马一般通过传奇外挂、网页木马等方式使局域网中的某台电脑中毒,这样中毒电脑便可嗅探到整个局域网发送的所有数据包,该木马破解了《传奇》游戏的数据包加密算法,通过截获局域网中的数据包,分析数据包中的用户隐私信息,盗取用户的游戏帐号和密码。在解析这些封包之后,再将它们发送到真正的网关。这样的病毒有一个令网吧游戏玩家闻之色变的名字:“传奇网吧杀手” !
四、ARP病毒新的表现形式
由于现在的网络游戏数据包在发送过程中,均已采用了强悍的加密算法,因此这类ARP病毒在解密数据包的时候遇到了很大的难度。现在又新出现了一种ARP病毒,与以前的一样的是,该类ARP病毒也是向全网发送伪造的ARP欺骗广播,自身伪装成网关。但区别是,它着重的不是对网络游戏数据包的解密,而是对于HTTP请求访问的修改。
HTTP是应用层的协议,主要是用于WEB网页访问。还是以上面的局域网环境举例,如果局域网中一台电脑S要请求某个网站页面,如想请求 www.sina.com.cn这个网页,这台电脑会先向网关发送HTTP请求,说:“我想登陆 www.sina.com.cn网页,请你将这个网页下载下来,并发送给我。”这样,网关就会将 www.sina.com.cn页面下载下来,并发送给S电脑。这时,如果A这台电脑通过向全网发送伪造的ARP欺骗广播,自身伪装成网关,成为一台ARP中毒电脑的话,这样当S电脑请求WEB网页时,A电脑先是“好心好意”地将这个页面下载下来,然后发送给S电脑,但是它在返回给S电脑时,会向其中插入恶意网址连接!该恶意网址连接会利用MS06-014和MS07-017等多种系统漏洞,向S电脑种植木马病毒!同样,如果D电脑也是请求WEB页面访问,A电脑同样也会给D电脑返回带毒的网页,这样,如果一个局域网中存在这样的ARP病毒电脑的话,顷刻间,整个网段的电脑将会全部中毒!沦为黑客手中的僵尸电脑!
案例:
某企业用户反映,其内部局域网用户无论访问那个网站,在经过对该局域网分析之后,发现该局域网中有ARP病毒电脑导致其它电脑访问网页时,返回的网页带毒,并且该带毒网页通过MS06-014和MS07-017漏洞给电脑植入一个木马下载器,而该木马下载器又会下载10多个恶性网游木马,可以盗取包括魔兽世界,传奇世界,征途,梦幻西游,边锋游戏在内的多款网络游戏的帐号和密码,对网络游戏玩家的游戏装备造成了极大的损失。被ARP病毒电脑篡改的网页如图4:

图4 被ARP病毒插入的恶意网址连接

从图4中可以看出,局域网中存在这样的ARP病毒电脑之后,其它客户机无论访问什么网页,当返回该网页时,都会被插入一条恶意网址连接,如果用户没有打过相应的系统补丁,就会感染木马病毒。

本文转自:http://netsecurity.51cto.com/art/200707/51565.htm

深入剖析ARP地址欺骗病毒原理及欺骗过程相关推荐

  1. 局域网arp欺骗病毒查找预防方法(1)

    ARP地址欺骗类病毒(以下简称ARP病毒)是一类特殊的病毒,该病毒一般属于***(Trojan)病毒,不具备主动传播的特性,不会自我复制.但是由于其发作的时候会向全网发送伪造的ARP数据包,干扰全网的 ...

  2. 防范ARP欺骗病毒攻击

    近一段时间以来,有一些用户反映网络时断时续,网络速度较以前慢许多,而且这种情况一旦发生,用户单位局域网所有用户都不能正常上网.通过深入分析发现是因为局域网内部分用户受到一类名为ARP病毒程序的攻击,该 ...

  3. ARP病毒专杀工具 ARP病毒***原理和解决方案

    ARP病毒清除方法: ARP病毒专杀工具下载地址:  趋势科技ARP病毒专杀工具 下载后解压缩,运行包内TSC.exe文件,不要关让它一直运行完,最后查看report文档便知是否中毒. PS:新ARP ...

  4. ARP欺骗病毒的专题

    (转:http://nc.huel.edu.cn/wt_news/131916192532074846.html) 鉴于目前ARP欺骗对局域网安全运行造成的影响,我们收集整理了这个ARP欺骗病毒的专题 ...

  5. ARP简介及ARP病毒原理

    近几个月以来公司的网络经常掉线甚至是大面积掉线,一开始以为是电信问题,向电信反映了多次,他们也上门了好几次,测得光路和网路都正常,就是经过路由器以后网络很不稳定,每次重启路由器后又可以上网了,但好景不 ...

  6. ARP欺骗之——原理分析

    今天学的知识不多,忙了一天学校的东西,做了一上午路由实验,下午做了个社会调查报告,晚上才腾出时间学一些,然后得知明儿竟然要补五一的课,然而我周二是刚好没课的哈哈,下了两天雨在家里出不去,憋坏了,明儿去 ...

  7. ARP欺骗攻击原理及其防御

    一.概述 1.ARP协议 地址解析协议,将IP地址转换为对应的mac地址,属链路层协议 数据包分为: 请求包(广播):本机IP地址.mac地址+目标主机IP地址 应答包(单播):本机IP地址.mac地 ...

  8. 中间人攻击——ARP欺骗的原理、实战及防御(转载)

    1.1 什么是网关 首先来简单解释一下什么是网关,网关工作在OSI七层模型中的传输层或者应用层,用于高层协议的不同网络之间的连接,简单地说,网关就好比是一个房间通向另一个房间的一扇门. 1.2 ARP ...

  9. 深入剖析DHCP服务IP地址自动分配原理

    以下内容摘自笔者最新出版的<深入理解计算机网络>一书,目前该书已在当当网和京东网上可以正式预订了: 当当网链接:http://product.dangdang.com/main/produ ...

最新文章

  1. 2016全国大学生计算机设计大赛,2016年“第9届中国大学生计算机设计大赛”闭幕...
  2. wxWidgets:wxFilePickerCtrl类用法
  3. Cracer渗透-windows基础(系统目录,服务,端口,注册表)
  4. php 连接多个数据出错,php连接多个ip信息数据库
  5. [shiro学习笔记]第二节 shiro与web融合实现一个简单的授权认证
  6. 使用 Moq 测试.NET Core 应用 -- Mock 方法
  7. 【Spark】SparkStreaming-提交到集群运行
  8. Linux内核分析作业 NO.2
  9. Peasy.NET学习之并发问题处理
  10. 编码基本功:以文件大小进行性能测试是错误的
  11. gitbash PHP执行输出中文乱编解决方式
  12. Juniper SRX防火墙流量处理流程图(详细)
  13. 计算机科学型计算器,全能科学型计算器app
  14. 用Vim查看和编辑二进制文件
  15. 华为ensp基础指令
  16. 苹果app开发流程详解
  17. 开机时自动启动的AutoHotkey脚本
  18. windows10 快捷方式右键失灵问题解决
  19. python使用ffmpeg库高效免费完成音频格式转换
  20. 计算广告笔记05-搜索广告与竞价广告

热门文章

  1. LeetCode——考场就座
  2. CSS - 通过 WebFont 技术引入在线字体(@font-face 语句)
  3. 练习篇:聊天表情框体实现
  4. 长微博识别—让图片里的文字走出来!
  5. 面试浦发银行,我的一些经验和面试题分享~
  6. 众昂矿业刘金海:中国萤石产品分类及其用途
  7. 探索有交易成本的环境下期权Delta对冲频次与定价效果的关系
  8. unity如何添加自定义HID设备,自己开发的手柄如何支持unity。
  9. TLA+ TLC模型检查器使用指南(持续更新中)
  10. 关闭谷歌浏览器Chrome自动翻译栏方法