ARP欺骗类型与解决方法Word格式.docx
《ARP欺骗类型与解决方法Word格式.docx》由会员分享,可在线阅读,更多相关《ARP欺骗类型与解决方法Word格式.docx(8页珍藏版)》请在冰豆网上搜索。
FF”,这表示向同一网段内的所有主机发出这样的询问:
“192.168.1.110的MAC地址是什么?
”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:
“192.168.1.1的MAC地址是01:
01:
01”。
这样,主机A就知道主机B的MAC地址,它就可以向主机B发送信息。
同时它还更新自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可以。
ARP缓存表采用了老化机制,行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。
arp的用法诠释(图)
三、ARP欺骗原理:
在同一NET内的所以机器是通过MAC地址通讯。
方法为,PC和另一台设备通讯,PC会先寻找对方的IP地址,然后在通过ARP表(ARP表里面有所以可以通讯IP和IP所对应的MAC地址)调出相应的MAC地址。
通过MAC地址与对方通讯。
也就是说在内网中各设备互相寻找和用来通讯的地址是MAC地址,而不是IP地址。
但是当初ARP方式的设计思想没有考虑到过多的安全问题。
给ARP留下一些隐患,ARP欺骗就是其中一个例子。
网内的任何一台机器都可以轻松的发送ARP广播,来宣称自己的IP和自己的MAC。
这样收到的机器都会在自己的ARP表格中建立一个他的ARP项,记录他的IP和MAC地址。
如果这个广播是错误的其他机器也会接受。
例如:
192。
168。
1。
110机器MAC是01:
01,他在内网广播自己的IP地址是192。
110(其实是路由器的IP),MAC地址是01:
01(他自己的真实MAC)。
这样大家会把给192。
254的信息和发给01:
01。
也就是192。
110。
有了这个方法欺骗者只需要做一个软件,就可以在内网想骗谁就骗谁。
而且编程软件网上很多。
如:
”P2P终结者”等等!
基于原理,ARP在技术上面又分为,对PC的欺骗和对路由的欺骗。
他们的区别在后面的ARP解决里面仔细阐述。
四、ARP的起因,发现以及欺骗
(1)ARP欺骗的起因:
网络游戏兴起后网络盗号,木马也跟着疯狂,如今网页的挂马也是很有技术可言。
ARP欺骗就是一种很好的盗号方式。
欺骗者利用自己在网吧上网时,先找到内网网关的MAC地址,然后发送自己ARP欺骗,告送内网所以的机器自己是网关。
192。
24MAC01:
0f机器为欺骗者的盗号机器,首先,他会先找到内网的网关(内网网关为192。
1
MAC为01:
ff)。
之后他就会发送ARP广播,说自己的IP地址是192。
MAC地址是01:
ff。
这样,内网的所有收到他发信息得机器都会把它误认为内网的网关。
所有上网信息都会通过他的MAC地址发给这个机器,由于找不到真正的网关,这些被骗的机器就无法上网。
而发送的所有信息都会被这个盗号机器收到,通过分析收到的信息他可以在里面找到有用的信息,特别是有关于帐号的部分与密码,从而得到正在游戏的玩家的帐号与密码被改,发生盗号事件。
(2):
ARP的发现:
出现掉线了,是否是ARP呢?
如何去判断。
这里根据技术的总结给出判断方法。
ARP的基本原则就是掉线,在掉线的基础上可以通过以下几种方式判别,一是:
一般情况下不需要处理它会在很短的时间之内就可以恢复正常上网。
因为ARP欺骗是由时限之分,过了期限就会自动的回复正常。
而且现在大多数路由器都会在很短时间内不停广播自己的正确ARP,使受骗的机器回复正常。
但是如果出现攻击性ARP欺骗(其实就是时间很短的量很大的欺骗ARP,超载了正常的模式为基础),他是不断的通过大量ARP欺骗来阻止内网机器上网,即使路由器不断广播正确的包也会被他大量的错误信息吞噬。
二是:
打开被骗机器的DOS界面,输入ARP-A命令会看到相关的ARP表(如下图所示),通过看到的网关的MAC地址可以去判别是否出现ARP欺骗。
如果出现欺骗问题,ARP表里面会出现错误的网关MAC地址,也就是说相同的MAC地址(如上图红线划出来的三行)!
(3)ARP对路由的欺骗。
做了静态绑定之后,为什么还会掉线呢还是ARP吗?
简洁的说:
ARP还是可以对路由进行欺骗。
因为有种情况下的问题,没有得到解决。
大家设想一下,现在的处理方法如果碰到欺骗者不是冒充网关,而是冒充内网的PC会如何呢?
答案是掉线,冒充谁,谁掉线。
因为路由器收到欺骗ARP后找不到你了,转发给你的信息全部给了欺骗者的机器啦。
我们在PC上面可以绑定网关。
难道在路由上面也绑定PC吗?
答案是否定的,难道我内网每台PC的MAC地址都在路由里面绑定,累死了,而且几百个MAC地址看着就眼晕,而且如果有任何改动都需要调整路由器,几百条记录也太累了吧。
懒人吗?
就是有懒方法,那就是找一款软件让它自己来搜取所有的IP与MAC进行全面的自动处理,呵呵!
如下面图的示,可以自动搜,自动绑呀
对于ARP的问题,如果还有好的想法请不惜提出来。
我们一起讨论……
接下来,在补充一种ARP欺骗的问题,他就是对交换机,很多带管理的交换机他们都有一张ARP表格需要维护,而且通过这张表来提高数据的交换效率。
如果出现ARP欺骗,交换机就无法给目标IP发送数据啦,所以需要在交换机里面做静态ARP绑定。
五、ARP解决:
现在看到ARP解决方案,都感觉有点效率低下,而且不够稳定。
在此我讲述几种:
路由ARP广播。
国内部分硬件路由有此功能,最早是在欣向的路由里面发现这个功能。
感觉不错,挺有方法的,但是在软路由里面好像还未发现。
他的原理是路由器不间断的广播正确的路由器ARP。
例如:
路由器的IP是192.168.1.1MAC:
01:
0f,则就会不停的每秒广播自己的正确ARP。
不管你内网机器是否想不想接收,一秒收一个还是多少时间收一个,收到了就更改一次ARP表收到了就改一次ARP表。
永无止息。
ARP也就用了这种的方法,如果出现网络ARP欺骗,欺骗者发出欺骗信息,PC刚收到欺骗信息就收到了正确信息。
所以问题也就解决了。
但是有个隐患,就是广播风暴的问题。
不间断的广播是否会应该影响内网的网络呢?
其实,以每秒次数的频率发送APR广播在内网是微乎其微的,因为任何一个机器都会有广播发生,多一个ARP最多相当于多几台机器的信息量,对内网是不会有影响的。
但是这种方式有他的问题,当欺骗者加大欺骗ARP的频率超过路由时(可以以利用欺骗软件是最好的),还是会造成欺骗的效果。
解决也应该很简单就是加大路由器的广播频率。
2。
超量路由ARP广播。
近期发现个别路由厂家宣传可以完全防止ARP问题。
后来发现,所谓完全防止其实就是上面的路由ARP广播,只是简单的把频率加大到每秒100、200……次。
在这方法效果仅局限于看ARP方面确实比每秒一次要稍微好些。
但仍是得不偿失,甚至有点抽象了,简单分析一下,每秒100为例,可以说是:
路由器1秒时间会发出100个ARP广播,200台的电脑,每台机器每秒处理100次。
如果有10台交换机,就会有10个交换机处理100次。
每次交换机都会把信息互相转发,这每秒ARP信息的处理量要按照10的N次方再乘上100去计算。
如果了解广播的模式就会清楚,交换之间会互相不停的传递信息,这样每台PC最终收到的信息每秒要上万条吧,每秒都这样干100次。
像这样的网络不也是够呛!
为了一个ARP,时时刻刻的折腾网络值,也维护这arp表,网络性能会降低的让人难以置信吧。
超量路由的解决ARP欺骗,这样对于网络性能不是太完美!
3。
推荐解决的方法:
静态绑定。
ARP解决最有效的方法,就是从根本杜绝他的欺骗途径。
欺骗是通过ARP的动态实时的规则欺骗内网机器,所以我们把ARP全部设置为静态可以根本解决对内网PC的欺骗。
方法为:
找到路由器的lan口的MAC地址,把MAC地址通过静态的方式帮定到每台PC上面。
通过命令,ARP-S可以实现。
首先,建立一个批处理文件。
内容只有一行命令,“ARP
-S
内网网关
网关的MAC地址”,例如:
“ARP
192.168.1.110
01
”。
把批处理文件放到注册表启动里面,这样每次开机都会执行这个文件,即使出现ARP欺骗,由于我们设置的是静态方式,PC也不会去理会欺骗的ARP,最好把路由IP与MAC和自已机子的IP与MAC都绑一下
如果设置成功会在PC上面通过执行
“arp–a”可以看到相关的显示内容:
InternetAddress
PhysicalAddress
Type
192.168.1.1
0f-1f-32-23-62-77
static(静态)
一般不绑定,在动态的情况下:
Type
dynamic(动态)
4。
有人设想改动内网PC的IP与MAC,设置为与路由冲突,使路由”DWON”掉。
这个问题虽超出了ARP的范畴。
但认为这却是ARP的欺骗的扩展方法确实破坏力很强,对于再好的路由都会怕它三分,目前未找到更好的解决方法,我只是提一下,还请众人帮助。
5。
利用编程软件来解决ARP欺骗更是好,而且也快速,稳定!
(推荐使用“antiarp4.2b1.rar保护神”的PC机,就没事,也可以限制被攻击)
A:
这里推荐的工具包括:
1、欣向ARP工具。
包括很全面的ARP防范的功能。
(其中包括WinPcap_3_0。
)
下载地址:
2、抓包看包工具。
ethereal-setup-0.10.8.
antiarp4.2b1.rar保护神:
B:
如果你的编程比较好的话可以自编个小软件:
(下面只是一个提供参考,但是要以脚本保护*.vbs)
setWs=WScript.CreateObject("
WScript.Shell"
count=0
foreachpsingetobject("
winmgmts:
\\.\root\cimv2:
win32_process"
)。
instances_
ifps.name="
wscript.exe"
thencount=count+1
next
ifcount>
2thenwscript.quit
i=1
fori=1to3'
3为绑定的次数
i=i-1'
永远也不会是3,所以一直循环
WScript.Sleep(1000*60*0.1)'
每0.1分钟绑定一次
Ws.run"
arp-d"
,0
ws。
run"
arp-s192.168.2.100-0a-eb-d2-de-fa"
,0'
改成你自己的网关IP和MAC
next
六、补充:
1、IP/MAC清单
a、选择网卡。
如果是单网卡不需要设置。
如果是多网卡需要设置连接内网的那块网卡。
b、IP/MAC扫描。
这里会扫描目前网络中所有的机器的IP与MAC地址。
请在内网运行正常时扫描,因为这个表格将作为对之后ARP的参照。
之后的功能都需要这个表格的支持,如果出现提示无法获取IP或MAC时,就说明这里的表格里面没有相应的数据。
2、ARP欺骗检测
这个功能会一直检测内网是否有PC冒充表格内的IP。
你可以把主要的IP设到检测表格里面,例如,路由器,电影服务器,等需要内网机器访问的机器IP。
(补充"
)ARP欺骗记录"
表如何理解:
"
time"
:
发现问题时的时间;
sender"
发送欺骗信息的IP或MAC;
Repeat"
欺诈信息发送的次数;
ARPinfo"
是指发送欺骗信息的具体内容。
如下面例子:
time
sender
Repeat
ARPinfo
22:
22
192.168.1,22
1433
192.168.1.110isat00:
0e:
03:
02:
e8
这条信息的意思是:
在22:
22的时间,检测到由192.168.1.22发出的欺骗信息,已经发送了1433次,他发送的欺骗信息的内容是:
192.168.1.110的MAC地址是00:
e8。
打开检测功能,如果出现针对表内IP的欺骗,会出现提示。
可以按照提示查到内网的ARP欺骗的根源。
提示一句,任何机器都可以冒充其他机器发送IP与MAC,所以即使提示出某个IP或MAC在发送欺骗信息,也未必是100%的准确。
所有请不要以暴力解决某些问题。
3、主动维护(快速解决)
这个功能可以直接解决ARP欺骗的掉线问题,但是并不是理想方法。
他的原理就在网络内不停的广播制定的IP的正确的MAC地址。
制定维护对象"
的表格里面就是设置需要保护的IP。
发包频率就是每秒发送多少个正确的包给网络内所有机器。
强烈建议尽量少的广播IP,尽量少的广播频率。
一般设置1次就可以,如果没有绑定IP的情况下,出现ARP欺骗,可以设置到50-100次,如果还有掉线可以设置更高,即可以实现快速解决ARP欺骗的问题。
但是想真正解决ARP问题,还是请参照上面绑定方法。
4、路由器日志
收集路由器的系统日志,等功能。
5、抓包
网吧很少接触到包级别的设置或问题。
路由器的这个功能很可能把大家带到一个新技术高度,但是对于包的分析比一般的问题要复杂很多了,但是却可以提高对网络的把控力。
通过抓到的包可以分析内网的各种问题。
同时,抓包功能里面的空白条是控制抓包规则的,ethereal软件就是给提供给用抓包者分析包用的,把包文件直接拖到ethereal里面就可以打开。
ethereal即可以抓包也可以看包
结论
本文介绍了ARP协议以及与其相关的安全问题。
一个重要的安全问题就是ARP欺骗,对于同一网段的ARP欺骗以及相关综合解决方法。
由于有这些安全问题的存在,给出一些最基本的解决办法。
本文还介绍了ARP协议的基本概述与ARP欺骗概述。
【参考文献】
1、《计算机网络原理实验教程》朱立才编写[M]科学出版社2005年
2、《计算机网络安全技术》蔡立军、李立明、李峰编写中国水利水电出版社2004年