论文部分内容阅读
摘 要:分析了ARP欺骗攻击的过程和攻击危害,有针对性提出解决ARP欺骗攻击方案,最后给出了安全防范的措施和原则。
关键词:ARP协议;局域网;ARP欺骗;安全防范
1 ARP病毒分析
在路由器的“系统历史记录”中看到大量如下的信息:
MAC Chged 10.128.103.124
MAC Old 00:01:6c:36:d1:7f
MAC New 00:05:5d:60:c7:18
这个消息代表了用户的MAC地址发生了变化,在ARP欺骗木马开始运行的时候,局域网所有主机的MAC地址更新为病毒主机的MAC地址(即所有信息的MAC New地址都一致为病毒主机的MAC地址),同时在路由器的“用户统计”中看到所有用户的MAC地址信息都一样。
BKDR_NPFECT.A病毒引起ARP欺骗之实测分析
(1)病毒现象。
中毒机器在局域网中发送假的APR应答包进行APR欺骗,造成其他客户机无法获得网关和其他客户机的网卡真实MAC地址,导致无法上网和正常的局域网通信.
(2)病毒原理分析。
病毒的组件:
本文研究的病毒样本有三个组件构成:
%windows%SYSTEM32LOADHW.EXE(108,386 bytes)…..”病毒组件释放者”
%windows%System32driversnpf.sys(119,808 bytes)…..”发ARP欺骗包的驱动程序”
%windows%System32msitinit.dll(39,952 bytes)…“命令驱动程序发ARP欺骗包的控制者”
病毒运作基理:
(1)LOADHW.EXE执行时会释放两个组件npf.sys和msitinit.dll.
LOADHW.EXE释放组件后即终止运行。
注意:病毒假冒成winPcap的驱动程序,并提供winPcap的功能,客户若原先装有winPcap。
npf.sys将会被病毒文件覆盖掉。
(2)随后msitinit.dll将npf.sys注册(并监视)为内核级驱动设备:“NetGroup Packet Filter Driver”。
msitinit.dll还负责发送指令来操作驱动程序npf.sys(如发送APR欺骗包,抓包,过滤包等)以下从病毒代码中提取得服务相关值:
(3)npf.sys负责监护msitinit.dll.并将LOADHW.EXE注册为自启动程序:
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce]
dwMyTest=LOADHW.EXE
由于该项位于RunOnce下,该注册表启动项在每次执行后,即会被系统自动删除.
(3)反病毒应急响应解决方案。
按以下顺序删除病毒组件:
(1)删除“病毒组件释放者”。
%windows%SYSTEM32LOADHW.EXE
(2)删除“发ARP欺骗包的驱动程序”(兼“病毒守护程序”)。
%windows%System32driversnpf.sys
•在设备管理器中,单击“查看”-->”显示隐藏的设备”
•在设备树结构中,打开“非即插即用….”
•找到“NetGroup Packet Filter Driver”,若没找到,请先刷新设备列表
•右键点击“ NetGroup Packet Filter Driver”菜单,并选择“卸载”
•重启windows系统,
•删除%windows%System32driversnpf.sys
•删除“命令驱动程序发ARP欺骗包的控制者”
•%windows%System32msitinit.dll
•删除以下“病毒的假驱动程序”的注册表服务项:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNpf
2 局域网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协议;局域网;ARP欺骗;安全防范
1 ARP病毒分析
在路由器的“系统历史记录”中看到大量如下的信息:
MAC Chged 10.128.103.124
MAC Old 00:01:6c:36:d1:7f
MAC New 00:05:5d:60:c7:18
这个消息代表了用户的MAC地址发生了变化,在ARP欺骗木马开始运行的时候,局域网所有主机的MAC地址更新为病毒主机的MAC地址(即所有信息的MAC New地址都一致为病毒主机的MAC地址),同时在路由器的“用户统计”中看到所有用户的MAC地址信息都一样。
BKDR_NPFECT.A病毒引起ARP欺骗之实测分析
(1)病毒现象。
中毒机器在局域网中发送假的APR应答包进行APR欺骗,造成其他客户机无法获得网关和其他客户机的网卡真实MAC地址,导致无法上网和正常的局域网通信.
(2)病毒原理分析。
病毒的组件:
本文研究的病毒样本有三个组件构成:
%windows%SYSTEM32LOADHW.EXE(108,386 bytes)…..”病毒组件释放者”
%windows%System32driversnpf.sys(119,808 bytes)…..”发ARP欺骗包的驱动程序”
%windows%System32msitinit.dll(39,952 bytes)…“命令驱动程序发ARP欺骗包的控制者”
病毒运作基理:
(1)LOADHW.EXE执行时会释放两个组件npf.sys和msitinit.dll.
LOADHW.EXE释放组件后即终止运行。
注意:病毒假冒成winPcap的驱动程序,并提供winPcap的功能,客户若原先装有winPcap。
npf.sys将会被病毒文件覆盖掉。
(2)随后msitinit.dll将npf.sys注册(并监视)为内核级驱动设备:“NetGroup Packet Filter Driver”。
msitinit.dll还负责发送指令来操作驱动程序npf.sys(如发送APR欺骗包,抓包,过滤包等)以下从病毒代码中提取得服务相关值:
(3)npf.sys负责监护msitinit.dll.并将LOADHW.EXE注册为自启动程序:
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce]
dwMyTest=LOADHW.EXE
由于该项位于RunOnce下,该注册表启动项在每次执行后,即会被系统自动删除.
(3)反病毒应急响应解决方案。
按以下顺序删除病毒组件:
(1)删除“病毒组件释放者”。
%windows%SYSTEM32LOADHW.EXE
(2)删除“发ARP欺骗包的驱动程序”(兼“病毒守护程序”)。
%windows%System32driversnpf.sys
•在设备管理器中,单击“查看”-->”显示隐藏的设备”
•在设备树结构中,打开“非即插即用….”
•找到“NetGroup Packet Filter Driver”,若没找到,请先刷新设备列表
•右键点击“ NetGroup Packet Filter Driver”菜单,并选择“卸载”
•重启windows系统,
•删除%windows%System32driversnpf.sys
•删除“命令驱动程序发ARP欺骗包的控制者”
•%windows%System32msitinit.dll
•删除以下“病毒的假驱动程序”的注册表服务项:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNpf
2 局域网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的欺骗有可能导致陷阱包丢失。