DHCP欺骗实验操作及防护措施

DHCP欺骗实验操及防护措施

1、实验拓扑搭建

在这里插入图片描述

2、配置参数

(1)PC1

在这里插入图片描述

(2)PC2

在这里插入图片描述

(3)SW1配置参数
[SW1]vlan batch 10 20
[SW1]interface Ethernet0/0/1	
[SW1-Ethernet0/0/1]display this 
#
interface Ethernet0/0/1
 port link-type access
 port default vlan 10
#
return
[SW1-Ethernet0/0/1]
[SW1]interface Ethernet0/0/2
[SW1-Ethernet0/0/2]display this 
#
interface Ethernet0/0/2
 port link-type access
 port default vlan 20
#
return
[SW1-Ethernet0/0/2]quit
[SW1]interface GigabitEthernet 0/0/1
[SW1-GigabitEthernet0/0/1]dis thi
#
interface GigabitEthernet0/0/1
 port link-type trunk
 undo port trunk allow-pass vlan 1
 port trunk allow-pass vlan 10 20
#
return
[SW1-GigabitEthernet0/0/1]
(4)AR1配置参数(合法路由器)
[AR1]dhcp enable 
[AR1]ip pool TV
[AR1-ip-pool-TV]display this 
[V200R003C00]
#
ip pool TV
 gateway-list 10.1.1.254 
 network 10.1.1.0 mask 255.255.255.0 
 excluded-ip-address 10.1.1.1 
 lease day 2 hour 2 minute 2 
 dns-list 202.99.99.99 
#
return
[AR1-ip-pool-TV]quit
[AR1]ip pool VT
[AR1-ip-pool-VT]dis thi
[V200R003C00]
#
ip pool VT
 gateway-list 20.1.1.254 
 network 20.1.1.0 mask 255.255.255.0 
 excluded-ip-address 20.1.1.1 
 lease day 2 hour 2 minute 2 
 dns-list 202.99.99.99 
#
return
[AR1-ip-pool-VT]quit
[AR1]interface GigabitEthernet 0/0/0.1
[AR1-GigabitEthernet0/0/0.1]display this 
[V200R003C00]
#
interface GigabitEthernet0/0/0.1
 dot1q termination vid 10
 ip address 10.1.1.254 255.255.255.0 
 arp broadcast enable
 dhcp select global
#
return
[AR1-GigabitEthernet0/0/0.1]
[AR1-GigabitEthernet0/0/0.2]dis thi
[V200R003C00]
#
interface GigabitEthernet0/0/0.2
 dot1q termination vid 20
 ip address 20.1.1.254 255.255.255.0 
 arp broadcast enable
 dhcp select global
#
return
[AR1-GigabitEthernet0/0/0.2]
(5)AR2配置参数(黑客路由器)
[HEIKE]dhcp enable 
Info: The operation may take a few seconds. Please wait for a moment.done.
[HEIKE]ip pool IT
Info: It's successful to create an IP address pool.
[HEIKE-ip-pool-IT]gateway-list 1.1.1.254
[HEIKE-ip-pool-IT]network 1.1.1.0 mask 255.255.255.0
[HEIKE-ip-pool-IT]dns-list 202.99.99.99
[HEIKE-ip-pool-IT]lease day 2 hour 2 minute 2
[HEIKE-ip-pool-IT]excluded-ip-address 1.1.1.1
[HEIKE-ip-pool-IT]display this 
[V200R003C00]
#
ip pool IT
 gateway-list 1.1.1.254 
 network 1.1.1.0 mask 255.255.255.0 
 excluded-ip-address 1.1.1.1 
 lease day 2 hour 2 minute 2 
 dns-list 202.99.99.99 
#
return
[HEIKE]ip pool HR
Info: It's successful to create an IP address pool.
[HEIKE-ip-pool-HR]
[HEIKE-ip-pool-HR] gateway-list 2.2.2.254 
[HEIKE-ip-pool-HR]
[HEIKE-ip-pool-HR] network 2.2.2.0 mask 255.255.255.0 
[HEIKE-ip-pool-HR]
[HEIKE-ip-pool-HR] excluded-ip-address 2.2.2.2
[HEIKE-ip-pool-HR]
[HEIKE-ip-pool-HR] lease day 2 hour 2 minute 2 
[HEIKE-ip-pool-HR]
[HEIKE-ip-pool-HR] dns-list 202.99.99.99 
[HEIKE-ip-pool-HR]dis thi
[V200R003C00]
#
ip pool HR
 gateway-list 2.2.2.254 
 network 2.2.2.0 mask 255.255.255.0 
 excluded-ip-address 2.2.2.2 
 lease day 2 hour 2 minute 2 
 dns-list 202.99.99.99 
