嚴(yán)浩 石西華
(國(guó)家計(jì)算機(jī)網(wǎng)絡(luò)與信息安全管理中心青海分中心 青海省西寧市 810000)
2017年《中華人民共和國(guó)網(wǎng)絡(luò)安全法》正式開(kāi)始實(shí)行,標(biāo)志著網(wǎng)絡(luò)安全等級(jí)保護(hù)2.0 的正式啟用。等級(jí)保護(hù)2.0 進(jìn)一步擴(kuò)展了等級(jí)保護(hù)對(duì)象,優(yōu)化了等級(jí)保護(hù)措施,確保等級(jí)保護(hù)標(biāo)準(zhǔn)、相關(guān)防護(hù)機(jī)制與管理手段的順利實(shí)施。
滲透測(cè)試是為了驗(yàn)證網(wǎng)絡(luò)防御質(zhì)量,按照相關(guān)設(shè)計(jì)規(guī)劃而提出的一種方法,其是一種合法的系統(tǒng)攻擊行為,通過(guò)模擬網(wǎng)絡(luò)攻擊行為來(lái)評(píng)估網(wǎng)絡(luò)系統(tǒng)的安全性。滲透測(cè)試的基本目的是為了識(shí)別出網(wǎng)絡(luò)系統(tǒng)的缺陷和漏洞,滲透原理是在識(shí)別測(cè)評(píng)目標(biāo)系統(tǒng)后,結(jié)合可用的信息并采取各種方式來(lái)實(shí)現(xiàn)驗(yàn)證要求。滲透測(cè)試的目標(biāo)系統(tǒng)可以是提供信息的系統(tǒng),也可以是只具備基本信息的系統(tǒng)。滲透測(cè)試幫助信息系統(tǒng)評(píng)定系統(tǒng)是否容易受到攻擊、網(wǎng)絡(luò)安全防護(hù)措施是否可靠、存在何種安全問(wèn)題,進(jìn)而使網(wǎng)絡(luò)系統(tǒng)的負(fù)責(zé)人對(duì)網(wǎng)絡(luò)系統(tǒng)進(jìn)行修復(fù),提升網(wǎng)絡(luò)安全防護(hù)質(zhì)量。
滲透測(cè)試是一個(gè)系統(tǒng)化的過(guò)程,需要逐步完成對(duì)網(wǎng)絡(luò)安全等級(jí)保護(hù)側(cè)測(cè)試。第一步是進(jìn)行規(guī)劃和準(zhǔn)備,根據(jù)信息系統(tǒng)的要求,測(cè)試人員要明確滲透測(cè)試的目標(biāo),是全方位測(cè)評(píng)還是具有針對(duì)性檢測(cè)。第二步要收集相關(guān)信息,測(cè)試人員往往只會(huì)被告知測(cè)試的IP 地址,一些有用的信息還需向客戶或系統(tǒng)負(fù)責(zé)人詢問(wèn)。第三步進(jìn)行初步操作,連接網(wǎng)絡(luò)、主機(jī)、端口等。第四步對(duì)信息系統(tǒng)進(jìn)行分析評(píng)估,結(jié)合前期收集的信息,采取各種方式嘗試攻擊信息系統(tǒng),這時(shí)需要測(cè)試人員判斷滲透測(cè)試目標(biāo)是否正確、在測(cè)試后發(fā)現(xiàn)漏洞的概率。第五步則是關(guān)鍵的攻擊入侵環(huán)節(jié),發(fā)現(xiàn)安全漏洞。第六步則是對(duì)滲透測(cè)試工作進(jìn)行總結(jié)討論,評(píng)估潛在風(fēng)險(xiǎn)漏洞的安全風(fēng)險(xiǎn)等級(jí),再根據(jù)測(cè)試過(guò)程、分析漏洞并提出修復(fù)漏洞的建議[1]。
滲透測(cè)試的測(cè)試方法主要根據(jù)獲取信息量和攻擊渠道進(jìn)行劃分。獲取的信息量需要根據(jù)客戶的要求進(jìn)行處理,零知識(shí)測(cè)試就是在進(jìn)行評(píng)估測(cè)試前幾乎沒(méi)有信息,只有一定范圍內(nèi)的url 和IP 地址,這需要測(cè)試人員逐步探索可用的信息內(nèi)容,并注重不要攻擊IP 地址范圍外的系統(tǒng)。部分信息或全部信息主要是進(jìn)行針對(duì)性的滲透測(cè)試,測(cè)試人員只需要檢驗(yàn)何種方式能有效入侵系統(tǒng)漏洞即可。而攻擊渠道分為內(nèi)部和外部,大多數(shù)滲透測(cè)試都是從外部進(jìn)行的,這也是因?yàn)樾畔⑾到y(tǒng)主要受到的攻擊就是來(lái)源于外部,內(nèi)部測(cè)試則需要測(cè)試人員提前了解信息系統(tǒng)的基本構(gòu)成和具體細(xì)節(jié),這樣才能花費(fèi)較少的時(shí)間來(lái)找出漏洞[2]。
滲透測(cè)試所使用的工具包括網(wǎng)絡(luò)工具、診斷工具、系統(tǒng)應(yīng)用工具、安全掃描工具等,這些工具在安全性和可靠性方面有著較高要求。例如系統(tǒng)應(yīng)用工具中fip、ping 等,安全掃描工具可以選用APPScan、AWVS,其中APPScan 是Web 應(yīng)用程序自動(dòng)化滲透測(cè)試應(yīng)用最廣泛的工具,可以有效檢測(cè)出SQL 注入、緩沖區(qū)溢出、腳本攻擊等漏洞。
按照《網(wǎng)絡(luò)安全等級(jí)保護(hù)測(cè)評(píng)過(guò)程指南》的規(guī)定,測(cè)評(píng)實(shí)施有著不同的強(qiáng)度要求,三級(jí)以上系統(tǒng)需要進(jìn)行應(yīng)用系統(tǒng)完整性和保密性要求的協(xié)議分析,還需通過(guò)內(nèi)外部滲透測(cè)試評(píng)定被測(cè)系統(tǒng)的脆弱性。滲透測(cè)試常見(jiàn)的運(yùn)作方式主要有遠(yuǎn)程滲透和現(xiàn)場(chǎng)滲透兩種。遠(yuǎn)程滲透也就是黑盒測(cè)試,在距離接入點(diǎn)區(qū)域較遠(yuǎn)的網(wǎng)絡(luò)中模擬外部人員通過(guò)互聯(lián)網(wǎng)攻擊被測(cè)系統(tǒng);現(xiàn)場(chǎng)滲透測(cè)試則是針對(duì)系統(tǒng)內(nèi)部網(wǎng)絡(luò)拓?fù)?,根?jù)應(yīng)用和測(cè)試要求采用不同接入點(diǎn)進(jìn)行滲透測(cè)試。例如模擬業(yè)務(wù)操作人員接入、模擬運(yùn)維人員接入等場(chǎng)景來(lái)達(dá)到內(nèi)部滲透測(cè)試的要求。除此之外,滲透測(cè)試也可用于網(wǎng)絡(luò)安全等級(jí)保護(hù)的新技術(shù)、新系統(tǒng)的安全性測(cè)評(píng),比如系統(tǒng)增加應(yīng)對(duì)外部攻擊的感知層測(cè)試、RFID 標(biāo)簽、監(jiān)控設(shè)備等,通過(guò)嵌入式軟件進(jìn)行旁路攻擊、置亂加密、側(cè)信道攻擊等方法進(jìn)行滲透測(cè)試。需要測(cè)試人員結(jié)合網(wǎng)絡(luò)系統(tǒng)的實(shí)際情況選擇滲透測(cè)試的運(yùn)作方式,全方位分析網(wǎng)絡(luò)系統(tǒng)存在的漏洞。
滲透測(cè)試的主要工作可分層四個(gè)階段,即準(zhǔn)備階段、探測(cè)階段、實(shí)施階段和報(bào)告階段,為了確保滲透測(cè)試在網(wǎng)絡(luò)安全等級(jí)保護(hù)測(cè)評(píng)中的有效性,需要嚴(yán)格安全相關(guān)規(guī)范標(biāo)準(zhǔn)進(jìn)行。
準(zhǔn)備階段包括授權(quán)文件確認(rèn)和監(jiān)督管理計(jì)劃的確立,都是滲透測(cè)試開(kāi)展的基礎(chǔ)性工作??蛻粢约跋嚓P(guān)部門進(jìn)行書(shū)面授權(quán)后才能以測(cè)試目標(biāo)開(kāi)展相關(guān)測(cè)試計(jì)劃方案的設(shè)計(jì),規(guī)劃人員、設(shè)備。如果未經(jīng)過(guò)授權(quán)便提前開(kāi)展工作則會(huì)違反相關(guān)法律法規(guī),需要測(cè)試人員多加注意。監(jiān)督管理則是要確保滲透測(cè)試工作的可行性和安全性,避免因滲透測(cè)試工作致使信息系統(tǒng)出現(xiàn)其他安全問(wèn)題,也需同時(shí)成立管控小組,對(duì)滲透測(cè)試前后全過(guò)程進(jìn)行控制。
探測(cè)階段的工作主要根據(jù)測(cè)試人員了解的信息內(nèi)容有關(guān)系。若客戶提供大量有關(guān)信息系統(tǒng)的資料則基本可以跳過(guò)此步驟直接明確入侵方式,不過(guò)大多數(shù)情況下外界攻擊并不清楚信息系統(tǒng)的信息,需要滲透測(cè)試模擬收集、分析信息的過(guò)程,在獲取到一定量信息后便可以對(duì)系統(tǒng)的服務(wù)、端口進(jìn)行分析,為后續(xù)測(cè)試攻擊提供幫助。
實(shí)施階段根據(jù)上述結(jié)果對(duì)信息系統(tǒng)進(jìn)行滲透,并在滲透測(cè)試過(guò)程中對(duì)系統(tǒng)內(nèi)外運(yùn)行安全和系統(tǒng)本身編制情況進(jìn)行監(jiān)測(cè)。由于實(shí)施過(guò)程會(huì)受到信息信息自身防護(hù)系統(tǒng)的反饋。例如防火墻,追蹤定位等,要求互聯(lián)網(wǎng)設(shè)備以及相關(guān)操作權(quán)限應(yīng)提前賦予給測(cè)試人員,使?jié)B透操作順利進(jìn)行[3]。
報(bào)告階段根據(jù)相關(guān)檢測(cè)結(jié)果進(jìn)行編制,要嚴(yán)格按照檢測(cè)結(jié)果進(jìn)行評(píng)估。這樣才能幫助客戶就信息系統(tǒng)網(wǎng)絡(luò)安全進(jìn)行有效整改和修復(fù),滿足網(wǎng)絡(luò)安全等級(jí)保護(hù)的要求。一般來(lái)說(shuō)編制報(bào)告需要包含測(cè)試結(jié)果、漏洞信息和評(píng)估整改建議三個(gè)方面,而且測(cè)試結(jié)果和漏洞信息必須要充分、準(zhǔn)確,能夠?qū)Φ燃?jí)保護(hù)起到輔助作用。滲透測(cè)試方法如表1所示。
表1:滲透測(cè)試方法表
由于當(dāng)前網(wǎng)絡(luò)信息環(huán)境較為復(fù)雜,較為普通的攻擊環(huán)境難以有效發(fā)現(xiàn)信息系統(tǒng)的安全隱患。因此,需要設(shè)計(jì)特定的攻擊場(chǎng)景來(lái)檢驗(yàn)在理想狀態(tài)下信息系統(tǒng)滲透測(cè)試的情況。例如將場(chǎng)景設(shè)定為云計(jì)算環(huán)境,將訪問(wèn)路徑設(shè)定為互聯(lián)網(wǎng)外部攻擊,測(cè)試人員通過(guò)外部網(wǎng)絡(luò)攻擊用戶云服務(wù)網(wǎng)絡(luò)系統(tǒng),也就是外部網(wǎng)絡(luò)攻擊企業(yè)網(wǎng)絡(luò)的一種情景。這時(shí)的模擬攻擊測(cè)試需要測(cè)試人員從外部網(wǎng)絡(luò)進(jìn)入應(yīng)用層、平臺(tái)層和基礎(chǔ)結(jié)構(gòu)層后才能侵入內(nèi)部網(wǎng)絡(luò),驗(yàn)證網(wǎng)絡(luò)系統(tǒng)在不同層面的防護(hù)效果?;蛘呤峭獠抗敉ㄟ^(guò)獲取目標(biāo)服務(wù)系統(tǒng)的非授權(quán)訪問(wèn)攻擊,測(cè)試人員可以直接對(duì)基礎(chǔ)架構(gòu)層進(jìn)行攻擊,省去了通過(guò)前面層級(jí)的步驟。又或者已經(jīng)獲得訪問(wèn)權(quán)限,直接攻擊目標(biāo)管理系統(tǒng)。設(shè)計(jì)不同的攻擊場(chǎng)景可以針對(duì)網(wǎng)絡(luò)安全的多個(gè)方面或多種形式進(jìn)行滲透測(cè)試,全面檢驗(yàn)網(wǎng)絡(luò)系統(tǒng)等級(jí)保護(hù)情況。通常情況下,攻擊場(chǎng)景設(shè)計(jì)主要針對(duì)用戶需求進(jìn)行設(shè)定,比如具有云服務(wù)企業(yè)網(wǎng)絡(luò)的客戶,其外部防御以及內(nèi)部網(wǎng)絡(luò)安全漏洞是重點(diǎn)測(cè)試項(xiàng)目,而網(wǎng)絡(luò)應(yīng)用層、基礎(chǔ)架構(gòu)層的安全性基本與系統(tǒng)構(gòu)建質(zhì)量有關(guān),需要客戶從網(wǎng)絡(luò)系統(tǒng)滲透測(cè)試難以提供有效的安全防護(hù)建議。
在信息收集完成后,實(shí)際的滲透測(cè)試是較為復(fù)雜,需要深入分析實(shí)施階段的具體應(yīng)用情況。結(jié)合信息系統(tǒng)的實(shí)際情況和系統(tǒng)特點(diǎn),選擇適宜的方法進(jìn)行測(cè)定。首先制定滲透策略,服務(wù)系統(tǒng)的控制權(quán)限能否獲取是滲透測(cè)試策略的重要分歧點(diǎn),如果不能獲取就需要按部就班進(jìn)行入侵攻擊,而能夠獲取服務(wù)系統(tǒng)的控制權(quán)限則可以進(jìn)行多方面的測(cè)試。例如掃描漏洞、服務(wù)漏洞、建立用戶、遠(yuǎn)程桌面等方式都可以成為滲透途徑,其中遠(yuǎn)程訪問(wèn)權(quán)限較低時(shí),可以采用提權(quán)后建立用戶的滲透方法。
然后,滲透實(shí)施過(guò)程中要同時(shí)運(yùn)用漏洞工具將掃描出的漏洞進(jìn)行編號(hào),并記錄漏洞性質(zhì)。漏洞檢測(cè)工具可以交由MVC 框架中的model 軟件來(lái)形成漏洞檢測(cè)模塊,model 軟件還可以直接將相關(guān)數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù)中,為后續(xù)安全漏洞修復(fù)提供幫助。而滲透測(cè)試則可以借助這些漏洞進(jìn)行遠(yuǎn)程過(guò)程調(diào)用(RPC),服務(wù)系統(tǒng)接到RPC請(qǐng)求后,就會(huì)允許遠(yuǎn)程執(zhí)行代碼,使?jié)B透測(cè)試進(jìn)一步深入。
之后可以相關(guān)漏洞獲取控制權(quán)限,并執(zhí)行相關(guān)命令,對(duì)用戶及用戶層進(jìn)行查看,并進(jìn)行獲取Administrator(管理員)最高權(quán)限的操作。
最后再通過(guò)最高權(quán)限獲得用戶權(quán)限許可和后門賬戶。由于不同信息系統(tǒng)所具有的漏洞情況不同,上述只是簡(jiǎn)要分析了在權(quán)限缺陷漏洞方面滲透測(cè)試的實(shí)施關(guān)鍵點(diǎn),像是密碼重置、交易篡改規(guī)避也是常見(jiàn)的網(wǎng)絡(luò)安全漏洞,而滲透測(cè)試往往需要耗費(fèi)大量的時(shí)間來(lái)檢測(cè)信息系統(tǒng)的風(fēng)險(xiǎn)漏洞,為了縮短測(cè)試時(shí)間,提高滲透測(cè)試的自動(dòng)化程度,應(yīng)當(dāng)采取科學(xué)合理的滲透策略避免重復(fù)性工作,也能夠提高滲透測(cè)試的準(zhǔn)確性。例如在交易篡改滲透測(cè)試中可以利用關(guān)鍵字規(guī)則來(lái)省去不必要的參數(shù),縮減滲透測(cè)試范圍,節(jié)約時(shí)間[4]。
滲透測(cè)試的結(jié)果基本決定了網(wǎng)絡(luò)安全等級(jí)保護(hù)測(cè)評(píng)的結(jié)論,不過(guò)相關(guān)測(cè)試結(jié)果與等級(jí)保護(hù)制度中的測(cè)評(píng)項(xiàng)還需進(jìn)行調(diào)整,來(lái)將滲透測(cè)試結(jié)果與測(cè)評(píng)項(xiàng)結(jié)合。例如在Web 業(yè)務(wù)系統(tǒng)中,SQL 漏洞、文件上傳漏洞是業(yè)務(wù)系統(tǒng)本身具有的缺陷,滲透測(cè)試所得到的結(jié)果與等級(jí)保護(hù)測(cè)評(píng)項(xiàng)中對(duì)數(shù)據(jù)有效性檢驗(yàn)不完善和對(duì)已知漏洞修復(fù)不及時(shí)相互對(duì)應(yīng),在檢測(cè)報(bào)告中可以直接得出結(jié)論。而滲透測(cè)試結(jié)果中還存有間接性影響。例如在安全通信網(wǎng)絡(luò)架構(gòu)中重要網(wǎng)絡(luò)區(qū)域與其他網(wǎng)絡(luò)區(qū)域應(yīng)當(dāng)采取可靠的技術(shù)隔離方式,在滲透測(cè)試的有效性驗(yàn)證下,若在其他網(wǎng)絡(luò)區(qū)域可以獲得提權(quán)從而進(jìn)入重要網(wǎng)絡(luò)區(qū)域則代表技術(shù)隔離方式存在漏洞。
滲透測(cè)試的結(jié)果對(duì)于后續(xù)網(wǎng)絡(luò)安全修復(fù)有著重要影響,若滲透測(cè)試得到的結(jié)果不夠完整或準(zhǔn)確,就會(huì)造成安全風(fēng)險(xiǎn)遺留的問(wèn)題。而且在網(wǎng)絡(luò)安全等級(jí)保護(hù)的要求下,用戶本身也需要注重滲透測(cè)試結(jié)果的準(zhǔn)確性。要積極與滲透測(cè)試的監(jiān)督管理人員進(jìn)行交流。這是因?yàn)闈B透測(cè)試只是在應(yīng)用場(chǎng)景中對(duì)相關(guān)系統(tǒng)進(jìn)行模擬攻擊的一種行為,其本身不僅可以評(píng)定系統(tǒng)的網(wǎng)絡(luò)安全等級(jí)保護(hù)情況,還會(huì)考察客戶系統(tǒng)人員的安全意識(shí)和管理適宜,在滲透測(cè)試編制報(bào)告中也應(yīng)針對(duì)客戶安全防護(hù)和管理工作提出一些積極建議。
滲透測(cè)試本身作為一種攻擊行為,在應(yīng)用過(guò)程中是存在一定風(fēng)險(xiǎn)的,包括測(cè)試的合法性、滲透測(cè)試風(fēng)險(xiǎn)、系統(tǒng)風(fēng)險(xiǎn)等,需要在滲透測(cè)試過(guò)程中管控這些風(fēng)險(xiǎn)因素。在前期準(zhǔn)備階段測(cè)試方以及客戶方就要對(duì)滲透測(cè)試方案進(jìn)行評(píng)審,確定通過(guò)滲透測(cè)試進(jìn)行網(wǎng)絡(luò)安全等級(jí)保護(hù)測(cè)評(píng),確保滲透測(cè)試的合法性。正常情況下測(cè)試時(shí)間應(yīng)當(dāng)選擇在系統(tǒng)運(yùn)作量較少的時(shí)間段進(jìn)行,或者直接停止相關(guān)業(yè)務(wù)服務(wù),來(lái)避免滲透測(cè)試對(duì)業(yè)務(wù)的影響。滲透策略的合理選擇可以將降低測(cè)試風(fēng)險(xiǎn)。比如密碼破解測(cè)試的風(fēng)險(xiǎn)等級(jí)為中等,風(fēng)險(xiǎn)出現(xiàn)時(shí)會(huì)造成網(wǎng)絡(luò)性能波動(dòng),在出現(xiàn)問(wèn)題后需要及時(shí)停止破解。而像是在針對(duì)核心系統(tǒng)或是采用DDOS 類測(cè)試方法是需要謹(jǐn)慎考量的,測(cè)試人員要對(duì)相應(yīng)結(jié)果做出科學(xué)預(yù)測(cè),選擇適宜的方法。并且在滲透測(cè)試前可以提前進(jìn)行系統(tǒng)備份或恢復(fù)準(zhǔn)備工作,避免出現(xiàn)問(wèn)題也能夠及時(shí)進(jìn)行恢復(fù),核心系統(tǒng)可以通過(guò)滲透?jìng)浞菹到y(tǒng)的方式進(jìn)行網(wǎng)絡(luò)安全等級(jí)保護(hù)測(cè)評(píng)。在滲透測(cè)試前也需做好應(yīng)急處理準(zhǔn)備,如果出現(xiàn)中斷或滲透響應(yīng)緩慢的情況,應(yīng)當(dāng)及時(shí)停止并做故障處理。在處理完成后必須再經(jīng)過(guò)客戶授權(quán)才能繼續(xù)進(jìn)行測(cè)試,測(cè)試人員不得在出現(xiàn)問(wèn)題后自行決斷。另外,加強(qiáng)測(cè)試人員和客戶交流溝通也是強(qiáng)化測(cè)試中出現(xiàn)問(wèn)題有效處理的一種方法。
網(wǎng)絡(luò)安全等級(jí)保護(hù)測(cè)評(píng)中運(yùn)用滲透測(cè)試是我國(guó)網(wǎng)絡(luò)安全提倡的方法,可以有效提升系統(tǒng)漏洞檢測(cè)的準(zhǔn)確性,還能夠?qū)崿F(xiàn)全方位、多樣性的評(píng)估檢測(cè),為網(wǎng)絡(luò)安全等級(jí)保護(hù)提供有力支撐。通過(guò)分析滲透測(cè)試在網(wǎng)絡(luò)安全等級(jí)保護(hù)測(cè)評(píng)中的應(yīng)用,證明了滲透測(cè)試可以及時(shí)發(fā)現(xiàn)安全漏洞,為安全防護(hù)提供建議,有效地保障網(wǎng)絡(luò)安全。