迅维网

标题: [原创]ARP攻击与防范初探 [打印本页]

作者: yzz163    时间: 2009-4-29 12:35
标题: [原创]ARP攻击与防范初探
这是我以前写的ARP的抓包分析的文章,开新版了转过来,给喜欢专研网络协议的朋友。

日期:2006-05-28  作者:余振中

  内网(局域网)里经常发生盗用IP、MAC地址,甚至用ARP攻击工具干扰局域网正常运行的情况。例如在网吧里由于资金有限都用普通交换机(非网管交换机),这就给利用ARP协议缺陷对局域网进行攻击创造了条件。最常见的攻击就是冒充网关发送“虚假广播包”,这可以造成受害者无规律的“断网”,或使受害者误认为攻击者是网关而将数据包发给攻击者(即APR欺骗)。有很多木马就用这种方式盗取游戏“帐号”、或其他敏感资料。本文从ARP协议层分析了常见的ARP攻击,并对防范该攻击的方法进行了初步探讨。

一、常用攻击方法分析

  1、用伪造源MAC地址发送ARP请求包,造成IP地址冲突或系统崩溃
  网卡驱动程序发送以太帧时不检查源MAC地址是否和网卡EEPOROM里的MAC地址相同。因此,攻击者可以修改系统的MAC地址,还可以发送伪造源MAC地址的ARP包,使跟踪者无法利用源MAC地址找到攻击者。
  (注:有些网卡可用程序烧录EEPOROM,修改MAC地址。如一些RTL8139网卡)
  用winarp1.50分别对Win98和WinXP进行ARP Flood攻击测试,Win98立即崩溃重启,另一台WinXP(2G 512MB)在2分钟以后停止响应,停止攻击1分钟后系统逐渐恢复正常。
  通过对winarp1.50、局域网终结者1.0等抓包观察,发现都是向网络发送以下格式的ARP请求包(广播包)进行攻击的。

1.jpg
登录/注册后看高清大图

图1

  该包对192.168.0.1的主机进行IP地址冲突攻击,目标主机收到后即弹出“IP地址冲突”对话框,当包发送量达到一定数值后会使目标崩溃或停止响应。
  其中,局域网终结者1.0伪造的源地址MAC以0006开头,winarp1.50是010101010101。有篇文章介绍只要将被攻击主机的MAC地址改为伪造的源MAC地址即可避开攻击,如果这样做了,那整个网段主机的MAC地址就都是相同的了!

  2、用伪造源MAC地址发送ARP响应包,对ARP高速缓存机制的攻击
  每个主机都用一个A R P高速缓存存放最近IP地址到MAC硬件地址之间的映射记录。高速缓存中的每一条记录(条目)的生存时间一般为20分钟,起始时间从被创建时开始算起。
  默认情况下,ARP从缓存中读取IP-MAC条目,缓存中的IP-MAC条目是根据ARP响应包动态变化的。因此,只要网络上有ARP响应包发送到本机,即会更新ARP高速缓存中的IP-MAC条目。
  因此,攻击者只要持续不断的发出伪造的arp响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。
  用Sniffer Pro对网络执法官抓包可发现其阻断a、b两台主机网络通信的方法是:不断向a 、b两台主机发送伪造源地址的虚假的响应包,从而使a、 b主机arp高速缓存中对应与的IP-MAC条目改变(将原来正确的MAC地址改为不存在的MAC地址),致使两台主机无法通信。
  下面是网络执法官冒充a主机向b主机发送伪造的ARP响应包,它使b主机的ARP缓存由正确的192.168.0.1 00e04cf28001修改为错误的192.168.0.1 00e04cf28090条目,致使b主机无法和a主机通信。

a、b主机的真实地址:  a= 192.168.0.1 00e04cf28001       b=192.168.0.2  00e01890e2d3

2.jpg
登录/注册后看高清大图

图2

  同时网络执法官还冒充b主机向a主机发送伪造的ARP响应包,使a、b两个主机中都保存了对方错误(伪造)的ARP条目。通过观察发现网络执法官伪造的源地址和真实MAC地址十分接近,它只修改了后面三个字节。
  网络执法官为了“管理”网络,有规律的发出ARP请求包来询问网络上存活的主机或从应答中找出是否有主机不匹配先前的IP-MAC。因此,我们可以从这些请求包的源MAC地址(大量的源MAC地址相同,目的IP为本网段)来定位安装了网络执法官的机器,以避免滥用。

二、防范

  1、使用静态ARP缓存(应急办法)
  用arp -s命令在各主机上绑定网关的IP和MAC地址,同时在网关上绑定各主机的IP和MAC地址的方法。
  如果是WIN主机可编写一个批处理文件rarp.bat内容如下:(其中192.168.16.254 00-22-aa-00-22-aa是网关的IP和MAC地址)
  @echo off
  arp -d
  arp -s 192.168.16.254 00-22-aa-00-22-aa
  将文件中的网关IP地址和MAC地址更改为您自己的网关IP地址和MAC地址即可。
  将这个批处理软件拖到“windows--开始--程序--启动”中。