#
return
[HEIKE-ip-pool-HR]quit
[HEIKE]interface GigabitEthernet 0/0/0.1
[HEIKE-GigabitEthernet0/0/0.1]ip address 1.1.1.254 24
[HEIKE-GigabitEthernet0/0/0.1]dot1q termination vid 10
Jul 30 2020 10:42:56-08:00 HEIKE %%01IFNET/4/LINK_STATE(l)[2]:The line protocol 
IP on the interface GigabitEthernet0/0/0.1 has entered the UP state. 
[HEIKE-GigabitEthernet0/0/0.1]arp broadcast enable 
[HEIKE-GigabitEthernet0/0/0.1]dis thi
[V200R003C00]
#
interface GigabitEthernet0/0/0.1
 dot1q termination vid 10
 ip address 1.1.1.254 255.255.255.0 
 arp broadcast enable
#
return
[HEIKE-GigabitEthernet0/0/0.1]
[HEIKE]interface GigabitEthernet 0/0/0.2	
[HEIKE-GigabitEthernet0/0/0.2]ip address 2.2.2.254 24
[HEIKE-GigabitEthernet0/0/0.2]dot1q termination vid 20
Jul 30 2020 10:44:30-08:00 HEIKE %%01IFNET/4/LINK_STATE(l)[3]:The line protocol 
IP on the interface GigabitEthernet0/0/0.2 has entered the UP state. 
[HEIKE-GigabitEthernet0/0/0.2]arp broadcast enable 
[HEIKE-GigabitEthernet0/0/0.2]dis thi
[V200R003C00]
#
interface GigabitEthernet0/0/0.2
 dot1q termination vid 20
 ip address 2.2.2.254 255.255.255.0 
 arp broadcast enable
#
return

# 子接口下启用全局DHCP
[HEIKE-GigabitEthernet0/0/0.2]dhcp select global 
[HEIKE-GigabitEthernet0/0/0.2]dis thi
[V200R003C00]
#
interface GigabitEthernet0/0/0.2
 dot1q termination vid 20
 ip address 2.2.2.254 255.255.255.0 
 arp broadcast enable
 dhcp select global
#
return
[HEIKE-GigabitEthernet0/0/0.2]

[HEIKE]interface GigabitEthernet 0/0/0.1
[HEIKE-GigabitEthernet0/0/0.1]dhcp  select global 
[HEIKE-GigabitEthernet0/0/0.1]dis thi
[V200R003C00]
#
interface GigabitEthernet0/0/0.1
 dot1q termination vid 10
 ip address 1.1.1.254 255.255.255.0 
 arp broadcast enable
 dhcp select global
#
return
[HEIKE-GigabitEthernet0/0/0.1]

3、防护措施设置

使用DHCP Snooping防范DHCP欺骗攻击

DHCP 欺骗攻击过程:
1.首先攻击者伪装成DHCP客户端,发起大量的DHCP请求(可以用软件实现)。DHCP服务器收到请求后,把IP分配给伪装的DHCP客户端,由于DHCP服务器的IP地址数量是有限的,很快DHCP服务器上地址池的IP就会被消耗完,则DHCP服务器不再为其它客户端分配IP

2.第一步完成后,攻击者这时可以搭建一台DHCP服务器,则客户端的DHCP请求就会到非法的DHCP上请求IP,从而获取一个非法的IP地址。

DHCP Snpooing配置:
1.全局启用dhcp snooping
SW1-GigabitEthernet0/0/1
dhcp snooping enable
……………………………………………………………………………
2.将相应的端口(连接合法DHCP服务器的端口)划入trusted
SW1-GigabitEthernet0/0/1
dhcp snooping trusted
……………………………………………………………………………
3.SW1全局dhcp snooping和所连接的接口dhcp snooping都要开启
dhcp snooping enable
………………………………………………………………………………
4.开启dhcp snooping 防护功能时,要先开启DHCP服务(即dhcp enable)
dhcp enable
dhcp snooping enable

# 防护措施,在交换机的GE 0/0/1上设置参数
[SW1]dhcp enable 
Info: The operation may take a few seconds. Please wait for a moment.done.
[SW1]dhcp snooping enable //全局开启dhcp snooping
[SW1]
Jul 30 2020 11:33:38-08:00 SW1 DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5.25
.191.3.1 configurations have been changed. The current change number is 23, the 
change loop count is 0, and the maximum number of records is 4095.
[SW1]interface GigabitEthernet 0/0/1
[SW1-GigabitEthernet0/0/1]dhcp snooping trusted 
Jul 30 2020 11:35:18-08:00 SW1 DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5.25
.191.3.1 configurations have been changed. The current change number is 24, the 
change loop count is 0, and the maximum number of records is 4095.
[SW1-GigabitEthernet0/0/1]dis thi
#
interface GigabitEthernet0/0/1
 port link-type trunk
 undo port trunk allow-pass vlan 1
 port trunk allow-pass vlan 10 20
 dhcp snooping trusted
