第五章TCPIP體系的協(xié)議安全2_第1頁
第五章TCPIP體系的協(xié)議安全2_第2頁
第五章TCPIP體系的協(xié)議安全2_第3頁
第五章TCPIP體系的協(xié)議安全2_第4頁
第五章TCPIP體系的協(xié)議安全2_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

TCP安全TCP概述-TCP協(xié)議涉及到TCP報文段的結構、TCP連接的建立與終止、TCP數(shù)據(jù)的傳輸、流量控制、差錯控制、數(shù)據(jù)重傳等內(nèi)容。連接建立-TCP是面向連接的。在面向連接的環(huán)境中,開始傳輸數(shù)據(jù)之前,在兩個終端之間必須先建立一個連接。建立連接的過程可以確保通信雙方在發(fā)送用戶數(shù)據(jù)之前已經(jīng)準備好了傳送和接收數(shù)據(jù)。TCP-面向連接的、端到端的可靠傳輸服務對于一個要建立的連接,通信雙方必須用彼此的初始化序列號SEQ和來自對方成功傳輸確認的確認序號ACK來同步。(ACK號指明希望收到的下一個字節(jié)的編號)習慣上將同步信號寫為SYN,應答信號寫為ACK。TCP連接建立時的三次握手數(shù)據(jù)傳輸在連接建立后,TCP將以全雙工方式傳送數(shù)據(jù),在同一時間主機A與主機B之間可以同時進行TCP報文段的傳輸,并對接收到的TCP報文段進行確認。當通過三次握手建立了主機A與主機B之間的TCP連接后,現(xiàn)在假設主機A要向主機B發(fā)送1800字節(jié)的數(shù)據(jù),主機B要向主機A發(fā)送1500字節(jié)的數(shù)據(jù)。

TCP報文段的傳輸過程連接終止對于一個已經(jīng)建立的連接,TCP使用改進的三次握手來釋放連接(使用一個帶有FIN附加標記的報文段,即在TCP報文段首部中將FIN字段的值置為1)。TCP關閉連接的步驟如圖所示。TCP使用改進的三次握手來釋放連接TCP的安全問題-BadTCP要實現(xiàn)可靠的數(shù)據(jù)傳輸,首先要通過三次握手方式建立主機之間的TCP連接,但在TCP連接過程中很容易出現(xiàn)一個嚴重的安全問題:TCPSYN泛洪攻擊。-拒絕服務攻擊DOS(DenyofService)三次握手-當源主機A要建立與目的主機B之間的TCP連接時,源主機A首先發(fā)送一個用于同步的SYN報文段(第一次握手)。當目的主機B接收到這個報文段時,在正常情況下目的主機會打開連接端口,并給源主機A返回一個SYN+ACK的報文段(第二次握手)。

在目的主機B的隊列中存在大量的“半開放狀態(tài)”的連接,最終將隊列的存儲空間填滿,并因資源耗盡而癱瘓。TCPSYN泛洪攻擊的工作過程

源IP地址是偽造的(spoofed),目的主機無法通過TCP三次握手建立連接。在此期間因為TCP緩存隊列已經(jīng)填滿,而拒絕新的連接請求。目的主機一直嘗試直至超時(如75秒)。這就是該攻擊類型的基本機制。關于TCPSYN欺騙攻擊攻擊者目的是使目標系統(tǒng)上的TCP連接請求表溢出。從而不能對合法連接請求進行響應。假設目標主機系統(tǒng)上的TCP連接請求表項為256項。目標系統(tǒng)的每次超過時間為30S,運行超時次數(shù)為5次。如果一個連接請求超時未有應答,而且超時次數(shù)大于5,那么這個請求將會從TCP連接請求表中刪除。在沒有相關的應對措施和攻擊者已經(jīng)占滿了目標系統(tǒng)的TCP連接請求表的情況下,為了能夠持續(xù)占滿目標系統(tǒng)的TCP連接請求表,攻擊者應以什么樣的速率發(fā)送TCP連接請求?掃描-Scan

