`
icyheart
  • 浏览: 765427 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

简单两步狙击ARP病毒,让你轻松上网

阅读更多

这几天防火墙总是提示有arp缓冲攻击,开始觉得让它攻吧,反正防火墙呢,可是没一会儿功夫我的QQ掉线了,网网页也打不开了,不管怎么弄都不行,看来得想想办法了,大家都知道了arp发包就是将网关的网卡地址隐藏了起来,让你的电脑访问不到真正的网关,这样就上不了网了,要阻止它的这种行为两步搞定!进入到系统的CMD中

第一步:得到网关的mac地址

arp -a

这样以来就得到了网关的mac地址,然后再用ipconfig /all得到自己的ip和mac地址,好了,下来进行绑定

第二步:绑定网关的mac

arp -s 192.168.1.1  00-1d-0f-2a-7f-e2
arp -s 192.168.1.12  00-1f-d0-de-2c-2b

 执行完后,再用arp -a看看是不是有了两行内容,每行后面的type都变成了static,这样就不怕arp缓冲攻击之类的包了,放心上网吧,每次都要执行干脆写成一个批处理吧!

@echo off
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v arp.bat /t reg_sz >nul
arp -s 192.168.1.1  00-1d-0f-2a-7f-e2
arp -s 192.168.1.12  00-1f-d0-de-2c-2b

 好了,这样以来,只要这个批处理一执行就会加入启动项以后就不用管了,开机就会自动运行的。

 

分享到:
评论
22 楼 icyheart 2009-12-02  
以下这种方法也是可以查询出arp主机的:
进入到cmd后,输入arp -a如果这个时候发现有和网关mac一样的主机,那么这台主机就有可能是arp主机了,用nbtstat -a ip地址将对方主机名找出来,如些以来各位知道该怎么办了吧!哈哈
21 楼 icyheart 2009-12-02  
看看底下这个小故事关于arp的东西大家就全明白了:

搬家后,这里可以上网,是房东牵了一根宽带然后用交换机分到每个房间里.头天来还挺快。从第二天开始,速度就奇慢无比,十有八九是有人在下BT。就在网上找点工具查查谁在下。GOOGLE,BAIDU一搜,网络执法官,P2P终结者。OK,下了个P2P终结者。运行起来,一查,果然拦截到不少BT,电驴等的数据。然后一开用户列表,有一台机器下载速度达到130k,天哪,你们用了这么多,别人还用不用了。当时一发狠,就把他的网给掐了。随即世界太平了。网速恢复嗖嗖的了。

     过了两天,发现网速又是奇慢。打开P2P终结者,咦?能拦截到P2P的包,但是每个用户都是几k的速度,总的带宽占用也不多啊,是不是也有人用网络执法官之类的软件呢?后来在网上查资料,了解诸如网络执法官,P2P终结者之所以限制网速甚至断网,就是利用了ARP欺骗的原理。

    在局域网内通讯,IP层的下一层——链路层是通过MAC地址通讯的。比如我要访问192.168.0.3的机器,这时我可能不知道192.168.0.3的MAC地址,这时我就向局域网里广播一个ARP包,问谁是192.168.0.3啊?请把你的MAC地址发我。局域网内所有的机器都会收到这个广播包,正常情况下,只有192.168.0.3的机器会做出应答,说我的MAC是A23FFF0D,这时我的机器就知道了192.168.0.3对应的MAC地址,并可以和他通讯了,并且会在本机的ARP缓冲里面保存192.168.0.3对应的MAC地址,这样就不用每次都去发广播包询问了。某太机器的IP地址可能会变,所以这个列表会随时更新的。ARP欺骗的原理就是,当有ARP查询包时,尤其是要查询网关的ARP的时候,有其他机器在中间回答,说我是网关,这就麻烦了。比如网关的IP地址是192.168.0.1,我要上网了,肯定要先把数据发到网关,于是我就先发个广播包询问,谁是网关啊,把你的MAC地址发个我。其中有不是网关的机器就对这个ARP查询数据应答了,说我是网关,要想上网把数据发给我,这样我每次上网的数据都是先发给他,再由他发给真正的网关,这就达到了截获数据的目的,当然也可以干脆把数据包丢掉,得,这下干脆就上不了网了。而且ARP还有一种广播包,里面的信息是IP地址和对应的MAC地址。正常情况下,比如我的ip地址变更了,我就可以发送这样一个广播包告诉大家,我的IP地址和对应MAC地址是多少,以前的IP地址不用了。但是这样一种包也可以被ARP欺骗利用,他可以不停在局域网里广播数据包,包的内容是网关的IP地址和自己的MAC地址,意思是告诉大家,我是网关,以后大家要有出局域网的数据都要发给我。这下好了。局域网所有的用户都得听他的了。网络执法官和P2P终结者就是这么干的。

      难道就没有解决办法吗?

      回答是有的。本地的ARP列表可以进行静态绑定。即我的列表里192.168.0.1的MAC固定为某个值,不允许改变。这样的话,只要把正确MAC地址和网关IP绑定,就不怕自己的包再发给“中间的第三人”了。用ARP -A命令一看,网关地址果然不是原来的了,随即进行了静态绑定。120k/s,哈哈,网速又恢复了!这之后,只要一发现网速变慢,我就看看ARP列表网关的MAC有没有被改变,变了我就绑定成静态的,绑定完就网速就好了。直到有一天……      一天回家上网,发现网速奇慢,先用P2P终结者看了看,没有人大量占用带宽。再看看ARP列表,网关的MAC地址是静态绑定的,而且MAC值也是对的,咦,这是怎么回事?百思不得其解。后来在网上闲逛,发现ARP防火墙可能管用,就下了一个,装上一试,网速倒是没有完全恢复吧,但是也有50,60k了,看来还管点用。当时一看不早了,就去洗脸准备睡觉。在洗脸的时候我就琢磨,突然来了灵感:是不是ARP欺骗者把网关记录的我机器的MAC地址也改了——改成欺骗者的MAC地址了,这样我发出去的包是直接送到了网关,但网关接收到数据后,是首先发给欺骗者,再发给我的,这样接收数据的速度就会收到控制。回屋后看ARP防火墙的监测,发现一秒钟发出五个ARP攻击数据——即告诉局域网中的其他机器网关的MAC地址是FAC2CC03FC(即攻击者本机的MAC),并告诉网关网络中所有的机器的MAC也都是FAC2CC03FC,这样不仅往外发的数据会经过欺骗者,而且网关从外网接收到数据以后,也会先发给欺骗者,再由他转发给实际的接收者(至于说他是否真的转发,就全由着他了)。索性的是我的ARP防火墙可以发广播数据,即告诉局域网中的机器(包括网关)我的IP地址和真正对应的MAC地址。你不是一秒钟发5个ARP欺骗包吗?好,那我一秒钟发20个广播包,告诉大家(尤其是网关)我真正的MAC地址是多少。在ARP防火墙中设置完后,一看网速,180k/s,爽!

      后记:      这样的反ARP欺骗方式有个缺点就是自己发广播包的速度一定要比欺骗者快,原理我想我已经说得很清楚了。这样就带来一个问题,如果欺骗者想得逞,就会加快欺骗数据的发送速度,而被欺骗者如果想摆脱欺骗,就得以更快的速度发送“更正”数据,这样下来,两个人就开始比谁发送广播包的速度快了,结果局域网里到处充斥广播包,对网速也会有影响,如果是多个人同时比赛看谁发发得快,OH MY GOD!      如果局域网中同时有人用ARP欺骗和BT下载的话,那怎么办的?那你就得用更快的速度发ARP欺骗包,从而占领整个网络的控制高地。当然,还是上面说的问题,如果多个人同时竞争ARP包的发送速度,那……。就像美苏两个大国在搞军备竞赛,储备的核弹够把地球毁灭多少遍了,突然又冒出个国家来,声称他的核弹比美苏的还多,这岂不是加倍让人提心吊胆吗?            当然管理BT下载用ARP欺骗的方法并不是个解决方法,最好的办法还是人来管。本文只是从技术的角度讨论一下ARP欺骗和反ARP欺骗的原理和应对。
20 楼 jyald 2009-12-01  
发这个文章,
只代表你对ARP的正向欺骗有一点认识

你还不知道反向的欺骗

在目前中国大部分傻瓜路由器,根本没有双向绑定

只有在高端路由器上才有。。双向绑定

19 楼 Dollyn 2009-11-30  
icyheart 写道
zjhlht 写道
以前绑过,但是觉得太繁琐,就放弃了,呵呵,后来直接用ARP防火墙了,就是要是限速的话就太恶心了

我用的arp防火墙把不管三七二十一,把全有的包都给屏蔽了,网都上不去了,后来把防火墙关了才勉强可以上网

18 楼 icyheart 2009-11-30  
straw 写道
交换机上设置自己设定ip地址的端口都drop掉,所有的ip地址都通过DHCP,这样便能有效地防止arp,呵呵

嗯 去试试 谢谢啦
17 楼 straw 2009-11-30  
交换机上设置自己设定ip地址的端口都drop掉,所有的ip地址都通过DHCP,这样便能有效地防止arp,呵呵
16 楼 syre 2009-11-27  
在自己的机器上绑mac地址是不够的。关键是要在路由器上做。
15 楼 xjlnjut730 2009-11-27  
这样做会影响网速,而且占用一定的资源...不过现在的机器应该都扛得住~
14 楼 luorongda 2009-11-27  
icyheart 写道
darren 写道
其实大多数情况下并不是arp病毒,其实是聚生网管,p2p终结者之类的流氓在作怪。
我跟这些软件有过一些斗争,在linux下摸索出一些防范的办法。
首先,除非你可以控制路由器实现双向静态物理地址绑定,否则光在一端静态物理地址绑定是不够的
因为对方照样可以察觉到你的机器,然后向路由器发送伪造的arp数据包。
在linux下的解决办法就是静态物理绑定+arptables防火墙.

第一步,一样, 在linux下静态物理地址绑定很方便,找出正确的网关的物理地址,然后加入到/etc/ethers,然后执行arp -f
第二步,就是指定arptables防火墙规则,只跟信任的主机进行arp通讯,arptables的语法跟iptables比较相似,以下是我的腳本

arptables -P INPUT  ACCEPT
arptables -P OUTPUT DROP
arptables -F INPUT
arptables -F OUTPUT

allowed_macs="00:13:02:3a:15:5b 00:0b:b4:00:10:50 00:50:18:2d:8b:12 00:00:39:20:F7:A6"#信任的机器,如网关的物理地址
for mac in $allowed_macs;do
	arptables -A OUTPUT --dst-mac $mac -j ACCEPT	 
done


然后把这些写入/etc/rc.local,arp -f 也可以写到这里,OK!这样设置后基本上很难被那些软件发现你的机器了,也大体能够免于arp攻击.

现在大部分用户还是在用windows,希望你能找到在windows很好防御方法

没事拿个linux出来,你也太恶搞了.
13 楼 icyheart 2009-11-27  
zjhlht 写道
以前绑过,但是觉得太繁琐,就放弃了,呵呵,后来直接用ARP防火墙了,就是要是限速的话就太恶心了

我用的arp防火墙把不管三七二十一,把全有的包都给屏蔽了,网都上不去了,后来把防火墙关了才勉强可以上网
12 楼 zjhlht 2009-11-26  
以前绑过,但是觉得太繁琐,就放弃了,呵呵,后来直接用ARP防火墙了,就是要是限速的话就太恶心了
11 楼 icyheart 2009-11-26  
supercrsky 写道
绑定之后流量还是有限制.

嗯?单绑定怎么会对流量有限制呢?
10 楼 icyheart 2009-11-26  
mating 写道
以前试过绑定,后来在arp里面高级参数自己设定网关的Marc就ok了!

能具体说说是怎么弄的吗?
9 楼 mating 2009-11-26  
以前试过绑定,后来在arp里面高级参数自己设定网关的Marc就ok了!
8 楼 supercrsky 2009-11-25  
绑定之后流量还是有限制.
7 楼 wxq594808632 2009-11-25  
这个确实很烦人.我一般就是以毒攻毒.大家谁也别上...
6 楼 straw 2009-11-25  
最好的办法是在交换机上解决
5 楼 smildlzj 2009-11-24  
试过用java摸弄了类似ARP病毒的..

只是这样:机器A向网关发送ARP,冒充机器B.

这样子网外发送进来的东西,这样走网关->A->B

出去B->网关

...可惜当时实验失败,改不到传输的内容....截取HTTP内容,修改为我指定的内容.
4 楼 icyheart 2009-11-17  
darren 写道
其实大多数情况下并不是arp病毒,其实是聚生网管,p2p终结者之类的流氓在作怪。
我跟这些软件有过一些斗争,在linux下摸索出一些防范的办法。
首先,除非你可以控制路由器实现双向静态物理地址绑定,否则光在一端静态物理地址绑定是不够的
因为对方照样可以察觉到你的机器,然后向路由器发送伪造的arp数据包。
在linux下的解决办法就是静态物理绑定+arptables防火墙.

第一步,一样, 在linux下静态物理地址绑定很方便,找出正确的网关的物理地址,然后加入到/etc/ethers,然后执行arp -f
第二步,就是指定arptables防火墙规则,只跟信任的主机进行arp通讯,arptables的语法跟iptables比较相似,以下是我的腳本

arptables -P INPUT  ACCEPT
arptables -P OUTPUT DROP
arptables -F INPUT
arptables -F OUTPUT

allowed_macs="00:13:02:3a:15:5b 00:0b:b4:00:10:50 00:50:18:2d:8b:12 00:00:39:20:F7:A6"#信任的机器,如网关的物理地址
for mac in $allowed_macs;do
	arptables -A OUTPUT --dst-mac $mac -j ACCEPT	 
done


然后把这些写入/etc/rc.local,arp -f 也可以写到这里,OK!这样设置后基本上很难被那些软件发现你的机器了,也大体能够免于arp攻击.

现在大部分用户还是在用windows,希望你能找到在windows很好防御方法
3 楼 darren 2009-11-16  
hehe

相关推荐

Global site tag (gtag.js) - Google Analytics