摘要:2.3.3棧指紋分析網(wǎng)絡(luò)上的主機都會通過TCP/IP或類似的協(xié)議棧來互通互聯(lián)。由于0S開發(fā)商不唯一,系統(tǒng)架構(gòu)多樣,甚至是軟件版本的差異,都導(dǎo)致了協(xié)議棧具體實現(xiàn)上的不同。對錯誤包的響應(yīng),默認值等都可以作為區(qū)分0S的依據(jù)。(1)主動棧指紋探測主動棧指紋探測是主動向主機發(fā)起連接,并分析收到的響應(yīng),從而確定OS類型的技術(shù)。1)
2.3.3棧指紋分析
網(wǎng)絡(luò)上的主機都會通過TCP/IP或類似的協(xié)議棧來互通互聯(lián)。由于0S開發(fā)商不,系統(tǒng)架構(gòu)多樣,甚至是軟件版本的差異,都導(dǎo)致了協(xié)議棧具體實現(xiàn)上的不同。對錯誤包的響應(yīng),默認值等都可以作為區(qū)分0S的依據(jù)。
(1)主動棧指紋探測
主動棧指紋探測是主動向主機發(fā)起連接,并分析收到的響應(yīng),從而確定OS類型的技術(shù)。
1)FIN探測。跳過TCP三次握手的順序,給目標主機發(fā)送一個FIN包。RFC793規(guī)定,正確的處理是沒有響應(yīng),但有些OS,如MS Windows,CISC0,HP/UX等會響應(yīng)一個RST包。
2)Bogus標志探測。某些OS會設(shè)置SYN包中TCP頭的未定義位(一般為64或128),而某些0S在收到設(shè)置了這些Bogus位的SYN包后,會重置連接。
3)統(tǒng)計ICMP ERROR報文。RFCl812中規(guī)定了ICMP ERROR消息的發(fā)送速度。Linux設(shè)定了目標不可達消息上限為80個/4秒。0S探測時可以向隨機的高端UDP端口大量發(fā)包,然后統(tǒng)計收到的目標不可達消息。用此技術(shù)進行OS探測時時間會長一些,因為要大量發(fā)包,并且還要等待響應(yīng),同時也可能出現(xiàn)網(wǎng)絡(luò)中丟包的情況。
4)ICMPERROR報文引用。RFC文件中規(guī)定,ICMP ERROR消息要引用導(dǎo)致該消息的ICMP消息的部分內(nèi)容。例如對于端口不可達消息,某些OS返回收到的IP頭及后續(xù)的8個字節(jié),Solaris返回的ERROR消息中則引用內(nèi)容更多一些,而Linux比Solaris還要多。
(2)被動棧指紋探測
被動棧指紋探測是在網(wǎng)絡(luò)中監(jiān)聽,分析系統(tǒng)流量,用默認值來猜測0S類型的技術(shù)。
1)TCP初始化窗口尺寸。通過分析響應(yīng)中的初始窗口大小來猜測OS的技術(shù)比較可靠,因為很多0S的初始窗口尺寸不同。比如AIX設(shè)置的初始窗口尺寸是0x3F25,而Windows NT5、OpenBSD、FreeBSD設(shè)置的值是0x402E。
2)Don't Fragment位。為了增進性能,某些0S在發(fā)送的包中設(shè)置了DF位,可以從DF位的設(shè)置情況中做大概的判斷。
3)TCPISN采樣。建立TCP連接時,SYN/ACK中初始序列號ISN的生成存在規(guī)律,比如固定不變、隨機增加(Solaris,F(xiàn)reeBSD等),真正的隨機(Linux 2.0.*),而Windows使用的是時間相關(guān)模型,ISN在每個不同時間段都有固定的增量。
2.4脆弱點掃描
從對黑客攻擊行為的分析和脆弱點的分類,絕大多數(shù)掃描都是針對特定操作系統(tǒng)中特定的網(wǎng)絡(luò)服務(wù)來進行,即針對主機上的特定端口。脆弱點掃描使用的技術(shù)主要有基于脆弱點數(shù)據(jù)庫和基于插件兩種。
2.4.1基于脆弱點數(shù)據(jù)庫的掃描
首先構(gòu)造掃描的環(huán)境模型,對系統(tǒng)中可能存在的脆弱點、過往黑客攻擊案例和系統(tǒng)管理員的安全配置進行建模與分析。其次基于分析的結(jié)果,生成一套標準的脆弱點數(shù)據(jù)庫及匹配模式。最后由程序基于脆弱點數(shù)據(jù)庫及匹配模式自動進行掃描工作。脆弱點掃描的準確性取決于脆弱點數(shù)據(jù)庫的完整性及有效性。
2.4.2基于插件的掃描
插件是由腳本語言編寫的子程序模塊,掃描程序可以通過調(diào)用插件來執(zhí)行掃描。添加新的功能插件可以使掃描程序增加新的功能,或者增加可掃描脆弱點的類型與數(shù)量。也可以升級插件來更新脆弱點的特征信息,從而得到更為準確的結(jié)果。插件技術(shù)使脆弱點掃描軟件的升級維護變得相對簡單,而專用腳本語言的使用也簡化了編寫新插件的編程工作,使弱點掃描軟件具有很強的擴展性。
通信工程師備考資料免費領(lǐng)取
去領(lǐng)取