漏洞掃描原理及程序簡介
從圖l可以看出,在telnet連上FTP服務(wù)器后,服務(wù)器返回的banner已經(jīng)提供了server的信息,在執(zhí)行ftp的syst命令后可得到更具體的信息。本文引用地址:http://m.butianyuan.cn/article/154011.htm
2.3.2 HTTP響應(yīng)分析
在和目標(biāo)主機建立HTTP連接后,可以分析服務(wù)器的響應(yīng)包得出OS類型。比如響應(yīng)包中可能包含如下信息:
圖2 響應(yīng)包分析
從圖2中對響應(yīng)包中的數(shù)據(jù)分析,可以得到server的信息。
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三次握手的順序,給目標(biāo)主機發(fā)送一個FIN包。RFC793規(guī)定,正確的處理是沒有響應(yīng),但有些OS,如MS Windows,CISC0,HP/UX等會響應(yīng)一個RST包。
2)Bogus標(biāo)志探測。某些OS會設(shè)置SYN包中TCP頭的未定義位(一般為64或128),而某些0S在收到設(shè)置了這些Bogus位的SYN包后,會重置連接。
3)統(tǒng)計ICMP ERROR報文。RFCl812中規(guī)定了ICMP ERROR消息的發(fā)送速度。Linux設(shè)定了目標(biāo)不可達消息上限為80個/4秒。0S探測時可以向隨機的高端UDP端口大量發(fā)包,然后統(tǒng)計收到的目標(biāo)不可達消息。用此技術(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é)果,生成一套標(biāo)準(zhǔn)的脆弱點數(shù)據(jù)庫及匹配模式。最后由程序基于脆弱點數(shù)據(jù)庫及匹配模式自動進行掃描工作。脆弱點掃描的準(zhǔn)確性取決于脆弱點數(shù)據(jù)庫的完整性及有效性。
tcp/ip相關(guān)文章:tcp/ip是什么
評論