資源描述:
《基于TCPIP協(xié)議的網(wǎng)絡(luò)不安全》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、TCP/IP協(xié)議中譯名為傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議,又名網(wǎng)絡(luò)通訊協(xié)議,是Internet最基本的協(xié)議、Internet國際互聯(lián)網(wǎng)絡(luò)的基礎(chǔ),由網(wǎng)絡(luò)層的IP協(xié)議和傳輸層的TCP協(xié)議組成。TCP/IP定義了電子設(shè)備如何連入因特網(wǎng),以及數(shù)據(jù)如何在它們之間傳輸?shù)臉?biāo)準(zhǔn)。協(xié)議采用了4層的層級結(jié)構(gòu),每一層都呼叫它的下一層所提供的協(xié)議來完成自己的需求。通俗而言:TCP負(fù)責(zé)發(fā)現(xiàn)傳輸?shù)膯栴},一有問題就發(fā)出信號,要求重新傳輸,直到所有數(shù)據(jù)安全正確地傳輸?shù)侥康牡?。而IP是給因特網(wǎng)的每一臺聯(lián)網(wǎng)設(shè)備規(guī)定一個地址。建立連接協(xié)議(三次握手)第一
2、次握手:建立連接時,客戶端發(fā)送syn包(syn=j)到服務(wù)器,并進(jìn)入SYN_SEND狀態(tài),等待服務(wù)器確認(rèn);第二次握手:服務(wù)器收到syn包,必須確認(rèn)客戶的syn(ack=j+1),同時自己也發(fā)送一個SYN包(syn=k),即SYN+ACK包,此時服務(wù)器進(jìn)入SYN_RECV狀態(tài);第三次握手:客戶端收到服務(wù)器的SYN+ACK包,向服務(wù)器發(fā)送確認(rèn)包ACK(ack=k+1),此包發(fā)送完畢,客戶端和服務(wù)器進(jìn)入ESTABLISHED狀態(tài),完成三次握手。OSI參考模型中的網(wǎng)絡(luò)層,在TCP/IP協(xié)議中,TCP協(xié)議提供可靠的連接服務(wù)
3、,采用三次握手建立一個連接。完成三次握手,客戶端與服務(wù)器開始傳送數(shù)據(jù),在上述過程中,還有一些重要的概念:未連接隊列:在三次握手協(xié)議中,服務(wù)器維護(hù)一個未連接隊列,該隊列為每個客戶端的SYN包(syn=j)開設(shè)一個條目,該條目表明服務(wù)器已收到SYN包,并向客戶發(fā)出確認(rèn),正在等待客戶的確認(rèn)包。這些條目所標(biāo)識的連接在服務(wù)器處于Syn_RECV狀態(tài),當(dāng)服務(wù)器收到客戶的確認(rèn)包時,刪除該條目,服務(wù)器進(jìn)入ESTABLISHED狀態(tài)。SYN-ACK重傳次數(shù):服務(wù)器發(fā)送完SYN-ACK包,如果未收到客戶確認(rèn)包,服務(wù)器進(jìn)行首次重傳,等
4、待一段時間仍未收到客戶確認(rèn)包,進(jìn)行第二次重傳,如果重傳次數(shù)超過系統(tǒng)規(guī)定的最大重傳次數(shù),系統(tǒng)將該連接信息從半連接隊列中刪除。注意,每次重傳等待的時間不一定相同。半連接存活時間:是指半連接隊列的條目存活的最長時間,也即服務(wù)從收到SYN包到確認(rèn)這個報文無效的最長時間,該時間值是所有重傳請求包的最長等待時間總和。有時我們也稱半連接存活時間為Timeout時間、SYN_RECV存活時間。工作原理由于TCP需要時刻跟蹤,這需要額外開銷,使得TCP的格式有些顯得復(fù)雜。下面就讓我們看一個TCP的經(jīng)典案例,這是后來被稱為MITNI
5、CK攻擊中KEVIN開創(chuàng)的兩種攻擊技術(shù):TCP會話劫持和SYNFLOOD(同步洪流)SYNFLOOD當(dāng)客戶端和服務(wù)器在網(wǎng)絡(luò)中使用TCP協(xié)議發(fā)起會話時,在服務(wù)器內(nèi)存中會開辟一小塊緩沖區(qū)來處理會話過程中消息的“握手”交換。會話建立數(shù)據(jù)包包含一個SYN片段,用于標(biāo)識消息交換中的序列號。而SYNFLOOD試圖摧毀這一過程。攻擊者快速發(fā)送一連串連接請求,之后并不響應(yīng)服務(wù)器發(fā)送回來的應(yīng)答,造成三次握手無法完成,在服務(wù)器上留下半打開的連接,分配給他們的緩存也被保留下來,使其他程序不能使用服務(wù)器。盡管緩沖區(qū)中的數(shù)據(jù)包在沒有應(yīng)答超
6、過一段時間(通常3min)就會被丟棄,但大量虛假請求的后果是用于建立會話的合法請求難以建立。TCP會話劫持假設(shè)A為攻擊者,B為中介跳板機(jī)器(受信任的服務(wù)器),C為目的主機(jī)(多是服務(wù)器)。會話劫持的常用方法:使用源路由(sourceRouted)IP數(shù)據(jù)包,使位于網(wǎng)絡(luò)上的A參與到B與C的連接中。會話劫持的常見類型:中間人攻擊。攻擊者A通過某種類型的數(shù)據(jù)包嗅探程序偵聽B與C的數(shù)據(jù)傳輸,可以截獲他想要的任何信息而不打斷會話。會話劫持的方法:攻擊者A向正在通話的B發(fā)送大量請求使其無暇響應(yīng)合法用戶C,此時A預(yù)測B的TCP序
7、列號冒充B與C進(jìn)行會話,騙取C的信任,從而達(dá)到攻擊的目的。有效抵御會話劫持的方法:使用加密傳輸?,F(xiàn)將TCP/IP攻擊的常用原理介紹如下:(1)源地址欺騙(SourceAddressSpoofing)、IP欺騙(IPSpoofing)和DNS欺騙(DNSSpoofing).其基本原理:是利用IP地址并不是出廠的時候與MAC固定在一起的,攻擊者通過自封包和修改網(wǎng)絡(luò)節(jié)點的IP地址,冒充某個可信節(jié)點的IP地址,進(jìn)行攻擊。主要有三種手法:1.癱瘓真正擁有IP的可信主機(jī),偽裝可信主機(jī)攻擊服務(wù)器;2.中間人攻擊;3.DNS欺騙
8、(DNSSpoofing)和“會話劫持”(SessionHijack);(2)源路由選擇欺騙(SourceRoutingSpoofing)。原理:利用IP數(shù)據(jù)包中的一個選項-IPSourceRouting來指定路由,利用可信用戶對服務(wù)器進(jìn)行攻擊,特別是基于UDP協(xié)議的由于其是面向非連接的,更容易被利用來攻擊;(3)路由選擇信息協(xié)議攻擊(RIPAttacks)。原理:攻擊者