一種信息收集型攻擊、其他攻擊的初步Ping掃射(PingSweep)-端口掃描(PortScanning)Ping掃射:運用ping這樣的程序探測目標地址,來發(fā)現(xiàn)那些目標在啟動并運行。防火墻通常阻止ICMP因而可以采用端口掃描:向大范圍的主機連接一系列的TCP端口或UDP端口,掃描軟件報告它成功的建立了連接的主機所開的端口。慢速掃描:由于一般掃描偵測器的實現(xiàn)是通過監(jiān)視某個時間里一臺特定主機發(fā)起的連接的數(shù)目(例如每秒10次)來決定是否在被掃描,這樣黑客可以通過使用掃描速度慢一些的掃描軟件進行掃描。網(wǎng)絡漏洞掃描器-網(wǎng)絡入侵者收集信息的重要手段-由于系統(tǒng)管理員的疏忽或缺乏經(jīng)驗,導致舊有的漏洞依然存在-許多人出于好奇或別有用心,不停的窺視網(wǎng)上資源安全評估工具-系統(tǒng)管理員保障系統(tǒng)安全的有效工具掃描器的主要功能-掃描目標主機識別其工作狀態(tài)(開/關機)-識別目標主機端口的狀態(tài)(監(jiān)聽/關閉)-識別目標主機系統(tǒng)及服務程序的類型和版本-根據(jù)已知漏洞信息,分析系統(tǒng)脆弱點-生成掃描結果報告掃描內(nèi)容-主機掃描確定在目標網(wǎng)絡上的主機是否可達。這是信息收集的初級階段,其效果直接影響到后續(xù)的掃描。-端口掃描當確定了目標主機可達后,就可以使用端口掃描技術,發(fā)現(xiàn)目標主機的開放端口,包括網(wǎng)絡協(xié)議和各種應用監(jiān)聽的端口。-棧指紋OS識別根據(jù)各個OS在TCP/IP協(xié)議棧實現(xiàn)上的不同特點,采用黑盒測試方法,通過研究其對各種探測的響應形成識別指紋,進而識別目標主機運行的操作系統(tǒng)。網(wǎng)絡掃描的主要技術主機掃描技術端口掃描技術棧指紋OS識別技術主機掃描的目的是確定在目標網(wǎng)絡上的主機是否可達。這是信息收集的初級階段,其效果直接影響到后續(xù)的掃描。常用的傳統(tǒng)掃描手段有:ICMPEcho掃描ICMPSweep掃描BroadcastICMP掃描Non-EchoICMP掃描ICMPecho掃描實現(xiàn)原理:Ping的實現(xiàn)機制,在判斷在一個網(wǎng)絡上主機是否開機時非常有用。向目標主機發(fā)送ICMPEchoRequest(type8)數(shù)據(jù)包,等待回復的ICMPEchoReply包(type0)。如果能收到,則表明目標系統(tǒng)可達,否則表明目標系統(tǒng)已經(jīng)不可達或發(fā)送的包被對方的設備過濾掉。ICMP協(xié)議

InternetControlMessageProtocolIP的一部分,在IP協(xié)議棧中必須實現(xiàn)直接封裝在IP數(shù)據(jù)報中,IP頭中協(xié)議類型為1通過類型和代碼的組合,ICMP報文報告在傳輸報文的過程中發(fā)生的各種情況ICMP協(xié)議

