TCP IP協(xié)議當(dāng)中的安全漏洞
網(wǎng)絡(luò)之中,我們最擔(dān)心的就是安全漏洞的問題。現(xiàn)在的絕大多數(shù)互聯(lián)網(wǎng)用戶還是使用的IPv4版本的網(wǎng)絡(luò),在這個版本下,我們的網(wǎng)絡(luò)協(xié)議基礎(chǔ)是TCP IP協(xié)議。那么這個協(xié)議族下都存在著那些漏洞呢?
目前在Internet上使用的是TCP IP協(xié)議。TCP IP協(xié)議叫做傳輸控制/網(wǎng)際協(xié)議,它是Internet國際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ)。TCP/IP是網(wǎng)絡(luò)中使用的基本的通信協(xié)議。其中IP(Internet Protocol)全名為"網(wǎng)際互連協(xié)議",它是為計算機網(wǎng)絡(luò)相互連接進行通信而設(shè)計的協(xié)議。TCP(Transfer Control Protocol)是傳輸控制協(xié)議。TCP IP協(xié)議是能夠使連接到網(wǎng)上的所有計算機網(wǎng)絡(luò)實現(xiàn)相互通信的一套規(guī)則,正是因為有了TCP IP協(xié)議,因特網(wǎng)才得以迅速發(fā)展成為世界上最大的、開放的計算機通信網(wǎng)絡(luò)。
從表面名字上看TCP/IP包括兩個協(xié)議,傳輸控制協(xié)議(TCP)和互聯(lián)網(wǎng)際協(xié)議(IP),其實TCP/IP實際上是1組協(xié)議的集合,它包括了上百個各種功能的協(xié)議。如:遠(yuǎn)程登錄、文件傳輸和電子郵件等等,而TCP協(xié)議和IP協(xié)議是保證數(shù)據(jù)完整傳輸?shù)膬蓚€基本的重要協(xié)議。IP協(xié)議之所以能使各種網(wǎng)絡(luò)互聯(lián)起來是由于它把各種不同的“幀”統(tǒng)一轉(zhuǎn)換成“IP數(shù)據(jù)報”格式,這種轉(zhuǎn)換是因特網(wǎng)的一個最重要的特點。所以IP協(xié)議使各種計算機網(wǎng)絡(luò)都能在因特網(wǎng)上實現(xiàn)互通,即具有“開放性”的特點。
TCP IP協(xié)議的基本傳輸單位是數(shù)據(jù)包(datagram)。TCP協(xié)議負(fù)責(zé)把數(shù)據(jù)分成若干個數(shù)據(jù)包,并給每個數(shù)據(jù)包加上包頭,包頭上有相應(yīng)的編號,以保證在數(shù)據(jù)接收端能將數(shù)據(jù)還原為原來的格式,IP協(xié)議在每個包頭上還要加上接收端主機地址,這樣數(shù)據(jù)通過路由器中的MAC地址來確定數(shù)據(jù)的流向,如果傳輸過程中出現(xiàn)數(shù)據(jù)丟失,數(shù)據(jù)失真等情況,TCP協(xié)議會自動要求數(shù)據(jù)重新傳輸,并重新組。總之,IP協(xié)議保證數(shù)據(jù)的傳輸,而TCP協(xié)議保證數(shù)據(jù)傳輸?shù)馁|(zhì)量。TCP IP協(xié)議數(shù)據(jù)的傳輸基于TCP IP協(xié)議的4層結(jié)構(gòu):應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、接口層。
各TCP IP協(xié)議層存在的安全漏洞
鏈路層存在的安全漏洞
我們知道,在以太網(wǎng)中,信道是共享的,任何主機發(fā)送的每一個以太網(wǎng)幀都會到達(dá)別的與該主機處于同一網(wǎng)段的所有主機的以太網(wǎng)接口,一般地,CSMA/CD協(xié)議使以太網(wǎng)接口在檢測到數(shù)據(jù)幀不屬于自己時,就把它忽略,不會把它發(fā)送到上層協(xié)議(如ARP、RARP層或IP層)。如果我們對其稍做設(shè)置或修改,就可以使一個以太網(wǎng)接口接收不屬于它的數(shù)據(jù)幀。例如有的實現(xiàn)可以使用雜錯接點,即能接收所有數(shù)據(jù)幀的機器節(jié)點。解決該漏洞的對策是:網(wǎng)絡(luò)分段、利用交換器,動態(tài)集線器和橋等設(shè)備對數(shù)據(jù)流進行限制、加密(采用一次性口令技術(shù))和禁用雜錯接點。
網(wǎng)絡(luò)層安全漏洞
幾乎所有的基于TCP/IP的機器都會對ICMP echo請求進行響應(yīng)。所以如果一個敵意主機同時運行很多個ping命令向一個服務(wù)器發(fā)送超過其處理能力的ICMP echo請求時,就可以淹沒該服務(wù)器使其拒絕其他的服務(wù)。另外,ping命令可以在得到允許的網(wǎng)絡(luò)中建立秘密通道從而可以在被攻擊系統(tǒng)中開后門進行方便的攻擊,如收集目標(biāo)上的信息并進行秘密通信等。解決該漏洞的措施是拒絕網(wǎng)絡(luò)上的所有ICMP echo響應(yīng)。
IP安全漏洞
TCP IP協(xié)議中的IP包一旦從網(wǎng)絡(luò)中發(fā)送出去,源IP地址就幾乎不用,僅在中間路由器因某種原因丟棄它或到達(dá)目標(biāo)端后,才被使用。這使得一個主機可以使用別的主機的IP地址發(fā)送IP包,只要它能把這類IP包放到網(wǎng)絡(luò)上就可以。因而如果攻擊者把自己的主機偽裝成被目標(biāo)主機信任的友好主機,即把發(fā)送的IP包中的源IP地址改成被信任的友好主機的IP地址,利用主機間的信任關(guān)系(Unix網(wǎng)絡(luò)軟件的開發(fā)者發(fā)明的術(shù)語)和這種信任關(guān)系的實際認(rèn)證中存在的脆弱性(只通過IP確認(rèn)),就可以對信任主機進行攻擊。注意,其中所說的信任關(guān)系是指一個被授權(quán)的主機可以對信任主機進行方便的訪問。所有的r*命令都采用信任主機方案,所以一個攻擊主機把自己的IP改為被信任主機的IP,就可以連接到信任主機并能利用r*命令開后門達(dá)到攻擊的目的。解決這個問題的一個辦法是,讓路由器拒絕接收來自網(wǎng)絡(luò)外部的IP地址與本地某一主機的IP地址相同的IP包的進入。