Unix類操作系統(tǒng)的TCP/IP堆棧加固之ARP協(xié)議部分
ARP協(xié)議分析
在OSI模型的第2層是數(shù)據(jù)鏈路層,該層提供了網(wǎng)絡(luò)節(jié)點間的數(shù)據(jù)傳輸機(jī)制。該層重要的原因是它負(fù)責(zé)將數(shù)據(jù)分割成幀進(jìn)行傳輸。在數(shù)據(jù)鏈路層上有許多值得我們探討的不安全因素,但是其中最重要的是地址分辨協(xié)議(ARP)。
地址解析協(xié)議ARP正是用來進(jìn)行IP地址到MAC地址的轉(zhuǎn)換的。同時為了避免不必要的ARP報文查詢,每臺主機(jī)的操作系統(tǒng)都維護(hù)著一個ARP高速緩存ARP Cache,記錄著同一鏈路上其它主機(jī)的IP地址到MAC地址的映射關(guān)系。ARP高速緩存通常是動態(tài)的,該緩存可以手工添加靜態(tài)條目,由系統(tǒng)在一定的時間間隔后進(jìn)行刷新。
ARP協(xié)議雖然是一個高效的數(shù)據(jù)鏈路層協(xié)議,但作為一個局域網(wǎng)協(xié)議,它是建立在各主機(jī)之間相互信任的基礎(chǔ)上的,所以ARP協(xié)議存在以下缺陷:ARP高速緩存根據(jù)所接收到的ARP協(xié)議包隨時進(jìn)行動態(tài)更新;ARP協(xié)議沒有連接的概念,任意主機(jī)即使在沒有ARP請求的時候也可以做出應(yīng)答;ARP協(xié)議沒有認(rèn)證機(jī)制,只要接收到的協(xié)議包是有效的,主機(jī)就無條件的根據(jù)協(xié)議包的內(nèi)容刷新本機(jī)ARP緩存,并不檢查該協(xié)議包的合法性。
ARP協(xié)議應(yīng)用
因此攻擊者可以隨時發(fā)送虛假ARP包更新被攻擊主機(jī)上的ARP緩存,進(jìn)行地址欺騙或拒絕服務(wù)攻擊。 調(diào)整ARP清理的時間,通過向IP路由緩沖填充偽造的ARP條目可以讓惡意用戶產(chǎn)生資源耗竭和性能減低攻擊。
- AIX5
- #no -o arpt_killc=20
- FreeBSD 5-7
- #sysctl -w net.link.ether.inet.max_age=1200
- Solaris8-10
- #ndd -set /dev/arp arp_cleanup_interval 60000
- Linux2.4-2.6
- #sysctl -w net.link.ether.inet.max_age=1200
說明:ARP緩存清理時間間隔如果定得太大,對于一個大網(wǎng)來說,有可能不能分配到ip(某些分到ip地址的主機(jī)沒開,也占用地址) ,定得太小,引起大量廣播風(fēng)暴。
ARP協(xié)議的攻擊的內(nèi)容就向大家介紹完了,希望大家已經(jīng)掌握,我們還會在以后的文章中繼續(xù)向大家介紹相關(guān)內(nèi)容的。本文以及以前的相關(guān)文章,主要向大家介紹強化Unix 類家族系統(tǒng)的TCP/IP堆棧的方法。其實非常簡單,通過對命令行配置,就可以保護(hù)或者減緩Unix類服務(wù)器免遭網(wǎng)絡(luò)級別的拒絕服務(wù)攻擊,包括SYN洪水攻擊、ICMP攻擊和SNMP攻擊。
【編輯推薦】