InternetControlMessageProtocol用途:網(wǎng)關或者目標機器利用ICMP與源通訊當出現(xiàn)問題時,提供反饋信息用于報告錯誤特點:其控制能力并不用于保證傳輸?shù)目煽啃运旧硪膊皇强煽總鬏數(shù)牟⒉挥脕矸从矷CMP報文的傳輸情況Echo(0)和EchoReply(8)-檢測目的站的可達性與狀態(tài)-主機或路由器向指定目的站發(fā)送ICMPECHO請求報文,請求報文包含一個可選的數(shù)據(jù)區(qū);-收到ECHO請求報文的機器應立即回應一個ECHO應答報文,應答報文包含了請求報文中數(shù)據(jù)的拷貝-標識符:標識一個會話,例如,用進程ID-序號:可能這樣用:每個請求增1Ping程序Ping:PacketInternetGroper–用來判斷遠程設備可訪問性最常用的方法(網(wǎng)絡層)–原理:發(fā)送ICMPEcho消息,然后等待ICMPEchoReply消息優(yōu)點:簡單,系統(tǒng)支持缺點:很容易被防火墻限制可以通過并行發(fā)送,同時探測多個目標主機,以提高探測效率(ICMPSweep掃描)。-注意:ping僅僅是判斷在網(wǎng)絡層的連通性;而防火墻可以過來ping操作那么我們可以判斷主機的存活與否?檢查主機存活的層次可以從不同層去探測網(wǎng)絡的存活。-ARP協(xié)議-TCP協(xié)議等作業(yè):分析掃描器AngryIPScanner或IPSCAN工作原理。即用Sniffer抓包,看本機在運行該程序掃描時發(fā)出什么樣的報文。簡要描述。BroadcastICMP掃描實現(xiàn)原理:將ICMP請求包的目標地址設為廣播地址或網(wǎng)絡地址,則可以探測廣播域或整個網(wǎng)絡范圍內(nèi)的主機。缺點:只適合于UNIX/Linux系統(tǒng),Windows會忽略這種請求包;這種掃描方式容易引起廣播風暴Non-EchoICMP掃描一些其它ICMP類型包也可以用于對主機或網(wǎng)絡設備的探測,如:StampRequest(Type13)Reply(Type14)InformationRequest(Type15)Reply(Type16)AddressMaskRequest(Type17)Reply(Type18)主機掃描技術-高級技術防火墻和網(wǎng)絡過濾設備常常導致傳統(tǒng)探測手段變得無效。為了突破這種限制,必須采用一些非常規(guī)的手段,利用ICMP協(xié)議提供網(wǎng)絡間傳送錯誤信息的手段,往往可以更有效的達到目的:-異常的IP包頭-在IP頭中設置無效的字段值-錯誤的數(shù)據(jù)分片-通過超長包探測內(nèi)部路由器-反向映射探測異常的IP包頭向目標主機發(fā)送包頭錯誤的IP包,目標主機或過濾設備會反饋ICMPParameterProblemError信息。常見的偽造錯誤字段為HeaderLengthField和IPOptionsField。根據(jù)RFC1122的規(guī)定,主機應該檢測IP包的VersionNumber、Checksum字段,路由器應該檢測IP包的Checksum字段。不同廠家的路由器和操作系統(tǒng)對這些錯誤的處理方式不同,返回的結果也各異。如果結合其它手段,可以初步判斷目標系統(tǒng)所在網(wǎng)絡過濾設備的ACL。反向映射探測該技術用于探測被過濾設備或防火墻保護的網(wǎng)絡和主機。通常這些系統(tǒng)無法從外部直接到達,但是我們可以采用反向映射技術,通過目標系統(tǒng)的路由設備進行有效的探測。當我們想探測某個未知網(wǎng)絡內(nèi)部的結構時,可以構造可能的內(nèi)部IP地址列表,并向這些地址發(fā)送數(shù)據(jù)包。當對方路由器接收到這些數(shù)據(jù)包時,會進行IP識別并路由,對不在其服務的范圍的IP包發(fā)送ICMPHostUnreachable或ICMPTimeExceeded錯誤報文,沒有接收到相應錯誤報文的IP地址會可被認為在該網(wǎng)絡中。當然,這種方法也會受到過濾設備的影響。端口掃描技術當確定了目標主機可達后,就可以使用端口掃描技術,發(fā)現(xiàn)目標主機的開放端口,包括網(wǎng)絡協(xié)議和各種應用監(jiān)聽的端口。端口掃描技術主要包括以下三類:開放掃描會產(chǎn)生大量的審計數(shù)據(jù),容易被對方發(fā)現(xiàn),但其可靠性高;隱蔽掃描能有效的避免對方入侵檢測系統(tǒng)和防火墻的檢測,但這種掃描使用的數(shù)據(jù)包在通過網(wǎng)絡時容易被丟棄從而產(chǎn)生錯誤的探測信息;半開放掃描隱蔽性和可靠性介于前兩者之間。常用的端口掃描技術

