解析思科路由器性能的奧秘
本文主要針對常用到的思科路由器進(jìn)行了詳細(xì)的介紹,那么我們在使用思科路由器時應(yīng)該對哪些性能進(jìn)行重點觀測呢?此文將給予你詳細(xì)的介紹。
我們可以通過將很多DoS攻擊流中的數(shù)據(jù)包與Cisco IOS軟件的訪問控制列表條目進(jìn)行匹配,以隔離這些數(shù)據(jù)包。顯而易見,這對過濾攻擊非常有價值,并且能夠幫助我們識別未知攻擊,跟蹤“欺騙”數(shù)據(jù)包流的真正來源。
某些時候,我們可將思科路由器的一些功能(如debug日志和IP記數(shù))用于類似用途,尤其在遭遇新攻擊或者非常規(guī)攻擊的情況下。然而,隨著Cisco IOS軟件的最新版本的發(fā)布,訪問控制列表和訪問控制列表日志已經(jīng)成為識別和追蹤常見攻擊的重要功能。
最常見的DoS攻擊我們可能受到多種類型的DOS攻擊。既使我們忽略那些利用軟件錯誤使用較小的數(shù)據(jù)流量來關(guān)閉系統(tǒng)的攻擊,事實上仍然是任何通過網(wǎng)絡(luò)傳送的IP數(shù)據(jù)包都可以用來實施泛洪DoS攻擊。遭受攻擊時,您必須時刻考慮到這種攻擊可能是一種非常規(guī)的攻擊。
雖然我們提出上述告警,然而您還應(yīng)該記住一點:很多攻擊是相似的。攻擊者會選擇利用常見的攻擊方法,原因在于這些方法特別有效,并且難以跟蹤,或者因為可用工具較多。很多DoS攻擊者缺乏創(chuàng)建自己的工具的技術(shù)或動力,而會使用在互聯(lián)網(wǎng)上找到的程序;這些工具通常已經(jīng)過期了或不流行了。
另外一種類似的攻擊稱為“fraggle”,它通過相同的方法來利用定向廣播,但它采用的是UDP回應(yīng)請求,來代替ICMP回應(yīng)請求。Fraggle的擴散系數(shù)通常低于smurf,也沒有smurf常用。Smurf攻擊通常會被察覺,因為網(wǎng)絡(luò)鏈路將會超載。
SYN泛洪是另外一種常見攻擊,該攻擊使用TCP連接請求來泛洪目標(biāo)機器。連接請求數(shù)據(jù)包的源地址和源TCP端口被打亂,目的是迫使目標(biāo)主機為很多永無休止的連接維護(hù) 好狀態(tài)信息。
SYN泛洪攻擊通常會被察覺,因為目標(biāo)主機(通常為HTTP和SMTP服務(wù)器)將發(fā)生速度變得極慢、崩潰或者死機的現(xiàn)象。從目標(biāo)主機返回的流量可能導(dǎo)致思科路由器發(fā)生故障;因為這種返回流量會流向被打亂的原數(shù)據(jù)包的源地址,它不具備“真正的”IP流量的位置屬性,并可能使路由器緩存溢出。在思科路由器上,發(fā)生此問題的跡象通常是路由器的內(nèi)存容量耗盡。
在Cisco接到的報告中,smurf和SYN泛洪攻擊在泛洪DoS攻擊中占據(jù)了絕大多數(shù)比例,因而迅速識別這兩種攻擊至關(guān)重要。幸運的是,我們可以使用Cisco訪問控制列表輕而易舉地識別上述兩種攻擊(以及一些“二級”攻擊,例如ping泛洪)。
識別DoS的訪問控制列表想象一臺帶有二個接口的思科路由器。ethernet 0連接到一個公司或小型ISP的內(nèi)部局域網(wǎng)。Serial 0提供通過上一級ISP提供互聯(lián)網(wǎng)連接。Serial 0上的輸入數(shù)據(jù)包率被“固定”在整個鏈路帶寬上,局域網(wǎng)上的主機運行緩慢,會發(fā)生崩潰和死機的現(xiàn)象或者表現(xiàn)出DoS攻擊的其它跡象。思科路由器連接地點沒有網(wǎng)絡(luò)分析器,即使能夠進(jìn)行追蹤,但工作人員卻在讀取分析器追蹤方面缺乏經(jīng)驗或者根本沒有經(jīng)驗。
現(xiàn)在,假定我們按照如下方法使用訪問控制列表:
access-list 169 permit icmp any any echo
access-list 169 permit icmp any any echo-reply
access-list 169 permit udp any any eq echo
access-list 169 permit udp any eq echo any
access-list 169 permit tcp any any established
access-list 169 permit tcp any any
access-list 169 permit ip any any
interface serial 0
ip access-group 169 in
該訪問控制列表根本沒有過濾任何流量,所有條目均為許可。然而,由于它通過有效的方法對數(shù)據(jù)包進(jìn)行了分類,因此該表可用于臨時診斷三種類型的攻擊:smurf、SYN泛洪和fraggle。
Smurf最終目標(biāo)
如果發(fā)出show access-list命令,我們將看到與以下內(nèi)容相似的輸出:
Extended IP access list 169
permit icmp any any echo (2 matches)
permit icmp any any echo-reply (21374 matches)
permit udp any any eq echo
permit udp any eq echo any
permit tcp any any established (150 matches)
permit tcp any any (15 matches)
permit ip any any (45 matches)
顯而易見,對于思科路由器到達(dá)串行接口的大部分流量由ICMP響應(yīng)答復(fù)數(shù)據(jù)包組成。這可能是smurf攻擊的跡象,我們的站點是最終目標(biāo),而并非反射者。通過更改訪問控制列表,我們能夠輕易收集到有關(guān)攻擊的更多信息,如以下信息:
interface serial 0
no ip access-group 169 in
no access-list 169
access-list 169 permit icmp any any echo
access-list 169 permit icmp any any echo-reply log-input
access-list 169 permit udp any any eq echo
access-list 169 permit udp any eq echo any
access-list 169 permit tcp any any established
access-list 169 permit tcp any any
access-list 169 permit ip any any
interface serial 0
ip access-group 169 in
對于思科路由器,我們在此處進(jìn)行了更改,將log-input關(guān)鍵詞添加到與可疑流量匹配的訪問控制列表條目中(版本低于11.2的Cisco IOS 軟件沒有該關(guān)鍵詞,我們可使用關(guān)鍵詞“log”取代)。這樣可使路由器記錄與訪問控制列表條目匹配信息。假定配置了logging buffered,我們可以通過使用show log命令看到產(chǎn)生的結(jié)果信息(由于速率限制,信息收集可能需要一段時間)。