2008年11月11日星期二
彻底解决局域网ARP攻击
现在最常用的基本对治方法是“ARP双向绑定”。
由于ARP攻击往往不是病毒造成的,而是合法运行的程序(外挂、网页)造成的,所杀毒软件多数时候束手无策。
所谓“双向绑定”,就是再路由器上绑定ARP表的同时,在每台电脑上也绑定一些常用的ARP表项。
“ARP双向绑定”能够防御轻微的、手段不高明的ARP攻击。ARP攻击程序如果没有试图去更改绑定的ARP表项,那么ARP攻击就不会成功;如果攻击手段不剧烈,也欺骗不了路由器,这样我们就能够防住50%ARP攻击。
但是现在ARP攻击的程序往往都是合法运行的,所以能够合法的更改电脑的ARP表项。在现在ARP双向绑定流行起来之后,攻击程序的作者也提高了攻击手段,攻击的方法更综合,另外攻击非常频密,仅仅进行双向绑定已经不能够应付凶狠的ARP攻击了,仍然很容易出现掉线。
于 是我们在路由器中加入了“ARP攻击主动防御”的功能。这个功能是在路由器ARP绑定的基础上实现的,原理是:当网内受到错误的ARP广播包攻击时,路由 器立即广播正确的ARP包去修正和消除攻击包的影响。这样我们就解决了掉线的问题,但是在最凶悍的ARP攻击发生时,仍然发生了问题----当ARP攻击 很频密的时候,就需要路由器发送更频密的正确包去消除影响。虽然不掉线了,但是却出现了上网“卡”的问题。
所以,我们认为,依靠路由器实现“ARP攻击主动防御”,也只能够解决80%的问题。
为了彻底消除ARP攻击,我们在此基础上有增加了“ARP攻击源攻击跟踪”的功能。对于剩下的强悍的ARP攻击,我采用“日志”功能,提供信息方便用户跟踪攻击源,这样用户通过临时切断攻击电脑或者封杀发出攻击的程序,能够解决问题。
彻底解决ARP攻击
事实上,由于路由器是整个局域网的出口,而ARP攻击是以整个局域网为目标,当ARP攻击包已经达到路由器的时候,影响已经照成。所以由路由器来承担防御ARP攻击的任务只是权宜之计,并不能很好的解决问题。
我们要真正消除ARP攻击的隐患,安枕无忧,必须转而对“局域网核心”――交换机下手。由于任何ARP包,都必须经由交换机转发,才能达到被攻击目标,只要交换机据收非法的ARP包,哪么ARP攻击就不能造成任何影响。
我们提出一个真正严密的防止ARP攻击的方案,就是在每台接入交换机上面实现ARP绑定,并且过滤掉所有非法的ARP包。这样可以让ARP攻击足不能出户,在局域网内完全消除了ARP攻击。
因为需要每台交换机都具有ARP绑定和相关的安全功能,这样的方案无疑价格是昂贵的,所以我们提供了一个折衷方案。
经济方案
我们只是中心采用能够大量绑定ARP和进行ARP攻击防御的交换机――Netcore 7324NSW,这款交换机能够做到ARP绑定条目可以达到1000条,因此基本上可以对整网的ARP进行绑定,同时能杜绝任何非法ARP包在主交换机进行传播。
这样如果在强力的ARP攻击下,我们观察到的现象是:ARP攻击只能影响到同一个分支交换机上的电脑,这样可能被攻击到的范围就大大缩小了。当攻击发生时,不可能造成整个网络的问题。
在此基础上,我们再补充“日志”功能和“ARP主动防御”功能,ARP攻击也可以被完美的解决。
ARP攻击最新动态
最近一段时间,各网吧发现的ARP攻击已经升级,又一波ARP攻击的高潮来临。
这次ARP攻击发现的特征有:
1、 速度快、效率高,大概在10-20秒的时间内,能够造成300台规模的电脑掉线。
2、 不易发现。在攻击完成后,立即停止攻击并更正ARP信息。如果网内没有日志功能,再去通过ARP命令观察,已经很难发现攻击痕迹。
3、 能够破解最新的XP和2000的ARP补丁,微软提供的补丁很明显在这次攻击很脆弱,没有作用。
4、 介质变化,这次攻击的来源来自私服程序本身(不是外挂)和P2P程序。
黑客技术-ARP欺骗
本来不打算写这接下的一系列讨论欺骗的文章(计划中有arp欺骗、icmp欺骗、路由rip欺骗、ip地址欺骗等),这主要是自己有些担心有些人会 给网管增加日常工作量,但是想想还是写的好,因为通常在你猛打完补丁后,你可能觉得你的系统安全了,但是,实际上,打补丁只是安全措施里的一个很基本的步 骤而已,通常一个hacker要进入你的系统,他所要做的并不是你打补丁就可以避免的,象这些欺骗都要求你必须掌握相当的网络底层知识和合理安排物理布线 才可阻止得了的。特别是多种手法混用的时候,特别要说明的是:有些人往往以为会使用某些工具入侵就觉得自己是个hacker,呵呵。。其实,我认为这只是 入门而已(有些是连门都找不到),通过本文,我想让人们知道,一个hacker在真正入侵系统时,他并不是依靠别人写的什么软件的。更多是靠对系统和网络 的深入了解来达到这个目的。
我想我会尽可能将我知道的写出来,同时也将尽可能把防止欺骗的解决办法写出来,当然,这只是我知道的而已,如果有失误的地方,欢迎指正。呵呵。。
首先还是得说一下什么是ARP,如果你在UNIXShell下输入arp-a(9x下也是),你的输出看起来应该是这样的:
| Interface:xxx.xxx.xxx.xxx InternetAddressPhysicalAddressType |
这里第一列显示的是ip地址,第二列显示的是和ip地址对应的网络接口卡的硬件地址(MAC),第三列是该ip和mac的对应关系类型。
可见,arp是一种将ip转化成以ip对应的网卡的物理地址的一种协议,或者说ARP协议是一种将ip地址转化成MAC地址的一种协议,它靠维持在内存中保存的一张表来使ip得以在网络上被目标机器应答。
为什么要将ip转化成mac呢?呵呵。。解释下去太多了,简单的说,这是因为在tcp网络环境下,一个ip包走到哪里,要怎么走是靠路由表定义,但 是,当ip 包到达该网络后,哪台机器响应这个ip包却是靠该ip包中所包含的mac地址来识别,也就是说,只有mac地址和该ip包中的mac地址相同的机器才会应 答这个ip包(好象很多余,呵呵。。),因为在网络中,每一台主机都会有发送ip包的时候,所以,在每台主机的内存中,都有一个arp-->mac 的转换表。通常是动态的转换表(注意在路由中,该arp表可以被设置成静态)。也就是说,该对应表会被主机在需要的时候刷新。这 捎谝姨谧油闵系拇涫强?8位的mac地址而决定的。
通常主机在发送一个ip包之前,它要到该转换表中寻找和ip包对应的mac地址,如果没有找到,该主机就发送一个ARP广播包,看起来象这样子:
“我是主机xxx.xxx.xxx.xxx,mac是xxxxxxxxxxx,ip为xxx.xxx.xxx.xx1的主机请报上你的mac来”
ip为xxx.xxx.xxx.xx1的主机响应这个广播,应答ARP广播为:
“我是xxx.xxx.xxx.xx1,我的mac为xxxxxxxxxx2”
于是,主机刷新自己的ARP缓存。然后发出该ip包。
了解这些常识后,现在就可以谈在网络中如何实现ARP欺骗了,可以看看这样
一个例子:
一个入侵者想非法进入某台主机,他知道这台主机的火墙只对192.0.0.3(假设)这个ip开放23口(telnet),而他必须要使用telnet来进入这台主机,所以他要这么做:
1、他先研究192.0.0.3这台主机,发现这台95的机器使用一个oob就可以让他死掉。
2、于是,他送一个洪水包给192.0.0.3的139口,于是,该机器应包而死。
3、这时,主机发到192.0.0.3的ip包将无法被机器应答,系统开始更新自己的arp对应表。将192.0.0.3的项目搽去。
4、这段时间里,入侵者把自己的ip改成192.0.0.3
5、他发一个ping(icmp0)给主机,要求主机更新主机的arp转换表。
6、主机找到该ip,然后在arp表中加如新的ip--$#@62;mac对应关系。
7、火墙失效了,入侵的ip变成合法的mac地址,可以telnet了。
(好象很罗嗦,呵呵。。不过这是很典型的例子)
现在,假如该主机不只提供telnet,它还提供r命令(rsh,rcopy,rlogin等)那么,所有的安全约定将无效,入侵者可以放心的使用这台主机的资源而不用担心被记录什么。
有人也许会说,这其实就是冒用ip嘛。。呵呵。。不错,是冒用了ip,但决不是ip欺骗,ip欺骗的原理比这要复杂的多,实现的机理也完全不一样。
上面就是一个ARP的欺骗过程,这是在同网段发生的情况,但是,提醒注意的是,利用交换集线器或网桥是无法阻止ARP欺骗的,只有路由分段是有效的 阻止手段。(也就是ip包必须经过路由转发。在有路由转发的情况下,ARP欺骗如配合ICMP欺骗将对网络造成极大的危害,从某种角度将,入侵者可以跨过 路由监听网络中任何两点的通讯,如果有装火墙,请注意火墙有没有提示过类似:某某IP是局域IP但从某某路由来等这样的信息。详细实施以后会讨论到。)
在有路由转发的情况下,发送到达路由的ip的主机其arp对应表中,ip的对应值是路由的mac。
比如:
我pingwww.nease.net后,那么在我主机中,www.nease.net的IP对应项不是nease的mac而是我路由的mac。其ip也是我路由的IP.(有些网络软件通过交换路由ARP可以得到远程IP的MAC)
有兴趣做深入一步的朋友可以考虑这样一种情况:
假设这个入侵者很不幸的从化学食堂出来后摔了一跤,突然想到:我要经过一个路由才可以走到那台有火墙的主机!!!^^^^
于是这个不幸的入侵者开始坐下来痛苦的思考:
1、我的机器可以进入那个网段,但是,不是用192.0.0.3的IP
2、如果我用那个IP,就算那台正版192.0.0.3的机器死了,那个网络里的机器也不会把ip包丢到路由传给我。
3、所以,我要骗主机把ip包丢到路由。
通过多种欺骗手法可以达到这个目的。所以他开始这样做:
1、为了使自己发出的非法ip包能在网络上活久一点,他开始修改ttl为下面的过程中可能带来的问题做准备。他把ttl改成255.(ttl定义一个ip包如果在网络上到不了主机后,在网络上能存活的时间,改长一点在本例中有利于做充足的广播)
2、他从贴身口袋中掏出一张软盘,这张有体温的软盘中有他以前用sniffer时保存的各种ip包类型。3、他用一个合法的ip进入网络,然后和上面一样,发个洪水包让正版的 192.0.0.3死掉,然后他用192.0.0.3进入网络。
4、在该网络的主机找不到原来的192.0.0.3的mac后,将更新自己的ARP对应表。于是他赶紧修改软盘中的有关ARP广播包的数据,然后对网络广播说“能响应 ip为192.0.0.3的mac是我”。
5、好了,现在每台主机都知道了,一个新的MAC地址对应ip192.0.0.3,一个ARP欺骗完成了,但是,每台主机都只会在局域网中找这个地址而根本就不会把发送给192.0.0.3的ip包丢给路由。于是他还得构造一个ICMP的重定向广播。
6、他开始再修改软盘中的有关ICMP广播包的数据,然后发送这个包,告诉网络中的主机:“到192.0.0.3的路由最短路径不是局域网,而是路由,请主机重定向你们的路由路径,把所有到192.0.0.3的ip包丢给路由哦。”
7、主机接受这个合理的ICMP重定向,于是修改自己的路由路径,把对192.0.0.3的ip通讯都丢给路由器。
8、不幸的入侵者终于可以在路由外收到来自路由内的主机的ip包了,他可以开始telnet到主机的23口,用ip192.0.0.3.9、这个入侵者一把冲出芙蓉一(229),对着楼下来往的女生喊到:“一二一。。
呵呵。。他完成了。
注意,这只是一个典型的例子,在实际操作中要考虑的问题还不只这些。
现在想想,如果他要用的是sniffer会怎样?
假如这个入侵者实在是倒霉(因为喊“一二一。。”而被女生痛殴),当他从地上爬起来后突然发现:其实我要经过好几个路由才可以到那台主机啊。。。。。这时他要怎么做?
呵呵。。。有兴趣做更深入了解的朋友可以自己构思。通常入侵者是这样做的:
1、苦思冥想六天六夜。。。。。
.
.
.
N、一把冲出芙蓉一(229),狂叫一声,一头栽向水泥马路。
可见,利用ARP欺骗,一个入侵者可以得到:
1、利用基于ip的安全性不足,冒用一个合法ip来进入主机。
2、逃过基于ip的许多程序的安全检查,如NSF,R系列命令等。
甚至可以得到:
栽账嫁祸给某人,让他跳到黄河洗不清,永世不得超生。
那么,如何防止ARP欺骗呢?从我收集整理的资料中,我找出这几条:(欢迎补充)
1、不要把你的网络安全信任关系建立在ip基础上或mac基础上,(rarp同样存在欺骗的问题),理想的关系应该建立在ip+mac基础上。
2、设置静态的mac-->ip对应表,不要让主机刷新你设定好的转换表。
3、除非很有必要,否则停止使用ARP,将ARP做为永久条目保存在对应表中。
4、使用ARP服务器。通过该服务器查找自己的ARP转换表来响应其他机器的ARP广播。确保这台ARP服务器不被黑。
5、使用"proxy"代理ip的传输。
6、使用硬件屏蔽主机。设置好你的路由,确保ip地址能到达合法的路径。(静态配置路由ARP条目),注意,使用交换集线器和网桥无法阻止ARP欺骗。
7、管理员定期用响应的ip包中获得一个rarp请求,然后检查ARP响应的真实性。
8、管理员定期轮询,检查主机上的ARP缓存。
9、使用火墙连续监控网络。注意有使用SNMP的情况下,ARP的欺骗有可能导致陷阱包丢失。
以下是我收集的资料,供做进一步了解ARP协议和掌握下次会说到的snifferonarpspoofing
ARP的缓存记录格式:
每一行为:
IFIndex:PhysicalAddress:IPAddress:Type
其中:IFIndex为:
1乙太网
2实验乙太网
3X.25
4ProteonProNET(TokenRing)
5混杂方式
6IEEE802.X
7ARC网
ARP广播申请和应答结构
硬件类型:协议类型:协议地址长:硬件地址长:操作码:发送机硬件地址:发送机IP地址:接受机硬件地址:接受机IP地址。
其中:协议类型为:512XEROXPUP
| 513PUP地址转换 1536XEROXNSIDP 2048Internet协议(IP) 2049X.752050NBS 2051ECMA 2053X.25第3层 2054ARP 2055XNS 4096伯克利追踪者 21000BBSSimnet 24577DECMOP转储/装载 24578DECMOP远程控制台 24579DEC网IV段 24580DECLAT 24582DEC 32773HP探示器 32821RARP 32823AppleTalk 32824DEC局域网桥 |
如果你用过NetXRay,那么这些可以帮助你了解在细节上的ARP欺骗如何配合ICMP欺骗而让一个某种类型的广播包流入一个网络。
巧论ARP攻击防制方法之虚虚实实
ARP欺骗/攻击反复袭击,是近来网络行业普遍了解的现象,随着ARP攻击的不断升级,不同的解决方案在市场上流传。但是笔者最近发现,有一些方 案,从短期看来似乎有效,实际上对于真正的ARP攻击发挥不了作用,也降低局域网工作效率。Qno侠诺的技术服务人员接到很多用户反应说有些ARP防制方 法很容易操作和实施,但经过实际深入了解后,发现长期效果都不大。
对于ARP攻击防制,Qno侠诺技术服务人员的建议,最好的方法是先踏踏实实把基本防制工作做好,才是根本解决的方法。由于市场上的解决方式众多, 我们无法一一加以说明优劣,因此本文解释了ARP攻击防制的基本思想。我们认为读者如果能了解这个基本思想,就能自行判断何种防制方式有效,也能了解为何 双向绑定是一个较全面又持久的解决方式。
一、不坚定的ARP协议一般计算机中的原始的ARP协议,很像一个思想不坚定,容易被其它人影响的人,ARP欺 骗/攻击就是利用这个特性,误导计算机作出错误的行为。ARP攻击的原理,互联网上很容易找到,这里不再覆述。原始的ARP协议运作,会附在局域网接收的 广播包或是ARP询问包,无条件覆盖本机缓存中的ARP/MAC对照表。这个特性好比一个意志不坚定的人,听了每一个人和他说话都信以为真,并立刻以最新 听到的信息作决定。
就像一个没有计划的快递员,想要送信给“张三”,只在马路上问“张三住那儿?”,并投递给最近和他说“我就是!”或“张三住那间!”,来决定如何投 递一样。在一个人人诚实的地方,快递员的工作还是能切实地进行;但若是旁人看快递物品值钱,想要欺骗取得的话,快递员这种工作方式就会带来混乱了。
我们再回来看ARP攻击和这个意志不坚定快递员的关系。常见ARP攻击对象有两种,一是网络网关,也就是路由器,二是局域网上的计算机,也就是一般 用户。攻击网络网关就好比发送错误的地址信息给快递员,让快递员整个工作大乱,所有信件无法正常送达;而攻击一般计算机就是直接和一般人谎称自己就是快递 员,让一般用户把需要传送物品传送给发动攻击的计算机。
由于一般的计算机及路由器的ARP协议的意志都不坚定,因此只要有恶意计算机在局域网持续发出错误的ARP讯息,就会让计算机及路由器信以为真,作 出错误的传送网络包动作。一般的ARP就是以这样的方式,造成网络运作不正常,达到盗取用户密码或破坏网络运作的目的。针对ARP攻击的防制,常见的方 法,可以分为以下三种作法:
1、利用ARP echo传送正确的ARP讯息:通过频繁地提醒正确的ARP对照表,来达到防制的效果。
2、利用绑定方式,固定ARP对照表不受外来影响:通过固定正确的ARP对照表,来达到防制的效果。
3、舍弃ARP协议,采用其它寻址协议:不采用ARP作为传送的机制,而另行使用其它协议例如PPPoE方式传送。
以上三种方法中,前两种方法较为常见,第三种方法由于变动较大,适用于技术能力较佳的应用。下面针对前两种方法加以说明。
PK 赛之“ARP echo”
ARP echo是最早开发出来的ARP攻击解决方案,但随着ARP攻击的发展,渐渐失去它的效果。现在,这个方法不但面对攻击没有防制效果,还会降低局域网运作 的效能,但是很多用户仍然以这个方法来进行防制。以前面介绍的思想不坚定的快递员的例子来说,ARP echo的作法,等于是时时用电话提醒快递员正确的发送对象及地址,减低他被邻近的各种信息干扰的情况。
但是这种作法,明显有几个问题:第一,即使时时提醒,但由于快递员意志不坚定,仍会有部份的信件因为要发出时刚好收到错误的信息,以错误的方式送出 去;这种情况如果是错误的信息频率特高,例如有一个人时时在快递员身边连续提供信息,即使打电话提醒也立刻被覆盖,效果就不好;第二,由于必须时时提醒, 而且为了保证提醒的效果好,还要加大提醒的间隔时间,以防止被覆盖,就好比快递员一直忙于接听总部打来的电话,根本就没有时间可以发送信件,耽误了正事; 第三,还要专门指派一位人时时打电话给快递员提醒,等于要多派一个人手负责,而且持续地提醒,这个人的工作也很繁重。
第二页
以ARP echo方式对应ARP攻击,也会发生相似的情况。第一,面对高频率的新式ARP攻击,ARP echo发挥不了效果,掉线断网的情况仍旧会发生。ARP echo的方式防制的对早期以盗宝为目的的攻击软件有效果,但碰到最近以攻击为手段的攻击软件则公认是没有效果的。第二,ARP echo手段必须在局域网上持续发出广播网络包,占用局域网带宽,使得局域网工作的能力降低,整个局域网的计算机及交换机时时都在处理ARP echo广播包,还没受到攻击局域网就开始卡了。第三,必须在局域网有一台负责负责发ARP echo广播包的设备,不管是路由器、服务器或是计算机,由于发包是以一秒数以百计的方式来发送,对该设备都是很大的负担。
图一:ARP攻击防制 方法之“ARP echo”图示说明
常见的ARP echo处理手法有两种,一种是由路由器持续发送,另一则是在计算机或服务器安装软件发送。路由器持续发送的缺点是路由器原本的工作就很忙,因此无法发送 高频率的广播包,被覆盖掉的机会很大,因此面对新型的ARP攻击防制效果小。因此,有些解决方法,就是拿ARP攻击的软件来用,只是持续发出正确的网关、 服务器对照表,安装在服务器或是计算机上,由于服务器或是计算机运算能力较强,可以同一时间内发出更多广播包,效果较大,但是这种作法一则大幅影响局域网 工作,因为整个局域网都被广播包占据,另则攻击软件通常会设定更高频率的广播包,误导局域网计算机,效果仍然有限。
此外,ARP echo一般是发送网关及私服的对照信息,对于防止局域网计算机被骗有效果,对于路由器没有效果,仍需作绑定的动作才可。
第三页
PK赛之“ARP绑定”
ARP echo的作法是不断提醒计算机正确的ARP对照表,ARP绑定则是针对ARP协议“思想不坚定“的基本问题来加以解决。Qno侠诺技术服务人员认 为,ARP绑定的作法,等于是从基本上给这个快递员培训,让他把正确的人名及地址记下来,再也不受其它人的信息干扰。由于快递员脑中记住了这个对照表,因 此完全不会受到有心人士的干扰,能有效地完成工作。在这种情况下,无论如何都可以防止因受到攻击而掉线的情况发生。
但是ARP绑定并不是万灵药,还需要作的好才有完全的效果。第一,即使这个快递员思想正确,不受影响,但是攻击者的网络包还是会小幅影响局域网部份 运作,网管必须通过网络监控或扫瞄的方法,找出攻击者加以去除;第二,必须作双向绑定才有完全的效果,只作路由器端绑定效果有限,一般计算机仍会被欺骗, 而发生掉包或掉线的情况。
双向绑定的解决方法,最为网管不喜欢的就是必须一台一台加以绑定,增加工作量。但是从以上的说明可知道,只有双向绑定才能有效果地解决ARP攻击的 问题,而不会发生防制效果不佳、局域网效率受影响、影响路由器效能或影响服务器效能的缺点。也就是说双向绑定是个硬工夫,可以较全面性地解决现在及未来 ARP攻击的问题,网管为了一时的省事,而采取片面的ARP echo解决方式,未来还是要回来解决这个问题。
图二:ARP攻击防制 方法之侠诺“ARP双向绑定”图示说明
另外,对于有自动通过局域网安装软件的网络,例如网吧的收费系统、无盘系统,都可以透过自动的批次档,自动在开机时完成绑定的工作,网管只要撰写一 个统一的批次文件程序即可,不必一一配置。这些信息可以很容易地在互联网上通过搜索找到或者是向Qno侠诺的技术服务人员索取即可。
二、现阶段较佳解决方案——双向绑定以上以思想不坚定的快递员情况,说明了常见的ARP攻击防制方法。ARP攻 击利用的就是ARP协议的意志不坚,只有以培训的方式让ARP协议的意志坚定,明白正确的工作方法,才能从根本解决问题。只是依赖频繁的提醒快递员正确的 作事方法,但是没有能从快递员意志不坚的特点着手,就好像只管不教,最终大家都很累,但是效果仍有限。
Qno侠诺的技术服务人员建议,面对这种新兴攻击,取巧用省事的方式准备,最后的结果可能是费事又不管用,必须重新来过。ARP双向绑定虽然对网管 带来一定的工作量,但是其效果确是从根本上有效,而且网管也可参考自动批次档的作法,加快配置自动化的进行,更有效地对抗ARP攻击。
ARP以及如何防范ARP欺骗技术
你是否还在为计算机连接正常,却无法打开网页;或者计算机网络出现频繁断线,同时网速变得非常慢,这些都可能是网络中存在ARP欺骗攻击所表现出来的网络现象。
很多病毒、木马都会利用ARP攻击的方式来达到窃取用户信息、弹挂马/广告网页、传播扩散自身等各种目的。不仅会造成联网不稳定,引发用户无法上网,或者 企业断网导致重大生产事故,而且利用ARP攻击可进一步实施中间人攻击,以此非法获取到例如游戏、网银、文件服务等系统的帐号和口令,对被攻击者造成利益 上的重大损失,因此ARP欺骗攻击是一种非常恶劣的网络攻击行为。
如何更有效的来防范ARP攻击?把预防ARP攻击的工作做好才是重中之中。
因为我们知道,连我们平时最熟知的杀毒软件、防火墙都挡不住ARP 欺骗攻击。主要是由于ARP欺骗攻击的木马程序,通常会伪装成常用软件的一部分被下载并被激活,或者作为网页的一部分自动传送到浏览者的电脑上并被激活, 或者通过U盘、移动硬盘等方式进入网络。由于木马程序的形态特征都在不断变化和升级,杀毒软件也只是个摆设而已。
如何预防ARP攻击?
1.首先要做到把你的网络安全信任关系建立在IP+MAC基础上,利用Mocha BSM中网络拓扑发现之后所有IP-MAC信息,将信息自动的录入到对照表中,如下图。
有了Mocha BSM,省去了登录一台台的主机,用自己的眼睛一个个去查看MAC地址的情景。
设置完静态的IP-MAC对照表,不要让主机随意刷新你设定好的对照表。
2.管理员定期轮询,检查主机上的ARP缓存。
当出现配置变更,变更的信息会在变更表中显示,如下图。
客户端IP和MAC信息通过Mocha BSM这种方式的绑定,可以有效的确保正确的MAC地址不被篡改,可以保障数据流向正确,不经过第三者,从而保证通讯数据安全、保证网络畅通、保证通讯数据不受第三者控制、防范欺骗终端用户和ARP泛洪攻击,保护网络资源。
隐患险于明火,防范重于泰山————做好预防ARP的工作才最为重要。
专家防止局域网ARP协议欺骗
第一,前提的理论
在“一个好人委屈,而不是让一个坏的原则, ”我现在谈论的一些想法和理论。首先,我们将发送给ARP协议欺骗数据包将是一个恶意程序自动发送正常的TCP / IP网络是不会这样的错误包发送。这种假设,如果嫌疑人没有启动销毁过程,它是正常的网络环境,或环境中, ARP协议的网络是正常的,如果我们能启动嫌疑人在刑事诉讼程序第一次开始,发现他的罪行,处理赃物,使人们在所有的不可抵赖性,如前所述,前面网络正常 的时候证据是可信和可依靠的。好吧,那么我们谈论如何时,他发现在第一的犯罪活动。
ARP协议的原则欺骗如下:
假设这样一个网络,那么,集线器的3机
主机主机HostC之一
A是位于:的IP : 192.168.10.1的MAC : AA型AA型AA型AA型AA型机管局
B是位于:的IP : 192.168.10.2的MAC :体一BB一BB一BB一BB一BB
C是位于:的IP : 192.168.10.3的MAC :循环循环循环循环循环循环
在正常情况下ç : \ ARP协议一
接口: 192.168.10.1接口0x1000003
互联网地址物理地址类型
192.168.10.3的CC -的CC -的CC -的CC -的CC -连铸动态
现在假设开始刑事欺骗主机ARP协议:
A到B发送伪造的ARP协议自身的反应,反应中的数据的IP地址,发件人是192.168.10.3 ( C的IP地址) , MAC地址的DD - DD -双刀盘差异差异差异差异( C的这应该是MAC地址的CC -连铸循环循环循环循环,这里是一个伪造) 。 A到B伪造的,当收到ARP协议的反应,我们将更新本地ARP高速缓存(甲无法判断这是否是伪造的) 。事实上,但不知道从B发送回来,在这里只有阿192.168.10.3 ( C的IP地址)和无效的差异差异差异差异差异差异MAC地址,也没有相关的犯罪证据向B ,河公顷,使犯罪分子将莱西。
一部是ARP高速缓存的更新:
ç : \ “ ARP协议一
接口: 192.168.10.1接口0x1000003
互联网地址物理地址类型
192.168.10.3差异差异差异差异差异差异动态
这是不小的问题。局域网络基础上的IP地址是不容谈判的,但根据MAC地址的传递时间。 192.168.10.3现在在A的MAC地址发生了变化的MAC地址不存在。现在开始192.168.10.3平提交的MAC地址卡的DD - DD -双刀盘差异差异差异差异,其结果是什么呢?互联网接入,一个不能平碳! !
因此,局域网中一台机器反复向其他机器,特别是向网关,发送这样无效假冒ARP协议响应数据包, NND ,严重堵塞在网络上开始了!网吧管理员的噩梦开始了。我的目标和任务是第一次,抓住他。但早先的声明罪犯一样完美的使用以太网的缺陷,以掩盖他们的罪行。 但事实上,上述方法已经离开的线索。尽管, ARP协议数据包主机没有留下地址,但是,对ARP包带有以太网帧,但主机包含源地址。此外,在正常情况下,以太网的帧,标题中的MAC地址的源/目的地 址和帧应在ARP协议的信息包匹配,因此对ARP包是正确的。如果不正确,肯定是伪造的封装,可以提醒!但是,如果比赛中,这并不一定意味着正确的可能伪 造这样一个步骤已经考虑到,并伪造出符合格式,但内容的数据包地址解析协议假。然而,这并不重要,只要网关本王有一个部分,所有的MAC地址的信用卡数据 库,如果苹果不匹配数据库中的数据也是伪造的数据包地址解析协议。也提醒手中的罪犯。
其次,预防措施
1 。 DHCP服务器的设置(在建议建立网关的DHCP ,因为人数的CPU ,以及ARP欺骗攻击一般总是第一个网关,我们希望让他第一次攻击网关,网关,因为有监测程序,网关地址建议选择192.168.10.2 ,在192.168.10.1留空,如果犯罪程序这么笨,让他地址栏和空中袭击) ,和所有客户端的IP地址和主机有关的信息,才能取得在这里网关,网关这里开幕DHCP服务,但给每个信用卡,唯一的具有约束力的固定IP地址。必须保持 网络的机器的IP / MAC的一个映射。这是客户端的DHCP地址,但每次开机是相同的IP地址。
2 。陆委会建立一个数据库,以网吧的所有网卡的MAC地址记录,每个MAC和知识产权,所有的地理位置到数据库,以便查询记录及时。
3 。网关机器关闭ARP协议动态刷新过程中,使用静态路由,这种情况下,即使嫌疑人使用ARP欺骗网关,这个网关是没有用的,确保主机安全。
网关建立静态IP / MAC的捆绑起来:的/ etc /醚文件,其中包含正确的IP / Mac的信件格式如下:
192.168.2.32 8时00分04秒电子邮件:本B0 : 24:47
然后的/ etc / rc.d / rc.local最后添加:
ARP协议口才能生效
4 。网关监听网络安全。网关TCPDUMP使用上述程序截取每个ARP协议包,得到一个脚本分析软件分析这些ARP协议的协议。 ARP协议欺骗攻击的包一般有以下特点的两个,以满足一个包可以被看作是攻击警察:第一以太网包头源地址,目的地地址和ARP协议包不匹配的地址协议。或 者, ARP协议和发送数据包的目的地地址是不是自己的数据库网络卡的MAC , MAC或网络数据库有自己的MAC / IP协议不相符。所有这些首先向警方报案,调查这些数据包(以太网数据包)源地址(可能是伪造的) ,或多或少知道自己的电脑中的攻击。
5 。偷偷来的机器,看看是否使用故意或任何释放什么木马了。如果是后者,悄悄地,他要寻找的借口恺,掏出电缆(而不是关闭,特别是看该计划的使命Win98下) ,看看目前使用的机械和创纪录的业绩,看是否是在这次袭击中。
Vista应对网络执法官及ARP欺骗攻击
很多学校、公司的内部网络里面经常有一些不道德的人用ARP欺骗软件攻击别人,让很多人掉线,甚至让整个网络都瘫痪。针对这个问题,大家可以采取如下的办法。
介绍一个防火墙:Outpost Firewall。它可以防护“P2P终结者”等局域网软件,效果超好,还能查出局域网哪台机在使用,功能强大,占用资源少,可以评分5个星。
点击此处下载Outpost Firewall
其实,类似网络管理这种软件都是利用arp欺骗达到目的的。其原理就是使电脑无法找到网关的MAC地址。那么ARP欺骗到底是怎么回事呢?
首先给大家说说什么是ARP。ARP(Address Resolution Protocol)是地址解析协议,是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。
ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。
ARP原理:某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后,就会进行数据传输。如果未找到,则 广播A一个 ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只 有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使 用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。
ARP协议并不只在发送了ARP请求才接收ARP应答。当计算机接收到ARP应答数据包的时候,就会对本地的ARP缓存进行更新,将应答中的 IP和MAC 地址存储在ARP缓存中。因此,当局域网中的某台机器B向A发送一个自己伪造的ARP应答,而如果这个应答是B冒充C伪造来的,即IP地址为C的IP,而 MAC地址是伪造的,则当A接收到B伪造的ARP应答后,就会更新本地的ARP缓存,这样在A看来C的IP地址没有变,而它的MAC地址已经不是原来那个 了。由于局域网的网络流通不是根据IP地址进行,而是按照MAC地址进行传输。所以,那个伪造出来的MAC地址在A上被改变成一个不存在的MAC地址,这 样就会造成网络不通,导致A不能Ping通C!这就是一个简单的ARP欺骗。
解决方法归纳起来有以下方法:
1. 使用VLAN
只要你的PC和P2P终结者软件不在同一个VLAN里, 他就拿你没办法.
2. 使用双向IP/MAC绑定
在PC上绑定你的出口路由器的MAC地址, P2P终结者软件不能对你进行ARP欺骗, 自然也没法管你, 不过只是PC绑路由的MAC还不安全, 因为P2P终结者软件可以欺骗路由, 所以最好的解决办法是使用PC, 路由上双向IP/MAC绑定, 就是说, 在PC上绑定出路路由的MAC地址, 在路由上绑定PC的IP和MAC地址, 这样要求路由要支持IP/MAC绑定, 比如HIPER路由器.
3. 使用IP/MAC地址盗用+IP/MAC绑定
索性你把自己的MAC地址和IP地址改成和运行P2P终结者软件者一样的IP和MAC, 看他如何管理, 这是一个两败俱伤的办法, 改动中要有一些小技巧, 否则会报IP冲突. 要先改MAC地址, 再改IP, 这样一来WINDOWS就不报IP冲突了(windows傻吧))), 做到这一步还没有完, 最好你在PC上吧路由的MAC地址也绑定, 这样一来P2P终结者欺骗路由也白费力气了.
屏蔽网络执法官的解决方式
利用Look N Stop防火墙,防止arp欺骗
1.阻止网络执法官控制
网络执法官是利用的ARp欺骗的来达到控制目的的。
ARP协议用来解析IP与MAC的对应关系,所以用下列方法可以实现抗拒网络执法官的控制。如果你的机器不准备与局域网中的机器通讯,那么可以使用下述方法:
A.在“互联网过滤”里面有一条“ARP : Authorize all ARP packets”规则,在这个规则前面打上禁止标志;
B.但这个规则默认会把网关的信息也禁止了,处理的办法是把网关的MAC地址(通常网关是固定的)放在这条规则的“目标”区,在“以太网:地址 ”里选择“不等于”,并把网关的MAC地址填写在那时;把自己的MAC地址放在“来源”区,在“以太网:地址”里选择“不等于”。
C.在最后一条“All other packet”里,修改这条规则的“目标”区,在“以太网:地址”里选择“不等于”,MAC地址里填FF:FF:FF:FF:FF:FF;把自己的MAC地址放在“来源”区,在“以太网:地址”里选择“不等于”。其它不改动。
这样网络执法官就无能为力了。此方法适用于不与局域网中其它机器通讯,且网关地址是固定的情况下。
如果你的机器需要与局域网中的机器通讯,仅需要摆脱网络执法官的控制,那么下述方法更简单实用(此方法与防火墙无关):
进入命令行状态,运行“ARP -s 网关IP 网关MAC”就可以了,想获得网关的MAC,只要Ping一下网关,然后用Arp -a命令查看,就可以得到网关的IP与MAC的对应。此方法应该更具通用性,而且当网关地址可变时也很好操作,重复一次“ARP -s 网关IP 网关MAC”就行了。此命令作用是建立静态的ARP解析表。
另外,听说op防火墙也可以阻止,这个还没有试过。
防止P2P终结者的攻击
1:第一种方法就是修改自己的MAC地址,下面就是修改方法:
在"开始"菜单的"运行"中输入regedit,打开注册表编辑器,展开注册表到:HKEY_LOCAL_MACHINE\System \CurrentControlSet\Control\Class\{4D36E9E}子键,在子键下的0000,0001,0002等分支中查找 DriverDesc(如果你有一块以上的网卡,就有0001,0002......在这里保存了有关你的网卡的信息,其中的DriverDesc内容就 是网卡的信息描述, 比如我的网卡是Intel 210 41 based Ethernet Controller),在这里假设你的网卡在0000子键。在0000子键下添加一个字符串,命名为"NetworkAddress",键值为修改后的 MAC地址,要求为连续的12个16进制数。然后在"0000"子键下的NDI\params中新建一项名为NetworkAddress的子键,在该子 键下添加名为"default"的字符串,键值为修改后的MAC地址。
在NetworkAddress的子键下继续建立名为"ParamDesc"的字符串,其作用为指定Network Address的描述,其值可为"MAC Address"。这样以后打开网络邻居的"属性",双击相应的网卡就会发现有一个"高级"设置,其下存在MACAddress的选项,它就是你在注册表 中加入的新项"NetworkAddress",以后只要在此修改MAC地址就可以了。关闭注册表,重新启动,你的网卡地址已改。打开网络邻居的属性,双 击相应网卡项会发现有一个MAC Address的高级设置项,用于直接修改MAC地址。
2:第二种方法就是修改IP到MAC的映射就可使P2P攻击的ARP欺骗失效,就隔开突破它的限制。方法就是在cmd下用ARP -a命令得到网关的MAC地址,最后用ARP -s IP 网卡MAC地址命令把网关的IP地址和它的MAC地址映射起来就可以了。
Vista和XP系统:只要用arp命令绑定自己MAC和路由MAC就行了,如:
arp -s 自己IP 自己MAC
arp -s 路由IP 路由MAC
最好都绑定一下,只绑定路由的话,出了IP冲突就上不去了,别人照样能T你下线,如果绑定了自己的话,IP冲突了也能上网。
Windows 9x/2000就需要软件了,搜索一下anti arp sniffer就行了,设置好路由IP,mac 。不过XP和Vista系统也可以安装这个软件,可以清楚的看到谁想T你下线或者想限制你。当然,这样的系统还建议更换成Vista或者XP,只要上面设 置一下,p2p终结者就报废了。
Vista和XP系统在cmd状态输入: arp -a
如果路由IP 还有自己IP最后面状态是static,那么就表示绑定成功
arp -d
绑定之前也最好输入一下,删除非法绑定。
看到这些,大家都明白了吧,其实都不难的。