arp 命令简介:
  arp –a :显示ARP高速缓存中所有的内容
  arp –d [IP地址 MAC地址]:删除指定的IP-MAC条目,若不指定就清空ARP高速缓存
  arp –s [IP地址 MAC地址] :手工设置IP-MAC静态条目
  (注:在不同的系统中,手工设置的arp静态条目是有区别的。在linux和win2000中,静态条目不会因为伪造的arp响应包而改变,而动态条目会改变。而在win98中,手工设置的静态条目会因为收到伪造的arp响应包而改变。)
  使用静态ARP缓存增大了网络维护量,在较大的网络或经常移动主机的网络中这样做更为困难。使用静态ARP缓存只能防止ARP欺骗,对IP地址冲突、Flood攻击仍然没有办法阻止,因此不推荐这样做。

  2、用可防ARP攻击的交换机(彻底防治,推荐)
  使用三层交换机,绑定端口-MAC-IP,限制ARP流量,及时发现并自动阻断ARP攻击端口,合理划分VLAN,彻底阻止盗用IP、MAC地址,杜绝ARP的攻击。
作者: yzz163    时间: 2009-4-29 13:51
现在的防范,一般只有做双向绑定。。。
----------------------------------------
绑定端口-MAC-IP 就可根本杜绝,但人力太大。目前一些智能交换机具备自动识别、划分VLAN、限制ARP流量等手段,也能杜绝和立即发现搞破坏的机器。但一般的网吧等小单位都舍不得多花1-2千元买这样的交换机。其实从长远、从网络的稳定、可靠性来说,配置这种交换机是很必要和经济的。
作者: 维修打杂    时间: 2009-4-29 17:06
技防是一种手段,关键是人防,要下面的使用人要养成好习惯,久不久就查下木马,病毒的,打下补丁,还要选对杀毒软件,杀毒软件不是不爱国货,是怕了。
管理员不轻松啊。
作者: yzz163    时间: 2009-5-8 20:46
技防是一种手段,关键是人防,要下面的使用人要养成好习惯,久不久就查下木马,病毒的,打下补丁,还要选对杀毒软件,杀毒软件不是不爱国货,是怕了。
管理员不轻松啊。
维修打杂 发表于 2009-4-29 17:06

不知道你到底看过ARP协议没?
不管是病毒还是人为的都是利用ARP协议中:不检查发包的源MAC地址是否真实,来做手脚。
现在售价1-2K的百兆交换机各端口都有检查ARP包中的MAC地址的功能,还有ARP发包率限制等功能(乱发ARP包的端口被自动阻断并报警)。完全能杜绝所谓的伪造源MAC地址的ARP包的攻击。

只是这种方法较费人工,但基本是属于一劳永逸的工作,从长远看是值得的,并且现在在某些有安全要求的部门规定:必须使用端口+MAC绑定入网的。
作者: localdisk    时间: 2010-1-4 09:34
本帖最后由 localdisk 于 2010-1-4 09:35 编辑

补充一下,其实arp攻击不仅仅是针对上网计算机的,而且还有路由器,所以要从两个方面来解决问题,第一,上面针对上网计算机的楼主说的很清楚,解决方法很合理,比如静态arp捆绑就是一种很有效的方法,而且不附加任何软件,是一种很不错的临时解决方案.除此还有安装arp防火墙的方法,比如360的就不错,不知道大家试过没有,要从硬件上解决的话就必须采用有vlan功能的交换机,其实这种交换机也不贵,也不一定非要三层的,只需要它支持vlan就行,使用它的这个功能做下端口隔离,就可以解决计算机这一方的问题,也有一种端口隔离交换机就可以实现这种功能,好象是tp-link的.第二,在路由器方面,必须有ip-mac地址绑定功能,做下捆绑是必须的,而且现在支持ip-mac绑定的路由器捆绑起来非常简单,从这两个方面就可以防止arp的攻击,应该非常有效.但只从一个方面来做,是起不到arp攻击防范做用的,或者说只起到一半的作用.
作者: yzz163    时间: 2010-1-4 13:45
这个帖是好几年前写的了。对于防范ARP攻击的讨论已经早有了共识:1、隔离 2、断网。