-TCPconnect()掃描-最基本的TCP掃描-原理就是調(diào)用SOCKETAPI(套接字應用程序接口)中的connect()直接向遠程機器發(fā)送連接請求,并通過套接字是否能建立連接來辨別其端口的狀態(tài)。-如果端口處于偵聽狀態(tài),那么connect()就能成功。否則,這個端口是不能用的,即沒有提供服務。-不需要任何權限。系統(tǒng)中的任何用戶都有權利使用這個調(diào)用。另一個好處就是速度。-這種方法的缺點是容易被發(fā)覺,并且被過濾掉。目標計算機的logs文件會顯示一連串的連接和連接是出錯的服務消息,并且能很快的使它關閉。開放性,不隱蔽常用的端口掃描技術

-TCPSYN掃描

-“半開放”掃描-這是因為掃描程序不必要打開一個完全的TCP連接。-掃描程序發(fā)送的是一個SYN數(shù)據(jù)包,好象準備打開一個實際的連接并等待反應一樣(參考TCP的三次握手建立一個TCP連接的過程)目標返回SYN|ACK,表示端口處于偵聽狀態(tài)。目標返回RST,表示端口沒有處于偵聽態(tài)。-如果收到一個SYN|ACK,則掃描程序必須再發(fā)送一個RST信號,來關閉這個連接過程。-這種掃描技術的優(yōu)點在于一般不會在目標計算機上留下記錄。但這種方法的一個缺點是,必須要有root權限才能建立自己的SYN數(shù)據(jù)包。半開放,比較隱蔽隱蔽掃描技術

-TCPFIN掃描-有的時候有可能SYN掃描都不夠秘密。一些防火墻和包過濾器會對一些指定的端口進行監(jiān)視,有的程序能檢測到這些掃描。-FIN數(shù)據(jù)包可能會沒有任何麻煩的通過。這種掃描方法的思想是關閉的端口會用適當?shù)腞ST來回復FIN數(shù)據(jù)包。另一方面,打開的端口會忽略對FIN數(shù)據(jù)包的回復。(基于Unix的TCP/IP協(xié)議棧產(chǎn)生影響)-這種方法和系統(tǒng)的實現(xiàn)有一定的關系。有的系統(tǒng)(Windows)不管端口是否打開,都回復RST,這樣,這種掃描方法就不適用了。并且這種方法在區(qū)分Unix和Windows時,是十分有用的。

隱蔽隱蔽掃描技術

-TCP間接掃描實現(xiàn)原理:利用第三方的IP(欺騙主機)來隱藏真正掃描者的IP。由于掃描主機會對欺騙主機發(fā)送回應信息,所以必須監(jiān)控欺騙主機的IP行為,從而獲得原始掃描的結果。掃描主機通過偽造第三方主機IP地址向目標主機發(fā)起SYN掃描,并通過觀察其IP序列號的增長規(guī)律獲取端口的狀態(tài)(NMAP的idle掃描)優(yōu)點:隱蔽性好缺點:對第三方主機的要求較高隱蔽掃描技術-TCPXmasTree掃描FINURG

PUSH分組發(fā)送給目標端口;目標系統(tǒng)應該向所有關閉端口回送RST。-TCPNull掃描該技術關閉所有的標識;目標系統(tǒng)應該向所有關閉端口回送RST。RFC793端口掃描技術

