CoPP là gì ? Cách chống DDoS UDP TCP bằng CoPP Control Panel Policing

HanoTech.Net | Chuyên trang công nghệ, thông tin bảo mật, bản vá lỗ hổng

Chuyên trang công nghệ, thông tin bảo mật, bản vá lỗ hổng

Bảo mật Website

CoPP là gì ? Cách chống DDoS UDP TCP bằng CoPP Control Panel Policing

Một ngày đẹp trời bạn bị tấn công UDP Reflection với băng thông đầu vào lên tới 100Gbps, hay bị tấn công DDoS TCP với tần suất cực cao. Switch/Router CPU full 95%, đồng thời gói tin bị drop liên tục.

Bài viết này hướng dẫn các bạn bảo vệ hệ thống mạng của mình khỏi các cuộc tấn công DoS/DdoS quy mô lớn bằng cách thiết lập Policy chặn ở mạng biên của mạng ( Border Network ).

Cách này thường được sử dụng cho các hệ thống mạng DataCenter quy mô lớn, nơi cung cấp dịch vụ lớn ra cho người dùng sử dụng. Kỹ thuật mà TABATECH đề cập hôm nay là CoPP (Control Panel Policy).

CoPP (Control Panel Policing) là gì

CoPP- Control Panel Policing là tính năng bảo mật trên các dòng Switch/Router Cisco gồm IOS và NX-OS, ngăn chặn tấn công DoS/DdoS vào hệ thống mạng. Khi có tấn công DDoS vào hệ thống, thiết bị mạng thường bị CPU cao do phải xử lý rất nhiều gói tin.

CoPP sẽ bảo vệ tránh sử dụng dụng CPU quá mức bằng cách đặt ngưỡng sử dụng theo băng thông hoặc theo pps (packet per second)

Cách sử dụng CoPP để chặn tấn công DDoS

CoPP sử dụng framwork MQC (Modular QoS CLI) để định nghĩa loại traffic và gắn policy tới traffic đã phân loại. MQC sử dụng nhiều class-map để định nghĩa các packet thành một loại traffic nào đó. Sau đó dùng policy-map để đưa ra quyết định đối với các traffic này.

Chỉ có policy-map có tên là “system-cpp-policy” được attach tới control-panel. Trong policy-map này chứa nhiều class-map có sẵn, gồm các class-map trong bảng bên dưới.

Chú ý:
– Trong policy-map có nhiều class-map, bao gồm các class-map có sẵn và class-map bạn định nghĩa.
– Bạn tạo được class-map cho riêng bạn, nhưng tên quy ước phải bắt đầu bằng “system-cpp-”
– system-cpp-policy được attach tới control-panel và không detach được.
– Khuyến cáo: tạo policy-map “ system-cpp-policy” thông qua macro system-cpp “macro global description system-cpp”
– CoPP không được bật trừ khi global QoS được bật và policy được set.

Cấu hình CoPP để chặn tấn công DDoS

Mặc định chức năng CoPP bị tắt, bạn cần bật nó và cấu hình policy cho CoPP

Switch# config terminal
# Enable qos gobale
Switch(config)# qos 

#Attaches the system-cpp-policy policy-map to the control-plane.
Switch(config)# macro global apply system-cpp 

#Truy cập vào mode policy-map
Switch(config)#policy-map system-cpp-policy 

#Tạo class-map
Switch(config-pmap)#  class system-cpp-tcpconnect 

# Dùng police để gắn các action tới  traffic class, ở đây: nếu vượt quá ngưỡng thì drop gói.
Switch(config-pmap-c)# police 640000 4000 conform transmit exceed drop
#Cú pháp: lệnh:
Switch(config-pmap-c)# police 
[aggregate name] rate burst 
[conform-action {drop | transmit}] 
[{exceed-action {drop | transmit}}]
#show policy-map  system-cpp-policy 
  Policy Map system-cpp-policy 
    Class system-cpp-dot1x 
    Class system-cpp-bpdu-range 
     police cir 50000 bc 1562 
       conform-action transmit 
       exceed-action drop 
    Class system-cpp-cdp 
    Class system-cpp-sstp 
    Class system-cpp-mcast-cfm 
    Class system-cpp-ucast-cfm 
    Class system-cpp-ospf 
    Class system-cpp-igmp 
    Class system-cpp-pim 
    Class system-cpp-all-systems-on-subnet 
    Class system-cpp-all-routers-on-subnet 
    Class system-cpp-ripv2 
    Class system-cpp-hsrpv2 
    Class system-cpp-ip-mcast-linklocal 
    Class system-cpp-dhcp-cs 
    Class system-cpp-dhcp-sc 
    Class system-cpp-dhcp-ss 
    Class system-cpp-icmpv6-rs 
    Class system-cpp-icmpv6-ra 
    Class system-cpp-icmpv6-rr 
    Class system-cpp-dhcpv6-cs 
    Class system-cpp-dhcpv6-sc 
    Class system-cpp-icmpv6-ns 
    Class system-cpp-icmpv6-na 
    Class system-cpp-tcpconnect 
     police cir 640000 bc 4000 
       conform-action transmit 
       exceed-action drop 
    Class class-default

 

Giới hạn của CoPP & Monitor

Chỉ áp dụng với chiều vào CoPP.

Control Panel Traffic chỉ áp dụng được policy khi sử dụng với CoPP,

Monitor

Switch# show policy-map control-plane  
 Control Plane 

  Service-policy input: system-cpp-policy 
    Class-map: system-cpp-bpdu-range (match-all)  
      197924 packets 
      Match: access-group name system-cpp-bpdu-range 
      police: 
          cir 50000 bps, bc 1562 bytes 
        conformed 1508096 bytes; actions: 
          transmit 
        exceeded 0 bytes; actions: 
          drop 
        conformed 0000 bps, exceeded 0000 bps 

    Class-map: system-cpp-tcpconnect (match-all)  
      17751372 packets 
      Match: access-group name system-cpp-tcpconnect 
      police: 
          cir 640000 bps, bc 4000 bytes 
        conformed 359275369 bytes; actions: 
          transmit 
        exceeded 1058649780 bytes; actions: 
          drop 
        conformed 97000 bps, exceeded 76000 bps 
          
    Class-map: class-default (match-any)  
      32371016 packets 
      Match: any

tuantb Administrator
Sorry! The Author has not filled his profile.
×
tuantb Administrator
Sorry! The Author has not filled his profile.

Comment here