遠(yuǎn)程os探測(cè)中的網(wǎng)絡(luò)協(xié)議棧指紋識(shí)別_第1頁(yè)
遠(yuǎn)程os探測(cè)中的網(wǎng)絡(luò)協(xié)議棧指紋識(shí)別_第2頁(yè)
遠(yuǎn)程os探測(cè)中的網(wǎng)絡(luò)協(xié)議棧指紋識(shí)別_第3頁(yè)
遠(yuǎn)程os探測(cè)中的網(wǎng)絡(luò)協(xié)議棧指紋識(shí)別_第4頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、遠(yuǎn)程os探測(cè)中的網(wǎng)絡(luò)協(xié)議棧指紋識(shí)別    摘要 遠(yuǎn)程探測(cè)計(jì)算機(jī)系統(tǒng)的os(操作系統(tǒng))類型、版本號(hào)等信息,是黑客入侵行為的重要步驟,也是網(wǎng)絡(luò)安全中的一種重要的技術(shù)。在探測(cè)技術(shù)中,有一類是通過網(wǎng)絡(luò)協(xié)議棧指紋來(lái)進(jìn)行的。協(xié)議棧指紋是指不同操作系統(tǒng)的網(wǎng)絡(luò)協(xié)議棧存在的細(xì)微差別,這些差別可以用來(lái)區(qū)分不同的操作系統(tǒng)。本文研究和分析了此技術(shù)的原理和實(shí)踐,并提出了防止指紋探測(cè)的方法。 關(guān)鍵詞  遠(yuǎn)程os探測(cè) 協(xié)議棧指紋 tcp/ip協(xié)議 1 引言探測(cè)和識(shí)別一個(gè)計(jì)算機(jī)系統(tǒng)在運(yùn)行什么os是黑客入侵的重要步驟。如果不知道目標(biāo)系統(tǒng)在運(yùn)行什么os,就很難在目標(biāo)系統(tǒng)上執(zhí)行操作

2、,也無(wú)法判斷是否存在安全漏洞,更談不上攻擊。從管理和防范的角度來(lái)說,如果能減少被探測(cè)時(shí)泄漏的信息,就減少了黑客入侵行為的信息來(lái)源,使其入侵行為變得相當(dāng)困難。因此,研究這方面的技術(shù),對(duì)于提高系統(tǒng)的安全性和抵抗入侵的能力具有重要的意義。2  簡(jiǎn)單的os探測(cè)技術(shù)在早期,黑客經(jīng)常采用一些簡(jiǎn)單的探測(cè)方法來(lái)獲取目標(biāo)系統(tǒng)的信息。如通過telnet標(biāo)題,ftp的標(biāo)題和stat命令,通過http服務(wù)程序,dns ,snmp等都可以得到很多有用信息。但是,在長(zhǎng)期的入侵和防入侵的斗爭(zhēng)中,通過簡(jiǎn)單的手段即可獲得的信息越來(lái)越少了。管理員努力地減少通過網(wǎng)絡(luò)泄漏的信息,有時(shí)還修改os的代碼,給出虛假的信息。在這種

3、情況下,簡(jiǎn)單的方法已經(jīng)很難奏效了,因此出現(xiàn)了通過網(wǎng)絡(luò)協(xié)議棧指紋來(lái)識(shí)別os的技術(shù)。3      網(wǎng)絡(luò)協(xié)議棧指紋原理常用的網(wǎng)絡(luò)協(xié)議是標(biāo)準(zhǔn)的,因而從理論上講各個(gè)操作系統(tǒng)的協(xié)議棧應(yīng)該是相同的。但是,在實(shí)踐中,各種操作系統(tǒng)的協(xié)議棧的實(shí)現(xiàn)存在細(xì)微的差異。這些差異稱作網(wǎng)絡(luò)協(xié)議棧的“指紋”。對(duì)tcp協(xié)議族來(lái)說,這些差異通常表現(xiàn)在數(shù)據(jù)包頭的標(biāo)志字段中。如window size、ack序號(hào)、ttl等的不同取值。通過對(duì)這些差別進(jìn)行歸納和總結(jié),可以比較準(zhǔn)確地識(shí)別出遠(yuǎn)程系統(tǒng)的os類型。由于internet廣泛使用tcp/ip協(xié)議族,因此下面的討論主要圍繞tcp/ip來(lái)進(jìn)