我不认同用 arp防火墙 之类的东西。如果你的网里有人搞ARP攻击,最有效的方法是:断开他的网络,并交给相关部门处理。
WIN机器“容忍性不强”,我管理的网络里也无法容忍有 ARP欺骗。因为容忍了它的存在,就是在容忍网络的不稳定,用户受不了,这是不合格的 “网络管理员”。
作者: ywlhl    时间: 2010-6-5 23:22
在路由和本机同时使用mac绑定ip ,就可以避免arp攻击。
作者: hsytz    时间: 2010-6-9 10:13
我 的局域网就是把MAC和IP绑定在一起了.
作者: huyupei    时间: 2010-6-22 20:26
一般都用拔线大法来判断。比如60台机子 3个普通交换机,一个个交换机断,,再几台机子断。。。直到找到那个鬼
作者: 许冠杰    时间: 2010-7-21 17:34
没想到华硕工程师对网络也有造诣,我以前也是学网络的,学的是思科
作者: 许冠杰    时间: 2010-7-21 17:46
本帖最后由 许冠杰 于 2010-7-21 17:47 编辑

sniffer pro 对于ip 和mac 地址都是仿冒的病毒主机,也基本是无能为力,sniffer pro 是用于大型企业网,小网络根本就是无用的!现在都是交换网络,普通交换机无镜像端口,抓到的包也是不全的!只能用arp欺骗交换机才能抓全包,基地里也没几个有这个能力的!还是一台台连最保险!在有比较差劲的网络设备的网络环境下,遇到arp攻击只有在主机上装arp防火墙,并在路由器上绑定所有机器的mac ip,没有别的好办法
作者: 洛少    时间: 2010-11-22 14:35
回复 yzz163 的帖子

同意你的观点...现在 的 政府机关等 还有大型国企,大型私企都是使用端口+mac绑定入网的。对对那些在这些单位做维护的要减少很多麻烦.....
作者: gdf0001    时间: 2010-12-14 16:15
在路由和本机同时使用mac绑定ip ,就可以避免arp攻击
作者: oliverpep    时间: 2011-1-21 10:53
MAC-IP-端口绑定,才能从根本上解决
作者: 心灵之火    时间: 2011-3-11 11:46
最简单,不就是,把物理地址和ip地址绑定
作者: guohan007    时间: 2011-3-29 12:50
用可防ARP攻击的交换机
带这种功能的,恐怕也只有三层交换机了吧。
作者: jjsly    时间: 2011-4-9 19:22
还是双绑比较容易解决问题。这样是最安全的了。
作者: wds2002    时间: 2011-5-28 23:39
使用端口+MAC绑定入网
这个好!
作者: tgy321    时间: 2011-7-3 12:47
yzz163 发表于 2010-1-4 13:45
这个帖是好几年前写的了。对于防范ARP攻击的讨论已经早有了共识:1、隔离 2、断网。

我不认同用 arp防火 ...

就断开那个受攻击人的电脑吗?具体处理掉呢?重装系统吗?怎么具体解决ARP呢?
作者: tgy321    时间: 2011-7-3 12:51
LZ,以你的经验!推荐具体用什么品牌,型号的交换机?又解决arp.网络有稳定。路由器你推荐用什么样的?请教了!价位大概是多少?
作者: tgy321    时间: 2011-7-3 13:00
洛少 发表于 2010-11-22 14:35
回复 yzz163 的帖子

同意你的观点...现在 的 政府机关等 还有大型国企,大型私企都是使用端口+mac绑定入网 ...

具体怎么做端口+mac绑定入网???
作者: yzz163    时间: 2011-7-3 16:19
你问卖交换机的,有 MAC+端口 绑定功能的交换机就可以了。一般应用TP-LINK的很多型号都可以。

路由器要求高的话推荐用华为的就够了,思科太贵。一般应用国产的都可以。
作者: laxl    时间: 2011-7-20 23:43
使用端口+MAC绑定入网
作者: zj10050102    时间: 2011-11-28 15:42
为什么不用可网管交换机呢,各部门单独VLAN,掉就掉一部门。查也查一部门,不至于整个网
作者: 张学徒工    时间: 2012-8-2 16:02
配置VLAN的交换机是最终的技术解决方法,公司的话,制定严格的纪律也可以
作者: fq5866    时间: 2012-8-5 08:40
现在有路由器带防arp攻击的功能。
作者: 洋爱翠翠    时间: 2013-2-3 20:48
360或qq管家arp防火墙就可以,不用那么麻烦
作者: 洋爱翠翠    时间: 2013-2-3 20:48
攻击就用p2p终结者或聚生网管
作者: 我是发明大王    时间: 2013-3-7 15:40
那麽如何绑定MAC/IP地址呢?小弟是新手 请高手赐教?
作者: 1059314973    时间: 2013-6-23 12:46
高手哦···········
作者: Emotiona仰望    时间: 2013-7-11 16:18
感谢楼主分享
作者: Emotiona仰望    时间: 2013-7-11 16:19
感谢楼主

