常见的DHCP攻击

1、泛洪攻击(DDOS/DOS)
2、饿死攻击;
3、仿冒服务器攻击
4、仿冒客户端;

DHCP snooping

作用:用于防范DHCP攻击,一般部署在客户端与服务器之间的交换机上;
功能:限速、信任、监听+检测

泛洪攻击(拒绝服务攻击)

原理:攻击者通过发送大量的DHCP报文给服务器,服务器收到后需要逐份拆包处理,需要消耗设备资源,最终使得合法客户端发送的报文,服务器没有空余资源处理,无法提供服务;

防范手段

限速,限制交换机每秒种转发DHCP报文的个数

  [S1]dhcp enable
  [S1]dhcp snooping enable
  [S1]dhcp snooping check dhcp-rate 10 

饿死攻击

原理:攻击者通过伪造不同的chaddr字段,发送大量DHCP discover/request去获取合法服务器所分配的ip地址,当全部ip地址均被获取完成后,服务器无法向合法客户端分配ip;

防范手段

检查DHCP discover/request中chaddr字段跟数据链路层头部中smac字段是否一致,如果不一致则认证该报文为非法DHCP报文,直接丢弃;(注:攻击者虽然可以伪造chaddr字段,但是无法伪造数据链路层头部smac字段;)

配置

[S1]dhcp snooping check dhcp-chaddr enable vlan 1 

仿冒服务器攻击

原理:攻击者仿冒服务器,给合法客户端发送携带非法ip的offer报文,只要攻击者的offer先于合法服务器到客户端,那么客户端就采用了非法ip;

防范手段

信任功能,当一台交换机开启了DHCP snooping后,所有接口均处于不信任状态,处于不信任状态的接口,无法处理服务器发送的报文(offer、ACK、NAK)

配置

interface GigabitEthernet0/0/3
dhcp snooping trusted

防范手段2

开启dhcp服务器嗅探功能,记录下从信任接口收到的报文的sip与接口的对应关系;
当交换机收到服务器发送的报文(offer、ACK、NAK)会检查sip跟记录中的是否一致;

配置

[S1]dhcp server detect 

仿冒客户端

原理:攻击者仿冒客户端发送release/request/discover实现攻击;

防范手段:交换机开启了DHCP snooping之后,会监听request/ACK报文,为客户端方生成一张表项(ip地址、mac地址、接口、vlan、租期),当交换机再次收到release/request/discover报文后,会根据报文的sip、smac、接收接口、接收vlan跟表项进行匹配,完全匹配则放行,任何一项匹配不上则丢弃;

特殊情况:合法客户端在生成了dhcp snooping表项后才加入进来,它发送的discover/request会被拒绝掉;
解决方案:静态绑定dhcp snooping表项

配置

[S1]user-bind static  ......

DHCP的额外应用

与IPSG联动
开启了该功能后,交换机可以检测所有包含ip头的报文,其中根据sip与收到的接口去匹配DHCP snooping表项;

配置

interface GigabitEthernet0/0/1
ip source check user-bind enable

与ARP联动

开启了该功能后,交换机可以检测所ARP报文,其中根据smac与收到的接口、vlan去匹配DHCP snooping表项;

配置

[S1]arp dhcp-snooping-detect enable

作用:防范中间人攻击


ACL(访问控制列表)

定义:在路由器上构建一张访问控制列表,访问控制列表由一条条规则组成,当路由器收到数据包时,会逐条匹配规则,匹配上后执行相应的动作(permit允许放行、deny拒绝放行)

作用:实现流量控制、访问控制;

分类

基本acl(2000~2999):依据数据包的sip进行匹配;
高级acl(3000~3999):依据数据包的sip、dip、sport、dport、协议类型进行匹配;
二层acl(4000~4999):依据数据包的smac、dmac、type来匹配数据包;

反掩码(通配符)
二进制角度:0代表固定、1代表可变;

匹配规则

1、按照规则号由小到大进行匹配;
2、当数据包匹配不上规则时,默认放行;
3、当数据包匹配上规则后会马上执行相应的动作,不会再往下匹配;

acl只能匹配到接收数据包,对于本地产生的数据包无法匹配;

配置

time-range a 08:00 to 17:00 working-day     //定义时间范围

基本acl

acl number 2000  
rule 5 deny source 192.168.1.2 0 time-range a
rule 10 permit source 1.1.1.1 0 

interface GigabitEthernet0/0/1
traffic-filter outbound acl 2000

高级acl

acl number 3000  
rule 5 deny ip source 192.168.1.1 0 destination 2.2.2.3 0 
rule 10 deny ip source 192.168.1.2 0 destination 2.2.2.2 0 
rule 15 deny tcp source 192.168.1.10 0 destination 192.168.2.10 0 destination-port eq ftp