4、行。4  網(wǎng)絡(luò)協(xié)議棧指紋構(gòu)成下面列出了不同os的網(wǎng)絡(luò)協(xié)議棧的差異,這些差異可作為協(xié)議棧指紋識(shí)別的依據(jù)。1)      ttlttl:time to live,即數(shù)據(jù)包的“存活時(shí)間”,表示一個(gè)數(shù)據(jù)包在被丟棄之前可以通過多少躍點(diǎn)(hop)。不同操作系統(tǒng)的缺省ttl值往往是不同的。常見操作系統(tǒng)的ttl值:windows 9x/nt/2000 intel      128 digital unix 4.0 alpha      

5、60;     60 linux 2.2.x intel                  64 netware 4.11 intel                  128 aix 4.3.x ibm/rs6000&

6、#160;     60 cisco 12.0 2514                  255 solaris 8 intel/sparc            64 2)      df位df(不分段)位識(shí)別:不同os對(duì)df

7、位有不同的處理方式,有些os設(shè)置df位,有些不設(shè)置df位;還有一些os在特定場(chǎng)合設(shè)置df位,在其它場(chǎng)合不設(shè)置df位。3)      window sizewindow size:tcp接收(發(fā)送)窗口大小。它決定了接收信息的機(jī)器在收到多少數(shù)據(jù)包后發(fā)送ack包。特定操作系統(tǒng)的缺省window size基本是常數(shù),例如,aix 用0x3f25,windows、openbsd 、freebsd用0x402e。一般地,unix的window size較大。mswindows,路由器,交換機(jī)等的較小。4)    &

8、#160; ack 序號(hào)不同的os處理ack序號(hào)時(shí)是不同的。如果發(fā)送一個(gè)fin|psh|urg的數(shù)據(jù)包到一個(gè)關(guān)閉的tcp 端口,大多數(shù)os會(huì)把回應(yīng)ack包的序號(hào)設(shè)置為發(fā)送的包的初始序號(hào),而windows 和一些打印機(jī)則會(huì)發(fā)送序號(hào)為初始序號(hào)加1的ack包。5)      icmp地址屏蔽請(qǐng)求對(duì)于icmp地址屏蔽請(qǐng)求,有些os會(huì)產(chǎn)生相應(yīng)的應(yīng)答,有些則不會(huì)。會(huì)產(chǎn)生應(yīng)答的系統(tǒng)有openvms, mswindows, sun solaris等。在這些產(chǎn)生應(yīng)答的系統(tǒng)中,對(duì)分片icmp地址屏蔽請(qǐng)求的應(yīng)答又存在差別,可以做進(jìn)一步的區(qū)分。6) 

9、0;    對(duì)fin包的響應(yīng)發(fā)送一個(gè)只有fin標(biāo)志位的tcp數(shù)據(jù)包給一個(gè)打開的端口,linux等系統(tǒng)不響應(yīng);有些系統(tǒng),例如 ms windows, cisco, hp/ux等,發(fā)回一個(gè)reset。7)      虛假標(biāo)記的syn包在syn包的tcp頭里設(shè)置一個(gè)未定義的tcp 標(biāo)記,目標(biāo)系統(tǒng)在響應(yīng)時(shí),有的會(huì)保持這個(gè)標(biāo)記,有的不保持。還有一些系統(tǒng)在收到這樣的包的時(shí)候會(huì)復(fù)位連接。8)      isn (初始化序列號(hào))不同的os在選擇tcp isn時(shí)采用不同的方法。一些u