作者: addy    时间: 2013-8-1 12:01
交换机或者路由IP绑MAC才是最终解决方法。软件类,arp命令类无效。
作者: Wlyve    时间: 2013-8-3 18:29
学习了 感谢楼主分享。
作者: dfhr    时间: 2013-9-14 22:53
谢谢你的宝贵经验。
作者: cvvivi    时间: 2013-9-16 17:06
高手真多。。。
作者: NSBQ000    时间: 2013-9-23 21:44
说实话~~没太看懂!感谢楼主!
作者: 广州一笑    时间: 2013-10-10 19:28
{:4_113:}{:4_113:}{:4_113:}
作者: 小鱼崽子    时间: 2013-10-13 20:59
arp攻击确实很可恶,以前出差住宾馆,有人电脑ARP攻击,网关被假冒,网上不了了,宾馆网管又搞不定,过去帮搞了
作者: sshcwcgf888    时间: 2013-10-20 09:35
使用端口+MAC绑定入网

作者: gogo11    时间: 2013-11-10 20:56
用arp防火墙!或者双绑定!
作者: 王禄欢    时间: 2013-11-14 21:48
我怎么看到有点晕呢。看不懂。
作者: sumer12    时间: 2013-11-22 12:13
绑定和杀毒一起才是硬道理。
作者: 兴辰电脑    时间: 2014-1-8 21:05
好东西,不错,谢谢分享
作者: Chinafriend    时间: 2014-1-16 23:05
Good Information
作者: zxc4454    时间: 2014-3-2 13:11
360里面也有ARP防火墙
作者: luatic    时间: 2014-3-3 14:56
arp欺骗现在是很少看见了
作者: 夏夏夏日    时间: 2014-3-3 15:41
我就是把MAC和IP绑定在一起
作者: 夏夏夏日    时间: 2014-3-3 15:42
突然发现好像是10年的帖子,我挖坟了,不会被查封吧?
作者: zenycai    时间: 2014-3-3 23:07
打酱油………………………………
作者: 墨sir    时间: 2014-3-7 11:45
上一次去一所公寓检查出了这个问题,那时还是个小菜鸟,没能解决这个问题,就是光给那位顾客固定了IP地址,不过不一阵还是出问题了。
作者: 墨sir    时间: 2014-3-7 11:47
顺便请教一下管理,我遇到想要收藏的帖子该怎样收藏,
作者: ayoer    时间: 2014-3-10 17:31
先回复了再看,学习学习
作者: 学.徒    时间: 2014-4-2 19:58
总感觉容易被攻击,ARP防火墙都没什么用。
作者: caocao    时间: 2014-5-6 23:45
帖子不错  支持你
作者: zilongtian    时间: 2014-5-22 10:55
ARP攻击 在内网中 使用ARP -s 绑定没办法解决问题吧  楼主还有别的好办法吗
作者: jie2351549    时间: 2014-5-26 11:01
学习了。。。。。。。
作者: 385380146    时间: 2014-6-13 10:53
我的电脑天天被攻击
作者: qlxiang825    时间: 2014-6-18 17:30
太复杂,学习了
作者: zhou5062848    时间: 2014-6-25 10:12
说了半天还是没说 怎么解决 啊
作者: 575591450    时间: 2014-6-25 21:15
什么事arp是不是就是路由器的地址啊 没整过太高端的机器呢 最常见的就是路由器啦
作者: 575591450    时间: 2014-6-25 21:35
yzz163 发表于 2009-5-8 20:46
不知道你到底看过ARP协议没?
不管是病毒还是人为的都是利用ARP协议中:不检查发包的源MAC地址是否真实 ...

我看了你挺多帖子的 都是关于网络的 你是专业搞这个的吗 写得这么详细你怎么有一首的资料的
作者: my灬路飞    时间: 2014-7-4 19:00
太专业了看不透明白
作者: Mr.chen丶    时间: 2014-7-27 12:34
这就是一台电脑中毒,一个局域网都有问题..最简单的制造ARP攻击就是路由器.下再接一个路由.同网管同子网同IP..LAN口对LAN口...以前就遇见过这样的
作者: 随缘新主    时间: 2014-7-27 23:00
学习啦.学习大大们孜孜教育。
作者: cqp10678    时间: 2015-5-7 10:30
不错分析的很好
作者: shaodapao    时间: 2016-8-7 20:46
师傅。小弟最近要从事网络维护相关工作,可以留个联系方式,帮助一下我吗?
作者: バ幸福De右岸    时间: 2016-8-8 08:17
shaodapao 发表于 2016-8-7 20:46
师傅。小弟最近要从事网络维护相关工作,可以留个联系方式,帮助一下我吗?

自己在当地找一个师傅学习一下就可以了哦




欢迎光临 迅维网 (https://www.chinafix.com/) Powered by Discuz! X3.4