SylixOS ARP攻擊解決辦法

1.ARP攻擊介紹緩存

1.1 ARP協議安全

ARP(地址解析協議)位於數據鏈路層,主要負責將某個IP地址解析成對應的MAC地址。網絡

1.2 ARP原理函數

當局域網中的某臺機器A要向機器B發送報文,會查詢本地的ARP緩存表,找到B的IP地址對應的MAC地址後,就會進行數據傳輸。若是未找到,則A廣播一個ARP請求報文(攜帶機器A的IP地址,物理地址),請求B的IP地址回答對應的MAC地址。局域網全部機器包括B都收到ARP請求,但只有機器B識別本身的IP地址,因而向A主機發回一個ARP響應報文。其中就包含有B的MAC地址,A接收到B的應答後,就會更新本地的ARP緩存,接着使用這個MAC地址發送數據。性能

1.3 ARP欺騙優化

在每臺主機中,都存有一張ARP緩存表。當計算機接收到ARP應答的時候,就會對本地的ARP緩存表進行更新。設計

所以,當局域網中的某臺機器C向A發送一個本身僞造的ARP應答,而若是這個應答是C冒充B僞造的,即IP地址爲B的IP,而MAC地址是僞造的,當A接收到C僞造的ARP應答後,就會更新本地的ARP緩存,這樣在A看來B的IP地址沒有變,而它的MAC地址已經不是原來的MAC。資源

如圖 1.1所示,設備A的本地ARP緩存中B的MAC地址爲2-2-2,設備B的本地ARP緩存中A的MAC地址爲1-1-1,正常通訊。原理

圖 1.1 A,B設備間正常通訊配置

如圖 1.2所示,發生ARP欺騙後,設備A的本地ARP緩存中B的MAC地址爲3-3-3,設備B的本地ARP緩存中A的MAC地址爲3-3-3。設備C(攻擊源)經過構造假的ARP應答報文和轉發數據,可以在不影響設備A和設備B正常通訊的狀況下實現信息截取。

圖 1.2 產生ARP欺騙後A,B設備通訊

1.4 ARP泛洪

在每臺主機中,都存有一張ARP緩存表。ARP緩存表的大小是固定的。

所以,當局域網中的某臺機器C短期內向A發送大量僞造的源IP地址變化的ARP報文,形成機器A的ARP緩存表資源耗盡,合法用戶的ARP報文不能生成有效的ARP表項,致使正常的通訊中斷。

另外,經過向機器A發送大量的ARP報文,會致使CPU負荷太重,影響正常的任務處理。

2.ARP攻擊解決思路

ARP攻擊不只會對機器性能形成影響,還可能形成信息被黑客截取。SylixOS可以防護上述ARP攻擊行爲,爲用戶提供更安全的網絡環境和更穩定的網絡服務。

2.1 ARP泛洪解決思路

針對ARP泛洪攻擊,原理是短期內大量的ARP報文會耗盡ARP緩存表,還會致使CPU負荷太重。

解決思路是對ARP報文進行限速處理,避免CPU資源浪費在處理ARP報文上,保證設備的其餘任務能正常運行。對ARP緩存表進行擴充,減少單條表項生存時間,保證ARP緩存表不會被耗盡。

2.2 ARP欺騙解決思路

針對ARP欺騙攻擊,原理是經過不斷向目標設備發送ARP應答報文,從而實現重定向從一個設備到另外一個設備的數據包的目的。

解決思路是在協議棧添加詢問機制,當ARP緩存表中已存在的IP地址對應的MAC地址發生變化時,會從新發送ARP詢問報文。對IP地址相同,MAC地址不一樣的ARP應答報文,設置限流,超事後採用默認的IP-MAC地址映射(設備第一次記錄的IP對應的MAC地址)。

2.3 設計方案

因爲對ARP攻擊的優化並非必要的,防止CPU沒必要要的資源消耗,方案設計中採用模塊動態加載的方式進行。

設置HOOK函數,直到ARP模塊加載成功後才容許進入。

配置ARP緩存表大小,減少ARP緩存表中每一項的生存時間。

配置ARP限速功能,容許每秒最多處理a(能夠配置)個ARP報文,超過限制後開啓白名單模式,只容許已經在ARP緩存表內的MAC地址對應的ARP報文經過。

對MAC地址相同,IP地址不一樣的ARP攻擊,每秒最多容許b(能夠配置)個該MAC地址的ARP報文經過。

對IP地址相同,MAC地址不一樣的ARP攻擊,每秒最多容許c(能夠配置)個該IP地址的ARP應答報文經過,超事後採用默認的IP-MAC地址映射(設備第一次記錄的IP對應的MAC地址)。

相關文章
相關標籤/搜索