10、nix系統(tǒng)采用傳統(tǒng)的64k遞增方法,較新的solaris,irix,freebsd,digital unix,cray等系統(tǒng)采用隨機(jī)增量的方法;linux 2.0,openvms, aix等系統(tǒng)采用真隨機(jī)方法。windows系統(tǒng)采用一種時(shí)間相關(guān)的模型。還有一些系統(tǒng)使用常數(shù)。如,3com集線器使用0x803,apple laserwriter打印機(jī)使用0xc7001。9)      icmp 錯(cuò)誤信息在發(fā)送icmp錯(cuò)誤信息時(shí),不同的os有不同的行為。rfc 1812建議限制各種錯(cuò)誤信息的發(fā)送率。有的os做了限制,而有的沒做。10) &#

11、160;    icmp 消息引用rfc 規(guī)定icmp錯(cuò)誤消息可以引用一部分引起錯(cuò)誤的源消息。在處理端口不可達(dá)消息時(shí),大多數(shù)os送回ip請(qǐng)求頭外加8 字節(jié)。solaris 送回的稍多,linux 更多。有些os會(huì)把引起錯(cuò)誤消息的頭做一些改動(dòng)再發(fā)回來(lái)。例如,freebsd,openbsd,ultrix,vaxen等會(huì)改變頭的id 。這種方法功能很強(qiáng),甚至可以在目標(biāo)主機(jī)沒有打開任何監(jiān)聽端口的情況下就識(shí)別出linux和solaris 。11)      tos(服務(wù)類型)對(duì)于icmp端口不可達(dá)消息,送回包的服務(wù)類型(to

12、s)值也是有差別的。大多數(shù)os是0,而linux 是0xc0。12)      分段重組處理在做ip包的分段重組時(shí),不同os的處理方式不同。有些os會(huì)用新ip段覆蓋舊的ip段,而有些會(huì)用舊的ip段覆蓋新的ip段。13)      mss(最大分段尺寸)不同的os有不同的缺省mss值,對(duì)不同的mss值的回應(yīng)也不同。如,給linux發(fā)送一個(gè)mss值很小的包,它一般會(huì)把這個(gè)值原封不動(dòng)地返回;其它的系統(tǒng)會(huì)返回不同的值。14)      syn flood

13、限度在處理syn flood的時(shí)候,不同的os有不同的特點(diǎn)。如果短時(shí)間內(nèi)收到很多的偽造syn包,一些os會(huì)停止接受新的連接。有的系統(tǒng)支持?jǐn)U展的方式來(lái)防止syn flood。15)      主機(jī)使用的端口一些os會(huì)開放特殊的端口,比如:windows的137、139,win2k的445;一些網(wǎng)絡(luò)設(shè)備,如入侵檢測(cè)系統(tǒng)、防火墻等也開放自己特殊的端口。16)      telnet選項(xiàng)指紋建立telnet會(huì)話時(shí),socket連接完成后,會(huì)收到telnet守候程序發(fā)送的一系列telnet選項(xiàng)信息。不同o

14、s有不同的telnet選項(xiàng)排列順序。17)      http指紋執(zhí)行http協(xié)議時(shí),不同的web server存在差異。而從web server往往可以判斷os類型。web server的差異體現(xiàn)在如下方面:1:基本http請(qǐng)求處理head / http/1.0這樣的請(qǐng)求時(shí),不同系統(tǒng)返回信息基本相同,但存在細(xì)節(jié)差別。如,apache返回的頭信息里的server和date項(xiàng)的排序和其它的服務(wù)器不同。2:delete請(qǐng)求對(duì)于delete / http/1.0這樣的非法請(qǐng)求,apache響應(yīng)"405 method not allowed&

