December 2007 Archives

涉及到的设备: Cisco3750系列交换机、Cisco2950系列交换机、H3C E328交换机
涉及到的软件:Cain、dsniff
*需要注意的问题:上述2种软件属于安全评估软件,在生产网络上使用有可能对网络产生严重影响。
可能涉及到的技术:arp inspection、dhcp snooping、port security、protected port、proxy arp

arp攻击是目前园区网络里面非常常见的一种L2攻击行为,带来的危害有会话劫持、DoS等。具体的攻击方法和攻击原理从略。单纯的使用端口隔离是无法防护这种攻击,而IP协议本身需要arp才可以正常工作,因此又不能将该协议彻底丢弃掉。

今天突发奇想在某些区域试用了这样的技术组合:dhcp snooping+arp inspection+protected port实现了对arp攻击arp virus的防护。
按照下面拓扑,两台PC在同一个vlan中(假设为vlan2),正常情况下,两台PC互相访问会不经过3层设备直接在2层设备上互相访问到。3层设备上建立了一个环回口模拟internet地址为2.2.2.2。
假设1.1.1.2是arp攻击者,当攻击者对1.1.1.1发动攻击时,1.1.1.1有可能会无法访问到2.2.2.2或者被迫要将访问2.2.2.2的流量送到1.1.1.2然后再转发。
正常情况下同一vlan内的访问
由于1.1.1.1和1.1.1.2在同一个vlan,2层上没法检查/隔离虚假的arp-reply,这就造成了问题。


Cisco提供的protected port技术可以实现在隔离同一个vlan内的机器互相访问,但是经过实验发现单纯使用protected port只能隔离2层上的互相访问,当使用arp攻击工具时仍然会造成被攻击者无法访问外网。

使用arp inspection技术可以实现对arp数据包的监控
,为使用arp inspection需要先启用dhcp snooping或者port security功能,关于本技术的介绍见Cisco网站。
启用protected port之后的同一vlan内的访问需要经过3层设备
解决方法如下:
1.在接入设备上启用protected port
所有连接用的端口上应用:
interface FastEthernet0/1
switchport access vlan 2
switchport mode access
switchport protected !应用本命令
2.在3层设备上启用arp inspection:
ip arp inspection vlan a-b(某段vlan)
ip arp inspection validate src-mac ip !检查src-mac和ip
在连接接入设备的接口下不限制arp数据包的数量,以便避免出现攻击时接口err-disable
interface GigabitEthernet1/0/1
switchport trunk encapsulation dot1q
switchport mode trunk
ip arp inspection limit none !应用本命令

*3.在3层设备上启用dhcp snooping功能以便为arp inspection提供可以检测的依据:
全局模式
ip dhcp snooping
ip dhcp snooping vlan a-b(某段vlan)
连接dhcp服务器的接口应用
ip dhcp snooping trust

*4.为了实现同vlan见PC可以互相访问,需要在3层设备上启用ip local-proxy-arp。如果不启用local-proxy-arp的话同一vlan下的PC会因为收不到对方的arp-reply而无法封包。默认情况下,3层设备收到本网其他地址的arp-request的时候不会理睬,启用local-proxy-arp之后3层设备会对收到的所有本网arp-request回应arp-reply,回复中的MAC地址是3层设备对应的3层接口的MAC。
interface Vlan2
no ip proxy-arp !禁用proxy-arp,为安全考虑
ip local-proxy-arp !启用local-proxy-arp实现同一vlan内互相访问
ip route-cache same-interface!会自动生成本命令

端口隔离技术和arp inspection技术的组合使用是解决arp攻击的方法之一,端口隔离技术不是Cisco的专利,在H3C交换机上同样有类似的实现:
在接口模式下运行port isolate即可实现。需要注意的是,protected port/端口隔离 技术应当仅仅应用到连接用户的接口下,千万不要应用到连接3层设备的接口,否则会造成用户无法访问。

空白

| 2 Comments | No TrackBacks

很久都没有写东西了,前段时间是因为在忙着四处飞来飞去,等飞回家了又病倒休息了快一周。
有些时候想主动让自己脑子保持空白,就好像最近一段时间一样——每天主动迷迷糊糊的过日子——不去主动想工作的事情,不去主动想生活的事情,不去计划,不去反思。因此最近也实在不知道想写些什么。

在麦当劳里泡着,本想喝热橙汁(我认为唯一有营养的热饮),结果被告知没有。进来几位老太太,坐在空桌上,她们拿出了随身携带的烤白薯,一面吃着一面聊着不知道谁家的糗事。服务员似乎见惯了类似的事情,没有表达出对她们的任何不满,嗯,社会确实进步了,至少服务意识在进步。

去串吧想解解馋,被告知没有羊肉串了,md没有肉串还开什么串吧,点了个烤鱼,5块钱。忽然想起今天是圣诞节,我不信教,不过借用一句吧,愿老天爷保佑有鱼吃的人。

ClustrMaps

Archives

Pages

OpenID accepted here Learn more about OpenID
Powered by Movable Type 4.37
Creative Commons License
This blog is licensed under a Creative Commons License.

January 2012

Sun Mon Tue Wed Thu Fri Sat
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

About this Archive

This page is an archive of entries from December 2007 listed from newest to oldest.

November 2007 is the previous archive.

January 2008 is the next archive.

Find recent content on the main index or look in the archives to find all content.

Google ADs