-UDPICMP端口不能到達掃描這種方法與以上方法的區(qū)別是使用UDP協(xié)議。由于這個協(xié)議很簡單,所以掃描變得相對比較困難。這是由于打開的端口對掃描探測并不發(fā)送一個確認,關閉的端口也并不需要發(fā)送一個錯誤數(shù)據(jù)包。-But許多主機在你向一個未打開的UDP端口發(fā)送一個數(shù)據(jù)包時,會返回一個ICMP_PORT_UNREACH錯誤。這樣你就能發(fā)現(xiàn)哪個端口是關閉的。-UDP和ICMP錯誤都不保證能到達,因此這種掃描器必須還實現(xiàn)在一個包看上去是丟失的時候能重新傳輸。這種掃描方法是很慢的,因為RFC對ICMP錯誤消息的產(chǎn)生速率做了規(guī)定。同樣,這種掃描方法需要具有root權限。分段掃描實現(xiàn)原理:并不直接發(fā)送TCP探測數(shù)據(jù)包,是將數(shù)據(jù)包分成兩個較小的IP段。這樣就將一個TCP頭分成好幾個數(shù)據(jù)包,從而包過濾器就很難探測到。優(yōu)點:隱蔽性好,可穿越防火墻缺點:可能被丟棄;某些程序在處理這些小數(shù)據(jù)包時會出現(xiàn)異常。棧指紋OS識別技術根據(jù)各個OS在TCP/IP協(xié)議棧實現(xiàn)上的不同特點,采用黑盒測試方法,通過研究其對各種探測的響應形成識別指紋,進而識別目標主機運行的操作系統(tǒng)。根據(jù)采集指紋信息的方式,又可以分為主動掃描和被動掃描兩種方式。Ping的結果-TTL值可以判斷0S類型LINUX64WIN2K/NT128WINDOWS系列32UNIX系列255修改默認TTL值被動掃描通過Sniff收集數(shù)據(jù)包,再對數(shù)據(jù)包的不同特征(TCPWindow-size、IPTTL、IPTOS、DF位等參數(shù))進行分析,來識別操作系統(tǒng)。被動掃描基本不具備攻擊特征,具有很好的隱蔽性,但其實現(xiàn)嚴格依賴掃描主機所處的網(wǎng)絡拓撲結構;和主動探測相比較,具有速度慢、可靠性不高等缺點。主動掃描采用向目標系統(tǒng)發(fā)送構造的特殊包并監(jiān)控其應答的方式來識別操作系統(tǒng)類型。主動掃描具有速度快、可靠性高等優(yōu)點,但同樣嚴重依賴于目標系統(tǒng)網(wǎng)絡拓撲結構和過濾規(guī)則。FIN探測:發(fā)送一個FIN包給一個打開的端口,一般的行為是不響應,但某些實現(xiàn)例如MSWindows,BSDI,CISCO,HP/UX,MVS,和IRIX發(fā)回一個RESET。BOGUS標記探測(QUESO):設置一個未定義的TCP"標記"(64或128)在SYN包的TCP頭里。Linux機器到2.0.35之前在回應中保持這個標記。TCPISN取樣:找出當響應一個連接請求時由TCP實現(xiàn)所選擇的初始化序列數(shù)式樣。這可分為許多組例如傳統(tǒng)的64K(許多老UNIX機器),隨機增量(新版本的Solaris,IRIX,F(xiàn)reeBSD,DigitalUNIX,Cray,等),真“隨機”(Linux2.0.*,OpenVMS,新的AIX,等),Windows機器(和一些其他的)用一個“時間相關”模型,每過一段時間ISN就被加上一個小的固定數(shù)不分段位:許多操作系統(tǒng)開始在送出的一些包中設置IP的"Don'tFragment"位。TCP初始化窗口:檢查返回包的窗口大小。如queso和nmap保持對窗口的精確跟蹤因為它對于特定OS基本是常數(shù)。ACK值:不同實現(xiàn)中一些情況下ACK域的值是不同的。例如,如果你送了一個FIN|PSH|URG到一個關閉的TCP端口。大多數(shù)實現(xiàn)會設置ACK為你的初始序列數(shù),而Windows會送給你序列數(shù)加1。ICMP錯誤信息終結:一些操作系統(tǒng)跟從限制各種錯誤信息的發(fā)送率。例如,Linux內(nèi)核限制目的不可達消息的生成每4秒鐘80個。測試的一種辦法是發(fā)一串包到一些隨機的高UDP端口并計數(shù)收到的不可達消息。ICMP消息引用:ICMP錯誤消息可以引用一部分引起錯誤的源消息。對一個端口不可達消息,幾乎所有實現(xiàn)只送回IP請求頭外加8個字節(jié)。然而,Solaris送回的稍多,而Linux更多。SYN洪水限度:如果收到過多的偽造SYN數(shù)據(jù)包,一些操作系統(tǒng)會停止新的連接嘗試。許多操作系統(tǒng)只能處理8個包。參考:NmapRemoteOSDetection/nmap/nmap-fingerprinting-article.html

NMAP-最好的端口探測工具下載頁面:http:///download.html

幫助文檔:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論