15、quot;,iis響應(yīng)"403 forbidden", netscape響應(yīng) "401 unauthorized"。3:非法http協(xié)議版本請(qǐng)求對(duì)于get / http/3.0這樣的請(qǐng)求,apache響應(yīng)"400 bad request",iis忽略這種請(qǐng)求,響應(yīng)信息是ok, netscape響應(yīng)"505 http version not supported"。4: 不正確規(guī)則協(xié)議請(qǐng)求對(duì)不規(guī)則協(xié)議的請(qǐng)求,apache忽視不規(guī)則的協(xié)議并返回200 "ok",iis響應(yīng)"400 bad r

16、equest", netscape幾乎不返回http頭信息。18)      打印機(jī)服務(wù)程序指紋rfc 1179規(guī)定了請(qǐng)求打印服務(wù)時(shí)須遵循的協(xié)議。在實(shí)踐中,如果打印請(qǐng)求符合rfc1179的格式,不同os表現(xiàn)行為相同。但當(dāng)打印請(qǐng)求不符合rfc1179的格式時(shí),不同os就會(huì)體現(xiàn)出差別。如對(duì)一個(gè)非法格式的請(qǐng)求,solaris這樣回應(yīng):reply: invalid protocol request (77): xxxxxx而aix系統(tǒng)這樣回應(yīng): reply: 0781-201 ill-formed from address.  大多

17、數(shù)os會(huì)給出不同的響應(yīng)信息。個(gè)別os會(huì)給出長(zhǎng)度為0的回應(yīng)。對(duì)于windows,則是通過專有的smb協(xié)議(server message block protocol)來(lái)實(shí)現(xiàn)打印機(jī)的共享。19)      網(wǎng)絡(luò)協(xié)議棧指紋實(shí)踐在實(shí)踐中,網(wǎng)絡(luò)協(xié)議棧指紋方法通常這樣應(yīng)用:總結(jié)各種操作系統(tǒng)網(wǎng)絡(luò)協(xié)議棧的上述細(xì)微差異,形成一個(gè)指紋數(shù)據(jù)庫(kù)。在探測(cè)一個(gè)系統(tǒng)的時(shí)候,通過網(wǎng)絡(luò)和目標(biāo)系統(tǒng)進(jìn)行交互,或者偵聽目標(biāo)系統(tǒng)發(fā)往網(wǎng)絡(luò)的數(shù)據(jù)包,收集其網(wǎng)絡(luò)協(xié)議棧的行為特點(diǎn),然后以操作系統(tǒng)指紋數(shù)據(jù)庫(kù)為參考,對(duì)收集的信息進(jìn)行分析,從而得出目標(biāo)系統(tǒng)運(yùn)行何種os的結(jié)論。20) 

18、60;    遠(yuǎn)程os探測(cè)的防護(hù)方法由于協(xié)議棧指紋方法是建立在操作系統(tǒng)底層程序差別的基礎(chǔ)上的,所以要徹底防護(hù)指紋識(shí)別是很難的。但是有一些方法可以減少信息泄漏并干擾指紋識(shí)別的結(jié)果,在很大程度上提高系統(tǒng)的安全性。21)      檢測(cè)和攔截對(duì)于主動(dòng)向主機(jī)發(fā)送數(shù)據(jù)包的協(xié)議棧指紋識(shí)別,可以使用ids檢測(cè)到異常包或異常的行為,從而加以記錄和攔截。對(duì)于通過sniffer來(lái)進(jìn)行的協(xié)議棧指紋識(shí)別,這種方法是無(wú)效的。22)      修改參數(shù)一些操作系統(tǒng)的協(xié)議棧參數(shù),如缺省window、mss、mtu等值,是可以修改的。在solaris和linux操作系統(tǒng)下,很多tcp/ip協(xié)議棧的參數(shù)可以通過系統(tǒng)配置程序來(lái)修改。在windows系統(tǒng)中,可以通過對(duì)注冊(cè)表的修改來(lái)配置

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論