15-攻擊檢測與防範配置
本章節下載: 15-攻擊檢測與防範配置 (404.89 KB)
目 錄
攻擊檢測及防範是一個重要的網絡安全特性,它通過分析經過設備的報文的內容和行為,判斷報文是否具有攻擊特征,並根據配置對具有攻擊特征的報文執行一定的防範措施,例如輸出告警日誌或丟棄報文。
設備能夠檢測單包攻擊、掃描攻擊和泛洪攻擊等多種類型的網絡攻擊,並能對各類型攻擊采取合理的防範措施。
單包攻擊也稱為畸形報文攻擊,主要包括以下三種類型:
· 攻擊者通過向目標係統發送帶有攻擊目的的IP報文,如分片重疊的IP報文、TCP標誌位非法的報文,使得目標係統在處理這樣的IP報文時出錯、崩潰;
· 攻擊者可以通過發送正常的報文,如ICMP報文、特殊類型的IP option報文,來幹擾正常網絡連接或探測網絡結構,給目標係統帶來損失;
· 攻擊者還可通過發送大量無用報文占用網絡帶寬,造成拒絕服務攻擊。
設備可以對表1-1中所列的各單包攻擊行為進行有效防範。
表1-1 單包攻擊類型及說明列表
單包攻擊類型 |
說明 |
ICMP redirect |
攻擊者向用戶發送ICMP重定向報文,更改用戶主機的路由表,幹擾用戶主機正常的IP報文轉發。 |
ICMP unreachable |
某些係統在收到不可達的ICMP報文後,對於後續發往此目的地的報文判斷為不可達並切斷對應的網絡連接。攻擊者通過發送ICMP不可達報文,達到切斷目標主機網絡連接的目的。 |
ICMP type |
ICMP報文中,不同type值表示不同的報文類型,接收者需要根據不同的類型進行響應,攻擊者通過構造特定type類型的ICMP報文來達到影響係統正常處理報文等目的。 |
ICMPv6 type |
ICMPv6報文中,不同type值表示不同的報文類型,接收者需要根據不同的類型進行響應,攻擊者通過構造特定type類型的ICMPv6報文來達到影響係統正常處理報文等目的。 |
Land |
攻擊者向目標主機發送大量源IP地址和目的IP地址都是目標主機自身的TCP SYN報文,使得目標主機的半連接資源耗盡,最終不能正常工作。 |
Large ICMP |
某些主機或設備收到超大的報文,會引起內存分配錯誤而導致協議棧崩潰。攻擊者通過發送超大ICMP報文,讓目標主機崩潰,達到攻擊目的。 |
Large ICMPv6 |
某些主機或設備收到超大的報文,會引起內存分配錯誤而導致協議棧崩潰。攻擊者通過發送超大ICMPv6報文,讓目標主機崩潰,達到攻擊目的。 |
IP option |
攻擊者利用IP報文中的異常選項的設置,達到探測網絡結構的目的,也可由於係統缺乏對錯誤報文的處理而造成係統崩潰。 |
Fragment |
攻擊者通過向目標主機發送分片偏移小於等於5的分片報文,導致主機對分片報文進行重組時發生錯誤而造成係統崩潰。 |
Impossible |
攻擊者通過向目標主機發送源IP地址和目的IP地址相同的報文,造成主機係統處理異常。 |
Tiny fragment |
攻擊者構造一種特殊的IP分片來進行微小分片的攻擊,這種報文首片很小,未能包含完整的傳輸層信息,因此能夠繞過某些包過濾防火牆的過濾規則,達到攻擊目標網絡的目的。 |
Smurf |
攻擊者向目標網絡發送ICMP應答請求,該請求包的目的地址設置為目標網絡的廣播地址,這樣該網絡中的所有主機都會對此ICMP應答請求作出答複,導致網絡阻塞,從而達到令目標網絡中主機拒絕服務的攻擊目的。 |
TCP Flag |
不同操作係統對於非常規的TCP標誌位有不同的處理。攻擊者通過發送帶有非常規TCP標誌的報文探測目標主機的操作係統類型,若操作係統對這類報文處理不當,攻擊者便可達到使目標主機係統崩潰的目的。 |
Traceroute |
攻擊者連續發送TTL從1開始遞增的目的端口號較大的UDP報文,報文每經過一個路由器,其TTL都會減1,當報文的TTL為0時,路由器會給報文的源IP設備發送一個TTL超時的ICMP報文,攻擊者借此來探測網絡的拓撲結構。 |
Winnuke |
攻擊者向安裝(或使用)Windows係統的特定目標的NetBIOS端口(139)發送OOB(Out-Of-Band,帶外)數據包,這些攻擊報文的指針字段與實際的位置不符,從而引起一個NetBIOS片斷重疊,致使已與其他主機建立連接的目標主機在處理這些數據的時候係統崩潰。 |
UDP Bomb |
攻擊者發送畸形的UDP報文,其IP首部中的報文總長度大於IP首部長度與UDP首部中標識的UDP報文長度之和,可能造成收到此報文的係統處理數據時越界訪問非法內存,導致係統異常。 |
UDP Snork |
攻擊者向Windows係統發送目的端口為135(Windows定位服務)源端口為135、7或19(UDP Chargen服務)的報文,使被攻擊係統不斷應答報文,最終耗盡CPU資源。 |
UDP Fraggle |
攻擊者通過向目標網絡發送源UDP端口為7且目的UDP端口為19的Chargen報文,令網絡產生大量無用的應答報文,占滿網絡帶寬,達到攻擊目的。 |
Teardrop |
攻擊者通過發送大量分片重疊的報文,致使服務器對這些報文進行重組時造成重疊,因而丟失有效的數據。 |
Ping of death |
攻擊者構造標誌位為最後一片且長度大於65535的ICMP報文發送給目標主機,可能導致係統處理數據時越界訪問非法內存,造成係統錯誤甚至係統崩潰。 |
IPv6 ext-header |
攻擊者可以通過構造包含異常數量IPv6擴展頭的報文對目標主機進行攻擊,目標主機在解析報文時耗費大量資源,從而影響轉發性能。 |
掃描攻擊是指,攻擊者運用掃描工具對網絡進行主機地址或端口的掃描,通過準確定位潛在目標的位置,探測目標係統的網絡拓撲結構和開放的服務端口,為進一步侵入目標係統做準備。
攻擊者發送大量目的IP地址變化的探測報文,通過收到的回應報文來確定活躍的目標主機,以便針對這些主機進行下一步的攻擊。
攻擊者獲取了活動目標主機的IP地址後,向目標主機發送大量目的端口變化的探測報文,通過收到的回應報文來確定目標主機開放的服務端口,然後針對活動目標主機開放的服務端口選擇合適的攻擊方式或攻擊工具進行進一步的攻擊。
攻擊者控製多台主機,分別向特定目標主機發送探測報文,通過收集所有被控製的主機的回應報文,確定目標主機開啟的服務端口,以便進一步實施攻擊。
泛洪攻擊是指攻擊者在短時間內向目標係統發送大量的虛假請求,導致目標係統疲於應付無用信息,從而無法為合法用戶提供正常服務,即發生拒絕服務。
設備支持對以下幾種泛洪攻擊進行有效防範:
根據TCP協議工作原理,服務器收到SYN報文後需要建立半連接並回應SYN ACK報文,然後等待客戶端的ACK報文來建立正式連接。由於資源的限製,操作係統的TCP/IP協議棧隻能允許有限個TCP連接。攻擊者向服務器發送大量偽造源地址的SYN報文後,由於攻擊報文是偽造的,服務器不會收到客戶端的ACK報文,從而導致服務器上遺留了大量無效的半連接,耗盡其係統資源,使正常的用戶無法訪問,直到半連接超時。
ACK報文為隻有ACK標誌位置位的TCP報文,服務器收到ACK報文時,需要查找對應的連接。若攻擊者發送大量這樣的報文,服務器需要進行大量的查詢工作,消耗正常處理的係統資源,影響正常的報文處理。
由於SYN ACK報文為SYN報文的後續報文,服務器收到SYN ACK報文時,需要查找對應的SYN報文。若攻擊者發送大量這樣的報文,服務器需要進行大量的查詢工作,消耗正常處理的係統資源,影響正常的報文處理。
FIN報文用於關閉TCP連接。若攻擊者向服務器發送大量的偽造的FIN報文,可能會使服務器關閉掉正常的連接。同時,服務器收到FIN報文時,需要查找對應的連接,大量的無效查詢操作會消耗係統資源,影響正常的報文處理。
RST報文為TCP連接的複位報文,用於在異常情況下關閉TCP連接。如果攻擊者向服務器發送大量偽造的RST報文,可能會使服務器關閉正常的TCP連接。另外,服務器收到RST報文時,需要查找對應的連接,大量的無效查詢操作會消耗係統資源,影響正常的報文處理。
DNS服務器收到任何DNS Query報文時都會試圖進行域名解析並且回複該DNS報文。攻擊者通過構造並向DNS服務器發送大量虛假DNS Query報文,占用DNS服務器的帶寬或計算資源,使得正常的DNS Query得不到處理。
HTTP服務器收到HTTP GET/POST命令時可能進行一係列複雜的操作,包括字符串搜索、數據庫遍曆、數據組裝、格式化轉換等等,這些操作會消耗大量係統資源,因此當HTTP請求的速率超過了服務器的處理能力時,服務器就無法正常提供服務。攻擊者通過構造並發送大量虛假HTTP GET/POST請求,使服務器崩潰,無法響應正常的用戶請求。
ICMP flood攻擊是指,攻擊者在短時間內向特定目標發送大量的ICMP請求報文(例如ping報文),使其忙於回複這些請求,致使目標係統負擔過重而不能處理正常的業務。
ICMPv6 flood攻擊是指,攻擊者在短時間內向特定目標發送大量的ICMPv6請求報文(例如ping報文),使其忙於回複這些請求,致使目標係統負擔過重而不能處理正常的業務。
UDP flood攻擊是指,攻擊者在短時間內向特定目標發送大量的UDP報文,占用目標主機的帶寬,致使目標主機不能處理正常的業務。
設備的包過濾功能一般是通過判斷TCP首個分片中的五元組(源IP地址、源端口號、目的IP地址、目的端口號、傳輸層協議號)信息來決定後續TCP分片是否允許通過。RFC 1858對TCP分片報文進行了規定,認為TCP分片報文中,首片報文中TCP報文長度小於20字節,或後續分片報文中分片偏移量等於8字節的報文為TCP分片攻擊報文。這類報文可以成功繞過上述包過濾功能,對設備造成攻擊。
為防範這類攻擊,可以在設備上配置TCP分片攻擊防範功能,對TCP分片攻擊報文進行丟棄。
DoS(Denial of Service,拒絕服務)攻擊的目的是使被攻擊對象無法提供正常的網絡服務。Login用戶DoS攻擊是指,攻擊者通過偽造登錄賬戶在短時間內向設備連續發起大量登錄請求,占用係統認證處理資源,造成設備無法處理正常Login用戶的登錄請求。
為防範這類攻擊,可以在設備上配置Login用戶攻擊防範功能,對發起惡意認證並多次嚐試失敗的用戶報文進行丟棄。
字典序攻擊是指攻擊者通過收集用戶密碼可能包含的字符,使用各種密碼組合逐一嚐試登錄設備,以達到猜測合法用戶密碼的目的。
為防範這類攻擊,可以在設備上配置Login用戶延時認證功能,在用戶認證失敗之後,延時期間不接受此用戶的登錄請求。
攻擊檢測與防範配置任務如下:
(1) 配置並應用攻擊防範策略
b. 配置攻擊防範策略
各類型的攻擊防範功能之間沒有先後順序,可根據實際組網需求,配置其中的一種或多種:
c. (可選)配置攻擊防範例外列表
d. 應用攻擊防範策略
請至少選擇其中一項進行配置:
(2) (可選)配置單包攻擊防範日誌的非聚合輸出功能
(3) (可選)配置TCP分片攻擊防範(通常單獨使用)
(4) (可選)配置Login用戶延時認證功能
攻擊防範策略主要包括針對攻擊類型指定的檢測條件及采取的防範措施。
在配置攻擊防範之前,必須首先創建一個攻擊防範策略,並進入該攻擊防範策略視圖。在該視圖下,可以定義一個或多個用於檢測攻擊的特征項,以及對檢測到的攻擊報文所采取的防範措施。
攻擊防範的缺省觸發閾值對於現網環境而言可能過小,這會導致用戶上網慢或者網頁打不開等情況,請根據實際網絡環境配置合理的觸發閾值。
(1) 進入係統視圖。
system-view
(2) 創建一個攻擊防範策略,並進入攻擊防範策略視圖。
attack-defense policy policy-name
單包攻擊防範主要通過分析經過設備的報文特征來判斷報文是否具有攻擊性,一般應用在設備連接外部網絡的接口上,且僅對應用了攻擊防範策略的接口上的入方向報文有效。若設備檢測到某報文具有攻擊性,則默認會輸出告警日誌,另外還可以根據配置將檢測到的攻擊報文做丟棄處理。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 開啟指定類型單包攻擊報文的特征檢測,並設置攻擊防範的處理行為。請至少選擇其中一項進行配置。
¡ 開啟指定類型的知名單包攻擊報文的特征檢測,並設置攻擊防範的處理行為。
signature detect { fraggle | fragment | impossible | land | large-icmp | large-icmpv6 | smurf | snork | tcp-all-flags | tcp-fin-only | tcp-invalid-flags | tcp-null-flag | tcp-syn-fin | tiny-fragment | traceroute | udp-bomb | winnuke } [ action { { drop | logging } * | none } ]
signature detect { ip-option-abnormal | ping-of-death | teardrop } action { drop | logging } *
¡ 開啟ICMP類型的單包攻擊報文的特征檢測,並設置攻擊防範的處理行為。
signature detect icmp-type { icmp-type-value | address-mask-reply | address-mask-request | destination-unreachable | echo-reply | echo-request | information-reply | information-request | parameter-problem | redirect | source-quench | time-exceeded | timestamp-reply | timestamp-request } [ action { { drop | logging } * | none } ]
¡ 開啟ICMPv6類型的單包攻擊報文的特征檢測,並設置攻擊防範的處理行為。
signature detect icmpv6-type { icmpv6-type-value | destination-unreachable | echo-reply | echo-request | group-query | group-reduction | group-report | packet-too-big | parameter-problem | time-exceeded } [ action { { drop | logging } * | none } ]
¡ 開啟IP選項類型的單包攻擊報文的特征檢測,並設置攻擊防範的處理行為。
signature detect ip-option { option-code | internet-timestamp | loose-source-routing | record-route | route-alert | security | stream-id | strict-source-routing } [ action { { drop | logging } * | none } ]
¡ 開啟IP擴展頭類型的單包攻擊報文的特征檢測,並設置攻擊防範的處理行為。
signature detect ipv6-ext-header ext-header-value [ action { { drop | logging } * | none } ]
缺省情況下,所有類型的單包攻擊的特征檢測均處於關閉狀態。
(4) (可選)配置啟動Large ICMP攻擊防範的ICMP報文長度的最大值。
signature { large-icmp | large-icmpv6 } max-length length
缺省情況下,ICMP報文和ICMPv6報文長度的最大值均為4000字節。
(5) (可選)配置對不同級別的單包攻擊報文的處理方式。
signature level { high | info | low | medium } action { { drop | logging } * | none }
缺省情況下,對info和low級別的單包攻擊的處理行為是發送日誌;對medium和high級別的單包攻擊的處理行為是發送日誌並丟包。
(6) (可選)開啟指定級別單包攻擊報文的特征檢測。
signature level { high | info | low | medium } detect
缺省情況下,未開啟任何級別的單包攻擊報文的特征檢測。
掃描攻擊防範主要通過監測網絡使用者向目標係統發起連接的速率來檢測其探測行為,一般應用在設備連接外部網絡的接口上,且僅對應用了攻擊防範策略的接口上的入方向報文有效。若設備監測到某IP地址主動發起的連接速率達到或超過了一定閾值,則可以根據配置輸出告警日誌或者丟棄來自該IP地址的後續報文。
若配置掃描攻擊的處理行為為輸出告警日誌,且端口掃描和地址掃描同時達到掃描閾值,則僅輸出地址掃描的告警日誌。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 開啟指定級別的掃描攻擊防範。
scan detect level { { high | low | medium } | user-defined { port-scan-threshold threshold-value | ip-sweep-threshold threshold-value } * [ period period-value ] } action { drop | logging } *
缺省情況下,掃描攻擊防範處於關閉狀態。
泛洪攻擊防範主要用於保護服務器,通過監測向服務器發起連接請求的速率來檢測各類泛洪攻擊,一般應用在設備連接外部網絡的接口上,且僅對應用了攻擊防範策略的接口上的入方向報文有效。在接口上應用了泛洪攻擊防範策略後,接口處於攻擊檢測狀態,當它監測到向某服務器發送報文的速率持續達到或超過了指定的觸發閾值時,即認為該服務器受到了攻擊,則進入攻擊防範狀態,並根據配置啟動相應的防範措施(輸出告警日誌或者對後續新建連接的報文進行丟棄處理)。此後,當設備檢測到向該服務器發送報文的速率低於恢複閾值(觸發閾值的3/4)時,即認為攻擊結束,則由攻擊防範狀態恢複為攻擊檢測狀態,並停止執行防範措施。
當設備上安裝了多塊業務板時,每種泛洪攻擊防範策略中配置的全局觸發閾值為每塊業務板上的全局觸發閾值,因而整機的該類泛洪攻擊的全局觸發閾值即為每塊業務板上的全局觸發閾值與業務板數目的乘積。
為保護指定IP地址,攻擊防範策略中支持基於IP地址的攻擊防範配置。對於所有非受保護IP地址,可以統一開啟攻擊防範檢測,並采用全局的參數設置來進行保護。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IP地址開啟SYN flood攻擊防範檢測。
syn-flood detect non-specific
缺省情況下,未對任何非受保護IP地址開啟SYN flood攻擊防範檢測。
(4) 配置SYN flood攻擊防範的全局觸發閾值。
syn-flood threshold threshold-value
缺省情況下,SYN flood攻擊防範的全局觸發閾值為1000。
(5) 配置SYN flood攻擊防範的全局處理行為。
syn-flood action { drop | logging } *
缺省情況下,不對檢測到的SYN flood攻擊采取任何措施。
(6) 開啟對IP地址的SYN flood攻擊防範檢測,並配置觸發閾值和處理行為。
syn-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IP地址配置SYN flood攻擊防範檢測。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IP地址開啟ACK flood攻擊防範檢測。
ack-flood detect non-specific
缺省情況下,未對任何非受保護IP地址開啟ACK flood攻擊防範檢測。
(4) 配置ACK flood攻擊防範全局觸發閾值。
ack-flood threshold threshold-value
缺省情況下,ACK flood攻擊防範的全局觸發閾值為1000。
(5) 配置ACK flood攻擊防範的全局處理行為。
ack-flood action { drop | logging } *
缺省情況下,不對檢測到的ACK flood攻擊采取任何措施。
(6) 開啟對IP地址的ACK flood攻擊防範檢測,並配置觸發閾值和處理行為。
ack-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IP地址配置ACK flood攻擊防範檢測。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IP地址開啟SYN-ACK flood攻擊防範檢測。
syn-ack-flood detect non-specific
缺省情況下,未對任何非受保護IP地址開啟SYN-ACK flood攻擊防範檢測。
(4) 配置SYN-ACK flood攻擊防範的全局觸發閾值。
syn-ack-flood threshold threshold-value
缺省情況下,SYN-ACK flood攻擊防範的全局觸發閾值為1000。
(5) 配置SYN-ACK flood攻擊防範的全局處理行為。
syn-ack-flood action { drop | logging }*
缺省情況下,不對檢測到的SYN-ACK flood攻擊采取任何措施。
(6) 開啟對IP地址的SYN-ACK flood攻擊防範檢測,並配置觸發閾值和處理行為。
syn-ack-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IP地址配置SYN-ACK flood攻擊防範檢測。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IP地址開啟FIN flood攻擊防範檢測。
fin-flood detect non-specific
缺省情況下,未對任何非受保護IP地址開啟FIN flood攻擊防範檢測。
(4) 配置FIN flood攻擊防範的全局觸發閾值。
fin-flood threshold threshold-value
缺省情況下,FIN flood攻擊防範的全局觸發閾值為1000。
(5) 配置FIN flood攻擊防範的全局處理行為。
fin-flood action { drop | logging } *
缺省情況下,不對檢測到的FIN flood攻擊采取任何措施。
(6) 開啟對IP地址的FIN flood攻擊防範檢測,並配置觸發閾值和處理行為。
fin-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IP地址配置FIN flood攻擊防範檢測。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IP地址開啟RST flood攻擊防範檢測。
rst-flood detect non-specific
缺省情況下,未對任何非受保護IP地址開啟RST flood攻擊防範檢測。
(4) 配置RST flood攻擊防範的全局觸發閾值。
rst-flood threshold threshold-value
缺省情況下,RST flood攻擊防範的全局觸發閾值為1000。
(5) 配置全局的RST flood攻擊防範的全局處理行為。
rst-flood action { drop | logging } *
缺省情況下,不對檢測到的RST flood攻擊采取任何措施。
(6) 開啟對IP地址的RST flood攻擊防範檢測,並配置觸發閾值和處理行為。
rst-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IP地址配置RST flood攻擊防範檢測。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IPv4地址開啟ICMP flood攻擊防範檢測。
icmp-flood detect non-specific
缺省情況下,未對任何非受保護IPv4地址開啟ICMP flood攻擊防範檢測。
(4) 配置ICMP flood攻擊防範的全局觸發閾值。
icmp-flood threshold threshold-value
缺省情況下,ICMP flood攻擊防範的全局觸發閾值為1000。
(5) 配置ICMP flood攻擊防範的全局處理動作。
icmp-flood action { drop | logging } *
缺省情況下,不對檢測到的ICMP flood攻擊采取任何措施。
(6) 開啟對IPv4地址的ICMP flood攻擊防範檢測,並配置觸發閾值和處理行為。
icmp-flood detect ip ip-address [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IPv4地址配置ICMP flood 攻擊防範觸發閾值。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IPv6地址開啟ICMPv6 flood攻擊防範檢測。
icmpv6-flood detect non-specific
缺省情況下,未對任何非受保護IPv6地址開啟ICMPv6 flood攻擊防範檢測。
(4) 配置ICMPv6 flood攻擊防範的全局觸發閾值。
icmpv6-flood threshold threshold-value
缺省情況下,ICMPv6 flood攻擊防範的全局觸發閾值為1000。
(5) 配置ICMPv6 flood攻擊防範的全局處理行為。
icmpv6-flood action { drop | logging } *
缺省情況下,不對檢測到的ICMPv6 flood攻擊采取任何防範措施。
(6) 開啟對IPv6地址的ICMPv6 flood攻擊防範檢測,並配置觸發閾值和處理行為。
icmpv6-flood detect ipv6 ipv6-address [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IPv6地址配置ICMPv6 flood攻擊防範檢測。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IP地址開啟UDP flood攻擊防範檢測。
udp-flood detect non-specific
缺省情況下,未對任何非受保護IP地址開啟UDP flood攻擊防範檢測。
(4) 配置UDP flood攻擊防範的全局觸發閾值。
udp-flood threshold threshold-value
缺省情況下,UDP flood攻擊防範的全局觸發閾值為1000。
(5) 配置UDP flood攻擊防範檢測的全局處理行為。
udp-flood action { drop | logging } *
缺省情況下,不對檢測到的UDP flood攻擊進行任何處理。
(6) 開啟對IP地址的UDP flood攻擊防範檢測,並配置觸發閾值和處理行為。
udp-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IP地址配置UDP flood攻擊防範檢測。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IP地址開啟DNS flood攻擊防範檢測。
dns-flood detect non-specific
缺省情況下,未對任何非受保護IP地址開啟DNS flood攻擊防範檢測。
(4) 配置DNS flood攻擊防範的全局觸發閾值。
dns-flood threshold threshold-value
缺省情況下,DNS flood攻擊防範的全局觸發閾值為1000。
(5) (可選)配置DNS flood攻擊防範的全局檢測端口號。
dns-flood port port-list
缺省情況下,DNS flood攻擊防範的全局檢測端口號為53。
(6) 配置對DNS flood攻擊防範的全局處理行為。
dns-flood action { drop | logging } *
缺省情況下,不對檢測到的DNS flood攻擊采取任何措施。
(7) 開啟對IP地址的DNS flood攻擊防範檢測,並配置觸發閾值和處理行為。
dns-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ port port-list ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IP地址配置DNS flood攻擊防範檢測。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 對所有非受保護IP地址開啟HTTP flood攻擊防範檢測。
http-flood detect non-specific
缺省情況下,未對任何非受保護IP地址開啟HTTP flood攻擊防範檢測。
(4) 配置HTTP flood攻擊防範的全局觸發閾值。
http-flood threshold threshold-value
缺省情況下,HTTP flood攻擊防範的全局觸發閾值為1000。
(5) (可選)配置HTTP flood攻擊防範的全局檢測端口號。
http-flood port port-list
缺省情況下,HTTP flood攻擊防範的全局檢測端口號為80。
(6) 配置對HTTP flood攻擊防範的全局處理行為。
http-flood action { drop | logging } *
缺省情況下,不對檢測到的HTTP flood攻擊采取任何措施。
(7) 開啟對IP地址的HTTP flood攻擊防範檢測,並配置觸發閾值和處理行為。
http-flood detect { ip ipv4-address | ipv6 ipv6-address } [ vpn-instance vpn-instance-name ] [ port port-list ] [ threshold threshold-value ] [ action { { drop | logging } * | none } ]
缺省情況下,未對任何指定IP地址配置HTTP flood攻擊防範檢測。
攻擊防範例外列表用於過濾不需要進行攻擊防範檢測的主機報文,與指定的ACL permit規則匹配的報文將不會受到任何類型的攻擊防範檢測。該配置用於過濾某些被信任的安全主機發送的報文,可以有效的減小誤報率,並提高服務器處理效率。例如:攻擊防範功能可能將源IP地址相同,目的地址不同的組播報文(如OSPF、PIM等協議報文)檢測為掃描攻擊,此時可以通過配置例外列表放行組播報文來消除誤報。
例外列表引用的ACL的permit規則中僅源地址、目的地址、源端口、目的端口、協議號、L3VPN和非首片分片標記參數用於匹配報文。
(1) 進入係統視圖。
system-view
(2) 進入攻擊防範策略視圖。
attack-defense policy policy-name
(3) 配置攻擊防範例外列表。
exempt acl [ ipv6 ] { acl-number | name acl-name }
缺省情況下,未配置攻擊防範例外列表。
(1) 進入係統視圖。
system-view
(2) 進入接口視圖。
interface interface-type interface-number
(3) 配置在接口上應用攻擊防範策略。
attack-defense apply policy policy-name
缺省情況下,接口上未應用任何攻擊防範策略。
(4) 指定處理當前接口流量的業務處理板
service slot slot-number
缺省情況下,未指定處理當前接口流量的業務處理板,流量處理在接收報文的業務處理板上進行。
當在全局接口(例如冗餘接口、聚合接口等)上應用攻擊防範策略時,為保證掃描攻擊防範策略與泛洪攻擊防範策略能夠正確檢測並防禦攻擊,需要配置在指定slot上處理當前接口的流量
通過在本機應用攻擊防範策略,使已配置的攻擊防範策略對目的地址為本機的報文生效。
可以通過在本機上應用攻擊防範策略提高對目的地址為本機的攻擊報文的處理效率。
當接口和本機均應用了攻擊防範策略時,先進行接口上攻擊防範策略的檢測,若報文未被丟棄,則還會進行本機上攻擊防範策略的檢測。
(1) 進入係統視圖。
system-view
(2) 配置在本機應用攻擊防範策略。
attack-defense local apply policy policy-name
缺省情況下,本機未應用任何攻擊防範策略。
對日誌進行聚合輸出是指,在一定時間內,對在本機或同一個接口上檢測到的相同攻擊類型、相同攻擊防範動作、相同的源/目的地址以及屬於相同VPN的單包攻擊的所有日誌聚合成一條日誌輸出。
通常不建議開啟單包攻擊防範的日誌非聚合輸出功能,因為在單包攻擊較為頻繁的情況下,它會導致大量日誌信息輸出,占用控製台的顯示資源。
(1) 進入係統視圖。
system-view
(2) 開啟對單包攻擊防範日誌的非聚合輸出功能。
attack-defense signature log non-aggregate
缺省情況下,單包攻擊防範的日誌信息經係統聚合後再輸出。
設備上開啟TCP分片攻擊防範功能後,能夠對收到的TCP分片報文的長度以及分片偏移量進行合法性檢測,並丟棄非法的TCP分片報文。
如果設備上開啟了TCP分片攻擊防範功能,並應用了單包攻擊防範策略,則TCP分片攻擊防範功能會先於單包攻擊防範策略檢測並處理入方向的TCP報文。
(1) 進入係統視圖。
system-view
(2) 開啟TCP分片攻擊防範功能。
attack-defense tcp fragment enable
缺省情況下,TCP分片攻擊防範功能處於開啟狀態。
Login用戶登錄失敗後,若設備上配置了重新進行認證的等待時長,則係統將會延遲一定的時長之後再允許用戶進行認證,可以有效地避免設備受到Login用戶字典序攻擊。
(1) 進入係統視圖。
system-view
(2) 配置Login用戶登錄失敗後重新進行認證的等待時長。
attack-defense login reauthentication-delay seconds
缺省情況下,Login用戶登錄失敗後重新進行認證不需要等待。
可在任意視圖下執行以下命令,顯示攻擊防範策略的配置信息。
display attack-defense policy [ policy-name ]
可在任意視圖下執行以下命令,顯示flood攻擊防範的IPv4類型的受保護IP表項。
display attack-defense policy policy-name { ack-flood | dns-flood | fin-flood | flood | http-flood | icmp-flood | rst-flood | syn-ack-flood | syn-flood | udp-flood } ip [ ip-address [ vpn vpn-instance-name ] ] [ slot slot-number ] [ count ]
可在任意視圖下執行以下命令,顯示flood攻擊防範的IPv6類型的受保護IP表項。
display attack-defense policy policy-name { ack-flood | dns-flood | fin-flood | flood | http-flood | icmpv6-flood | rst-flood | syn-ack-flood | syn-flood | udp-flood } ipv6 [ ipv6-address [ vpn vpn-instance-name ] ] [ slot slot-number ] ] [ count ]
可在任意視圖下執行以下命令,顯示掃描攻擊者的IPv4地址表項。
display attack-defense scan attacker ip [ [ interface interface-type interface-number | local ] [ slot slot-number ] ] [ count ]
可在任意視圖下執行以下命令,顯示掃描攻擊者的IPv6地址表項。
display attack-defense scan attacker ipv6 [ [ interface interface-type interface-number | local ] [ slot slot-number ] ] [ count ]
可在任意視圖下執行以下命令,顯示IPv4 flood攻擊防範統計信息。
display attack-defense { ack-flood | dns-flood | fin-flood | flood | http-flood | icmp-flood | rst-flood | syn-ack-flood | syn-flood | udp-flood } statistics ip [ ip-address [ vpn vpn-instance-name ] ] [ [ interface interface-type interface-number | local ] [ slot slot-number ] ] [ count ]
可在任意視圖下執行以下命令,顯示IPv6 flood攻擊防範統計信息。
display attack-defense { ack-flood | dns-flood | fin-flood | flood | http-flood | icmpv6-flood | rst-flood | syn-flood | syn-ack-flood | udp-flood } statistics ipv6 [ ipv6-address [ vpn vpn-instance-name ] ] [ [ interface interface-type interface-number | local ] [ slot slot-number ] ] [ count ]
請在用戶視圖下執行以下命令,清除flood攻擊防範受保護IP表項的統計信息。
reset attack-defense policy policy-name flood protected { ip | ipv6 } statistics
可在任意視圖下執行以下命令,顯示接口上的攻擊防範統計信息。
display attack-defense statistics interface interface-type interface-number [ slot slot-number ]
請在用戶視圖下執行以下命令,清除接口上的攻擊防範統計信息。
reset attack-defense statistics interface interface-type interface-number
可在任意視圖下執行以下命令,顯示本機攻擊防範統計信息。
display attack-defense statistics local [ slot slot-number ]
請在用戶視圖下執行以下命令,清除本機攻擊防範的統計信息。
reset attack-defense statistics local
Router上的接口GigabitEthernet0/0/1與內部網絡連接,接口GigabitEthernet0/0/2與外部網絡連接,接口GigabitEthernet0/0/3與一台內部服務器連接。現有如下安全需求:
· 為防範外部網絡對內部網絡主機的Smurf攻擊和掃描攻擊,需要在接口GigabitEthernet0/0/2上開啟Smurf攻擊防範和掃描攻擊防範。具體要求為:低防範級別的掃描攻擊防範;丟棄攻擊者發送的報文;檢測到Smurf攻擊或掃描攻擊後,輸出告警日誌。
· 為防範外部網絡對內部服務器的SYN flood攻擊,需要在接口GigabitEthernet0/0/2上開啟SYN flood攻擊防範。具體要求為:當設備監測到向內部服務器每秒發送的SYN報文數持續達到或超過5000時,輸出告警日誌並丟棄攻擊報文。
# 配置各接口的IP地址,略。
# 創建攻擊防範策略a1。
<Router> system-view
[Router] attack-defense policy a1
# 開啟Smurf單包攻擊報文的特征檢測,配置處理行為為輸出告警日誌。
[Router-attack-defense-policy-a1] signature detect smurf action logging
# 開啟低防範級別的掃描攻擊防範,配置處理行為輸出告警日誌並丟棄攻擊報文。
[Router-attack-defense-policy-a1] scan detect level low action logging drop
# 為保護IP地址為10.1.1.2的內部服務器,配置針對IP地址10.1.1.2的SYN flood攻擊防範參數,觸發閾值為5000,處理行為輸出告警日誌並丟棄攻擊報文。
[Router-attack-defense-policy-a1] syn-flood detect ip 10.1.1.2 threshold 5000 action logging drop
[Router-attack-defense-policy-a1] quit
# 在接口GigabitEthernet0/0/2上應用攻擊防範策略a1。
[Router] interface gigabitethernet 0/0/2
[Router-GigabitEthernet0/0/2] attack-defense apply policy a1
[Router-GigabitEthernet0/0/2] quit
完成以上配置後,可以通過display attack-defense policy命令查看配置的攻擊防範策略a1具體內容。
# 查看攻擊防範策略a1的配置信息。
[Router] display attack-defense policy a1
Attack-defense Policy Information
--------------------------------------------------------------------------
Policy name : a1
Applied list : GE0/0/2
--------------------------------------------------------------------------
Exempt IPv4 ACL : Not configured
Exempt IPv6 ACL : Not configured
--------------------------------------------------------------------------
Actions: CV-Client verify BS-Block source L-Logging D-Drop N-None
Signature attack defense configuration:
Signature name Defense Level Actions
Fragment Disabled low L
Impossible Disabled medium L,D
Teardrop Disabled medium L,D
Tiny fragment Disabled low L
IP option abnormal Disabled medium L,D
Smurf Enabled medium L
Traceroute Disabled low L
Ping of death Disabled medium L,D
Large ICMP Disabled info L
Max length 4000 bytes
Large ICMPv6 Disabled info L
Max length 4000 bytes
TCP invalid flags Disabled medium L,D
TCP null flag Disabled medium L,D
TCP all flags Disabled medium L,D
TCP SYN-FIN flags Disabled medium L,D
TCP FIN only flag Disabled medium L,D
TCP Land Disabled medium L,D
Winnuke Disabled medium L,D
UDP Bomb Disabled medium L,D
UDP Snork Disabled medium L,D
UDP Fraggle Disabled medium L,D
IP option record route Disabled info L
IP option internet timestamp Disabled info L
IP option security Disabled info L
IP option loose source routing Disabled info L
IP option stream ID Disabled info L
IP option strict source routing Disabled info L
IP option route alert Disabled info L
ICMP echo request Disabled info L
ICMP echo reply Disabled info L
ICMP source quench Disabled info L
ICMP destination unreachable Disabled info L
ICMP redirect Disabled info L
ICMP time exceeded Disabled info L
ICMP parameter problem Disabled info L
ICMP timestamp request Disabled info L
ICMP timestamp reply Disabled info L
ICMP information request Disabled info L
ICMP information reply Disabled info L
ICMP address mask request Disabled info L
ICMP address mask reply Disabled info L
ICMPv6 echo request Disabled info L
ICMPv6 echo reply Disabled info L
ICMPv6 group membership query Disabled info L
ICMPv6 group membership report Disabled info L
ICMPv6 group membership reduction Disabled info L
ICMPv6 destination unreachable Disabled info L
ICMPv6 time exceeded Disabled info L
ICMPv6 parameter problem Disabled info L
ICMPv6 packet too big Disabled info L
Scan attack defense configuration:
Defense : Enabled
Level : low
Actions : L,D
Flood attack defense configuration:
Flood type Global thres(pps) Global actions Service ports Non-specific
SYN flood 1000(default) - - Disabled
ACK flood 1000(default) - - Disabled
SYN-ACK flood 1000(default) - - Disabled
RST flood 1000(default) - - Disabled
FIN flood 1000(default) - - Disabled
UDP flood 1000(default) - - Disabled
ICMP flood 1000(default) - - Disabled
ICMPv6 flood 1000(default) - - Disabled
DNS flood 1000(default) - 53 Disabled
HTTP flood 1000(default) - 80 Disabled
Flood attack defense for protected IP addresses:
Address VPN instance Flood type Thres(pps) Actions Ports
10.1.1.2 -- SYN-FLOOD 5000 L,D -
之後,可以通過display attack-defense statistics interface命令查看接口GigabitEthernet0/0/2上攻擊防範的統計信息。
# 查看接口GigabitEthernet0/0/2上攻擊防範的統計信息。
[Router] display attack-defense statistics interface gigabitethernet 0/0/2
Attack policy name: a1
Scan attack defense statistics:
AttackType AttackTimes Dropped
Port scan 2 0
IP sweep 3 0
Distribute port scan 1 0
Flood attack defense statistics:
AttackType AttackTimes Dropped
SYN flood 1 5000
Signature attack defense statistics:
AttackType AttackTimes Dropped
Smurf 1 0
不同款型規格的資料略有差異, 詳細信息請向具體銷售和400谘詢。H3C保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!