#
return
[SW1-GigabitEthernet0/0/1]
[SW1-GigabitEthernet0/0/1]dhcp snooping enable 
[SW1-GigabitEthernet0/0/1]dis thi
#
interface GigabitEthernet0/0/1
 port link-type trunk
 undo port trunk allow-pass vlan 1
 port trunk allow-pass vlan 10 20
 dhcp snooping enable
 dhcp snooping trusted
#
return
[SW1-GigabitEthernet0/0/1]

[SW1]interface Ethernet0/0/3	
[SW1-Ethernet0/0/3]dhcp snooping enable 
Jul 30 2020 11:39:08-08:00 SW1 DS/4/DATASYNC_CFGCHANGE:OID 1.3.6.1.4.1.2011.5.25
.191.3.1 configurations have been changed. The current change number is 25, the 
change loop count is 0, and the maximum number of records is 4095.
[SW1-Ethernet0/0/3]dis thi
#
interface Ethernet0/0/3
 port link-type trunk
 port trunk allow-pass vlan 10 20
 dhcp snooping enable
#
return
[SW1-Ethernet0/0/3]

4、PC1 获取DHCP地址

在这里插入图片描述

5、PC2 获取DHCP地址

在这里插入图片描述

6、中断合法AR1端口后,验证PC能否正常获取DHCP

当交换机GE 0/0/1的端口与AR1的GE 0/0/0的合法端口通信中断后,Pc1和Pc2重新获取DHCP地址时,无法获取。如图所示。

[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]shutdown 
Jul 30 2020 12:15:15-08:00 AR1 %%01IFPDT/4/IF_STATE(l)[0]:Interface GigabitEther
net0/0/0 has turned into DOWN state.
[AR1-GigabitEthernet0/0/0]
Jul 30 2020 12:15:15-08:00 AR1 %%01IFNET/4/LINK_STATE(l)[1]:The line protocol IP
 on the interface GigabitEthernet0/0/0.1 has entered the DOWN state. 
[AR1-GigabitEthernet0/0/0]
Jul 30 2020 12:15:15-08:00 AR1 %%01IFNET/4/LINK_STATE(l)[2]:The line protocol IP
 on the interface GigabitEthernet0/0/0.2 has entered the DOWN state. 
[AR1-GigabitEthernet0/0/0]

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
至此,防护措施已生效。

