隨著Internet的不斷發(fā)展,信息技術(shù)已經(jīng)對(duì)經(jīng)濟(jì)發(fā)展、社會(huì)進(jìn)步產(chǎn)生了巨大的推動(dòng)力。當(dāng)今社會(huì)高度的計(jì)算機(jī)化信息資源對(duì)任何人無(wú)論在任何時(shí)候、任何地方都變得極有價(jià)值。不管是存儲(chǔ)在工作站、服務(wù)器中還是流通于Internet上的信息,都已轉(zhuǎn)變成為一個(gè)關(guān)系事業(yè)成敗的策略點(diǎn),因此,保證信息資源的安全就顯得格外重要。目前,國(guó)內(nèi)網(wǎng)絡(luò)安全產(chǎn)品主要是以硬件為主,其中包括防火墻、入侵檢測(cè)系統(tǒng)(IDS)、入侵防御系統(tǒng)(IPS)、防病毒網(wǎng)關(guān)、虛擬專(zhuān)用網(wǎng)(VPN)以及物理隔離卡等產(chǎn)品,其中防火墻、入侵檢測(cè)系統(tǒng)、VPN應(yīng)用較為廣泛。漏洞掃描系統(tǒng)也是網(wǎng)絡(luò)安全產(chǎn)品中不可缺少的一部分,有效的安全掃描是增強(qiáng)計(jì)算機(jī)系統(tǒng)安全性的重要措施之一,它能夠預(yù)先評(píng)估和分析系統(tǒng)中存在的各種安全隱患。換言之,漏洞掃描就是對(duì)系統(tǒng)中重要的數(shù)據(jù)、文件等進(jìn)行檢查,發(fā)現(xiàn)其中可被黑客所利用的漏洞。隨著黑客入侵手段的日益復(fù)雜和通用系統(tǒng)不斷發(fā)現(xiàn)的安全缺陷,預(yù)先評(píng)估和分析網(wǎng)絡(luò)系統(tǒng)中存在的安全問(wèn)題已經(jīng)成為網(wǎng)絡(luò)管理員們的重要需求。漏洞掃描的結(jié)果實(shí)際上就是系統(tǒng)安全性能的一個(gè)評(píng)估報(bào)告,它指出了哪些攻擊是可能的,因此成為網(wǎng)絡(luò)安全解決方案中的一個(gè)重要組成部分。
漏洞掃描技術(shù)的原理
漏洞掃描系統(tǒng)是用來(lái)自動(dòng)檢測(cè)遠(yuǎn)程或本地主機(jī)安全漏洞的程序(安全漏洞通常指硬件、軟件、協(xié)議的具體實(shí)現(xiàn)或系統(tǒng)安全策略方面存在的安全缺陷)。漏洞掃描按功能大致可分為:操作系統(tǒng)漏洞掃描、網(wǎng)絡(luò)漏洞掃描和數(shù)據(jù)庫(kù)漏洞掃描。若針對(duì)檢測(cè)對(duì)象的不同,漏洞掃描還可分為網(wǎng)絡(luò)掃描、操作系統(tǒng)掃描、WWW服務(wù)掃描、數(shù)據(jù)庫(kù)掃描以及最近出現(xiàn)的無(wú)線(xiàn)網(wǎng)絡(luò)掃描。目前,漏洞掃描,從底層技術(shù)來(lái)劃分,也可以分為基于網(wǎng)絡(luò)的掃描和基于主機(jī)的掃描這兩種類(lèi)型。
漏洞掃描主要通過(guò)以下兩種方法來(lái)檢測(cè)目標(biāo)主機(jī)是否存在漏洞:在端口掃描后得知目標(biāo)主機(jī)開(kāi)啟的端口以及端口上的網(wǎng)絡(luò)服務(wù),將這些相關(guān)信息與網(wǎng)絡(luò)漏洞掃描系統(tǒng)提供的漏洞庫(kù)進(jìn)行匹配,查看是否有滿(mǎn)足匹配條件的漏洞存在(如圖1所示);通過(guò)模擬黑客的攻擊手法,對(duì)目標(biāo)主機(jī)系統(tǒng)進(jìn)行攻擊性的安全漏洞掃描,如測(cè)試弱勢(shì)口令等。一旦模擬攻擊成功,則表明目標(biāo)主機(jī)系統(tǒng)存在安全漏洞,下面列出兩種漏洞掃描實(shí)現(xiàn)的方法。
(1) 漏洞庫(kù)的特征匹配方法
基于網(wǎng)絡(luò)系統(tǒng)漏洞庫(kù)的漏洞掃描的關(guān)鍵部分就是它所使用的漏洞特征庫(kù)。通過(guò)采用基于規(guī)則的模式特征匹配技術(shù),即根據(jù)安全專(zhuān)家對(duì)網(wǎng)絡(luò)系統(tǒng)安全漏洞、黑客攻擊案例的分析和系統(tǒng)管理員對(duì)網(wǎng)絡(luò)系統(tǒng)安全配置的實(shí)際經(jīng)驗(yàn),可以形成一套標(biāo)準(zhǔn)的網(wǎng)絡(luò)系統(tǒng)漏洞庫(kù),然后再在此基礎(chǔ)之上構(gòu)成相應(yīng)的匹配規(guī)則,由掃描程序自動(dòng)進(jìn)行漏洞掃描。若沒(méi)有被匹配的規(guī)則,系統(tǒng)的網(wǎng)絡(luò)連接是禁止的。
因此,漏洞庫(kù)信息的完整性和有效性決定了漏洞掃描系統(tǒng)的性能,漏洞庫(kù)的修訂和更新的性能也會(huì)影響漏洞掃描系統(tǒng)運(yùn)行的時(shí)間。因此,漏洞庫(kù)的編制不僅要對(duì)每個(gè)存在安全隱患的網(wǎng)絡(luò)服務(wù)建立對(duì)應(yīng)的漏洞庫(kù)文件,而且應(yīng)當(dāng)能滿(mǎn)足前面所提出的性能要求。
(2)功能模塊(插件)技術(shù)
插件是由腳本語(yǔ)言編寫(xiě)的子程序,掃描程序可以通過(guò)調(diào)用它來(lái)執(zhí)行漏洞掃描,檢測(cè)出系統(tǒng)中存在的一個(gè)或多個(gè)漏洞。添加新的插件就可以使漏洞掃描軟件增加新的功能,掃描出更多的漏洞。插件編寫(xiě)規(guī)范化后,甚至用戶(hù)自己都可以用Perl、C等腳本語(yǔ)言編寫(xiě)的插件來(lái)擴(kuò)充漏洞掃描軟件的功能。這種技術(shù)使漏洞掃描軟件的升級(jí)維護(hù)變得相對(duì)簡(jiǎn)單,而專(zhuān)用腳本語(yǔ)言的使用也簡(jiǎn)化了編寫(xiě)新插件的編程工作,使漏洞掃描軟件具有很強(qiáng)的擴(kuò)展性。
基于網(wǎng)絡(luò)的漏洞掃描技術(shù)
基于網(wǎng)絡(luò)的漏洞掃描器,就是通過(guò)網(wǎng)絡(luò)來(lái)掃描遠(yuǎn)程計(jì)算機(jī)中TCP/IP不同端口的服務(wù),然后將這些相關(guān)信息與系統(tǒng)的漏洞庫(kù)進(jìn)行模式匹配,如果特征匹配成功,則認(rèn)為安全漏洞存在;或者通過(guò)模擬黑客的攻擊手法對(duì)目標(biāo)主機(jī)進(jìn)行攻擊,如果模擬攻擊成功,則認(rèn)為安全漏洞存在。
網(wǎng)絡(luò)漏洞掃描系統(tǒng)(簡(jiǎn)稱(chēng)掃描器),是指通過(guò)網(wǎng)絡(luò)遠(yuǎn)程檢測(cè)目標(biāo)網(wǎng)絡(luò)和主機(jī)系統(tǒng)漏洞的程序,它對(duì)網(wǎng)絡(luò)系統(tǒng)和設(shè)備進(jìn)行安全漏洞檢測(cè)和分析,從而發(fā)現(xiàn)可能被入侵者非法利用的漏洞。漏洞掃描器多數(shù)采用基于特征的匹配技術(shù),與基于誤用檢測(cè)技術(shù)的入侵檢測(cè)系統(tǒng)相似。掃描器首先通過(guò)請(qǐng)求/應(yīng)答,或通過(guò)執(zhí)行攻擊腳本,來(lái)搜集目標(biāo)主機(jī)上的信息,然后在獲取的信息中尋找漏洞特征庫(kù)定義的安全漏洞,若匹配成功,則認(rèn)為安全漏洞存在??梢钥吹剑踩┒茨芊癜l(fā)現(xiàn)很大程度上取決于漏洞特征的定義?;诰W(wǎng)絡(luò)的漏洞掃描器,一般有以下幾個(gè)主要模塊組成(如圖2所示):
漏洞數(shù)據(jù)庫(kù)模塊:漏洞數(shù)據(jù)庫(kù)包含了各種操作系統(tǒng)的各種漏洞信息,以及如何檢測(cè)漏洞的指令。由于新的漏洞會(huì)不斷出現(xiàn),該數(shù)據(jù)庫(kù)需要經(jīng)常更新,以便能夠檢測(cè)到新發(fā)現(xiàn)的漏洞。
掃描引擎模塊:掃描引擎是掃描器的主要部件。根據(jù)用戶(hù)配置控制臺(tái)部分的相關(guān)設(shè)置,掃描引擎組裝好相應(yīng)的數(shù)據(jù)包,發(fā)送到目標(biāo)系統(tǒng),將接收到的目標(biāo)系統(tǒng)的應(yīng)答數(shù)據(jù)包與漏洞數(shù)據(jù)庫(kù)中的漏洞特征進(jìn)行比較,來(lái)判斷所選擇的漏洞是否存在。
掃描知識(shí)庫(kù)模塊:通過(guò)查看內(nèi)存中的配置信息,該模塊監(jiān)控當(dāng)前活動(dòng)的掃描,將要掃描的漏洞的相關(guān)信息提供給掃描引擎,同時(shí)還接收掃描引擎返回的掃描結(jié)果。
結(jié)果存儲(chǔ)器和報(bào)告生成工具:報(bào)告生成工具,利用當(dāng)前活動(dòng)掃描知識(shí)庫(kù)中存儲(chǔ)的掃描結(jié)果,生成掃描報(bào)告。掃描報(bào)告將告訴用戶(hù)配置控制臺(tái)設(shè)置了哪些選項(xiàng),根據(jù)這些設(shè)置,掃描結(jié)束后,在哪些目標(biāo)系統(tǒng)上發(fā)現(xiàn)了哪些漏洞。
基于主機(jī)的漏洞掃描技術(shù)
主機(jī)漏洞掃描器則通過(guò)在主機(jī)本地的代理程序?qū)ο到y(tǒng)配置、注冊(cè)表、系統(tǒng)日志、文件系統(tǒng)或數(shù)據(jù)庫(kù)活動(dòng)進(jìn)行監(jiān)視掃描,搜集他們的信息,然后與系統(tǒng)的漏洞庫(kù)進(jìn)行比較,如果滿(mǎn)足匹配條件,則認(rèn)為安全漏洞存在。比如,利用低版本的DNS Bind漏洞,攻擊者能夠獲取root權(quán)限,侵入系統(tǒng)或者攻擊者能夠在遠(yuǎn)程計(jì)算機(jī)中執(zhí)行惡意代碼。使用基于網(wǎng)絡(luò)的漏洞掃描工具,能夠監(jiān)測(cè)到這些低版本的DNS Bind是否在運(yùn)行。一般來(lái)說(shuō),基于網(wǎng)絡(luò)的漏洞掃描工具可以看作為一種漏洞信息收集工具,根據(jù)不同漏洞的特性,構(gòu)造網(wǎng)絡(luò)數(shù)據(jù)包,發(fā)給網(wǎng)絡(luò)中的一個(gè)或多個(gè)目標(biāo)服務(wù)器,以判斷某個(gè)特定的漏洞是否存在。
漏洞掃描技術(shù)中存在的問(wèn)題
網(wǎng)絡(luò)安全掃描產(chǎn)品的核心功能在于檢測(cè)目標(biāo)網(wǎng)絡(luò)設(shè)備存在的各種網(wǎng)絡(luò)安全漏洞,針對(duì)發(fā)現(xiàn)的網(wǎng)絡(luò)安全漏洞提供詳盡的檢測(cè)報(bào)告和切實(shí)可行的網(wǎng)絡(luò)安全漏洞解決方案,使系統(tǒng)管理員在黑客入侵之前將系統(tǒng)可能存在的各種網(wǎng)絡(luò)安全漏洞修補(bǔ)好,避免黑客的入侵而造成不同程度的損失。
網(wǎng)絡(luò)漏洞掃描系統(tǒng)發(fā)展迅速,產(chǎn)品種類(lèi)繁多,且各具特點(diǎn),在功能和性能上存在著一定的差異。漏洞掃描系統(tǒng)大多采用軟件產(chǎn)品來(lái)實(shí)現(xiàn),也有廠(chǎng)家采用硬件產(chǎn)品來(lái)實(shí)現(xiàn)漏洞掃描。通常以三種形式出現(xiàn):?jiǎn)我坏膾呙柢浖?,安裝在計(jì)算機(jī)或掌上電腦上,例如ISS Internet Scanner;基于客戶(hù)機(jī)(管理端)/服務(wù)器(掃描引擎)模式或?yàn)g覽器/服務(wù)器模式,通常為軟件,安裝在不同的計(jì)算機(jī)上,也有將掃描引擎做成硬件的,例如Nessus;其他安全產(chǎn)品的組件,例如防御安全評(píng)估就是防火墻的一個(gè)組件。在安全掃描中,硬件設(shè)備的資源能夠承受多數(shù)量的主機(jī)。與通常的軟件掃描器相比,由于承載的硬件嵌入系統(tǒng)平臺(tái)經(jīng)過(guò)特別優(yōu)化,其掃描效率遠(yuǎn)遠(yuǎn)高于一般的安全掃描軟件。本文分別介紹了基于網(wǎng)絡(luò)的漏洞掃描工具和基于主機(jī)的漏洞掃描工具,現(xiàn)有的漏洞掃描系統(tǒng)基本上是采用上述的兩種方法來(lái)完成對(duì)漏洞的掃描,但是這兩種方法在不同程度上也各有不足之處,主要表現(xiàn)在:
(1)系統(tǒng)配置特征規(guī)則庫(kù)問(wèn)題
網(wǎng)絡(luò)系統(tǒng)漏洞庫(kù)是基于漏洞庫(kù)的漏洞掃描的靈魂所在,而系統(tǒng)漏洞的確認(rèn)是以系統(tǒng)配置特征規(guī)則庫(kù)為基礎(chǔ)的。但是,這樣的系統(tǒng)配置特征規(guī)則庫(kù)存在其局限性。專(zhuān)家建議,系統(tǒng)配置特征規(guī)則庫(kù)應(yīng)能不斷地被擴(kuò)充和修正,這樣也是對(duì)系統(tǒng)漏洞庫(kù)的擴(kuò)充和修正,但這些又需要專(zhuān)家的指導(dǎo)和參與才能夠?qū)崿F(xiàn)。
(2)針對(duì)漏洞庫(kù)信息要求
漏洞庫(kù)信息是基于網(wǎng)絡(luò)系統(tǒng)漏洞庫(kù)的漏洞掃描的主要判斷依據(jù)。如果漏洞庫(kù)信息不全面或得不到即時(shí)的更新,不但不能發(fā)揮漏洞掃描的作用,還會(huì)給系統(tǒng)管理員以錯(cuò)誤的引導(dǎo),從而對(duì)系統(tǒng)的安全隱患不能采取有效措施并及時(shí)消除。專(zhuān)家建議,在按照某一標(biāo)準(zhǔn)設(shè)計(jì)漏洞庫(kù)的同時(shí),還應(yīng)該讓漏洞庫(kù)信息具備完整性、有效性、簡(jiǎn)易性等特點(diǎn),這樣即使是用戶(hù)自己也易于對(duì)漏洞庫(kù)進(jìn)行添加配置,從而實(shí)現(xiàn)對(duì)漏洞庫(kù)的即時(shí)更新。
結(jié)束語(yǔ)
漏洞掃描技術(shù)是一門(mén)新興的技術(shù),它從另一個(gè)角度解決網(wǎng)絡(luò)安全問(wèn)題。具體來(lái)講,防火墻技術(shù)是被動(dòng)防御,而漏洞掃描技術(shù)則是主動(dòng)防御。與防火墻、入侵檢測(cè)等技術(shù)相比,它從另一個(gè)角度來(lái)解決網(wǎng)絡(luò)安全上的問(wèn)題。本文就網(wǎng)絡(luò)安全掃描技術(shù)與其包含端口漏洞掃描技術(shù)的一些具體內(nèi)容進(jìn)行了闡述和分析。隨著網(wǎng)絡(luò)的發(fā)展和內(nèi)核的進(jìn)一步修改,新的掃描技術(shù)及對(duì)入侵性的漏洞掃描的新防御技術(shù)還會(huì)誕生,而到目前為止還沒(méi)有一種完全成熟、高效的漏洞掃描防御技術(shù);同時(shí),漏洞掃描面向的漏洞包羅萬(wàn)象,而且漏洞的數(shù)目也在持續(xù)地增加。就目前的漏洞掃描技術(shù)而言,將結(jié)合人工智能、模式識(shí)別等知識(shí)逐漸地被提高,但是自動(dòng)化的漏洞掃描無(wú)法得以完全實(shí)現(xiàn),而且新的難題也將不斷涌現(xiàn),因此網(wǎng)絡(luò)安全掃描技術(shù)仍有待更進(jìn)一步地研究和完善。
總之,網(wǎng)絡(luò)安全掃描系統(tǒng),是維護(hù)網(wǎng)絡(luò)安全所必備的系統(tǒng)級(jí)網(wǎng)絡(luò)安全產(chǎn)品之一,其存在的重要性和必要性正被廣大用戶(hù)所接受和認(rèn)可。