Dhcp两大威胁以及arp欺骗等试验总结 1 伪dhcp server。Dhcp的工作原理大概是首先client广播dhcp discovery消息,本网段的dhcp server回送dhcp offer消息,客户段再发送dhcp request消息,声明自己即将使用的ip地址,server发送ack给client告知client可以使用。防止伪dhcp其实就可以在交换机上启用dhcp snooping功能,凡是不信任的端口(信任端口就是dhcp server使用的端口,需独立配置),都将拒绝从该端口发送dhcp offer消息从而杜绝伪dhcp server。 在cisco交换机上全局启用 ip dhcp snooping,,并使用命令ip dhcp snooping vlan 2,告知在vlan2里使用snooping,这样所有端口都是非信任端口,都将丢弃dhcp offer报文,如果是使用三层交换机提供dhcp服务,就不比单独配置信任端口了。配置信任端口是在物理端口下使用命令 ip dhcp snooping trust. 记住:接入层交换机需支持dhcp snooping功能;信任端口是在物理端口下配置(包括trunk级联端口) 2 DHCP dos攻击。主要就是伪造大量mac地址去像server申请地址,耗费dhcp server地址池,从个人达到拒绝服务攻击的目的。一般用两种方法,但实际操作性都不是太强。第一种办法就是对交换机端口规定一些合法的mac地址池,只有在此范围内的主机才可以通过该端口进行转发。或者限制最大mac地址数。这样客户端就没办法伪造mac地址去申请ip了。Cisco交换机就是在物理端口下使用switchport port-security mac-add命令填加,这种方法工作量大且不能满足移动性的要求。另一种方法就是实际认证系统相结合,认证系统首先对MAC地址进行第一次认证,只有MAC地址是合法的,才允许DHCP Sever分配IP地址给终端,这主要用到802.1x认证协议和radius认证服务器。 3 有时候为了需要,不希望用户自己设定ip地址来上网,也就是说限制用户只能动态获取地址才能上网,自己固定地址不能上网。这种就相对比较简单,不需要在接入层上做什么设置,也就是不要求接入层支持dhcp snooping功能。只需要在三层交换机上使用如下命令就搞定。 Ip arp inspection vlan 500 //vlan500下面启用arp inspection功能 Ip arp inspection validate src-mac dst-mac ip //只有源mac 目的mac和ip都正确才合法 这里必须还是先在三层交换机上启用ip dhcp snooping功能 同时监控snooping vlan 500。因为arp inspection实际是根据dhcp 绑定信息来判断的。如果用户不是自动获取ip,而是自己设置ip,那么它就不会被dhcp snooping捕获到,当然所有的该ip地址发送的arp请求都会被网关拒绝掉的(因为源,目的mac和ip地址都是不合法的,自然被认为是非法的arp请求)。但是固定ip时是可以跟本局域网内其它机器通信的,只是不能通过arp协议学习到网关的mac地址。 注:以上的dhcp server都是在三层交换机上启用的。 4 arp欺骗。可以分两种情况:一是伪造网关去欺骗网内其它主机;而是伪造其它主机去 欺骗网关。当然更严重的是两种情况同时存在,并开始数据转发功能,这就是一种中间 人攻击(双方欺骗),可以嗅探数据包(代理arp功能跟此类似,很多计费网关和一些透明防火墙就利用了代理arp功能)。从某种意义上说,arp欺骗就是一种代理arp。 神码可提供专门的在接入层交换机使用ACL来限制客户仿冒网关,这个acl就是限制该端口下不允许发送网关地址的arp通告报文,这样可以有效的防止伪造网关去欺骗其它主机。 (Config)# access-list 1101 deny an an untagged-eth2 12 2 0806 20 2 0002 28 4 C0A80001 该ACL说明如下: 13,14字节是arp协议代码0806,21,22字节是0002表示arp reply,29-32字节就是网关ip地址的16进制 STEP2:应用ACL (Config)# Firewall enable (Config)# int e 0/0/1-24 //在所有端口下应用该acl (int)# mac access-group 1101 in traffic-statistic 当然,如果知道某个具体端口是什么IP地址,那么就可以限制该端口只能发送该IP的arp通告是最好了,这就可以完全杜绝arp欺骗。但明显可操作性差。 另一种能较好防止arp欺骗的办法就是在各个主机上绑定网关的mac,同时在网关上静态绑定IP+mac。不过这种办法不如前面办法好,它不能防止局域网内部的arp欺骗。 如果采取的是动态获取ip地址,神码交换机有个新特性,能完全控制arp欺骗。可以防止接入主机假冒网关,可以防止接入主机假冒其它用户;管理复杂度低,交换机配置简单并且基本不需要变更;支持用户移动接入,交换机可以自动检测到用户接入位置并正确转发用户数据; ip dhcp snooping enable ip dhcp snooping binding enable Interface Ethernet0/0/1 ip dhcp snooping binding user-control ! Interface Ethernet0/0/2 ip dhcp snooping binding user-control 如果是静态ip,需要ip+mac+端口的绑定。 am enable Interface Ethernet0/0/1 am port am mac-ip-pool 00-1C-23-06-0D-B9 10.10.1.90 还是说说cisco交换机吧。一般采取动态获取IP地址的上网方式比较多,先配置ip dhcp snooping 再配置ip arp inspection,此时,客户端就应该没办法伪造其它主机去伪造网关,因为这些伪造的arp reply报文在网关看来都是非法的,自然会拒绝。至于伪造网关的防治,大概就只能在用户自己主机上静态绑定arp缓存表了。 1 防止arp扫描。在某些情况下也可抑制arp欺骗。原理就是对物理端口进行arp报文 数量的限制。方法就是在物理端口是使用ip arp inspection limit rate 命令限制每秒钟允许通过的arp报文数。 2 伪mac地址的防治。交换机的mac地址表如果被大量充斥,将会影响性能,严重的将会是交换机崩溃,因为一般的cam存储都有限。所以这类防治般限制每端口出来的mac地址数目即可。至于伪造的防治,那就只能选择port-security了,虽然不能满足移动性的要求。 针对目前学校主干是cisco交换机,接入层品牌太杂,档次参差不齐,用户自动从cisco三层交换机上获取地址上网的情况,我认为比较好的办法就是在cisco交换机上启用dhcp snooping 以及arp inspection功能来尽可能防止arp欺骗。用户还得绑定好网关的mac地址。要能更有效的防止arp欺骗和防止伪dhcp server,还得升级接入层交换机
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云矩阵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值