自動(dòng)化的漏洞檢測(cè)方法及裝置的制造方法
【專利摘要】本發(fā)明涉及測(cè)試領(lǐng)域,公開(kāi)了一種自動(dòng)化的漏洞檢測(cè)方法及裝置。本發(fā)明中,記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄;將該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配;以及根據(jù)匹配結(jié)果,確定該被測(cè)系統(tǒng)存在的漏洞;本發(fā)明還提供了一種自動(dòng)化的漏洞檢測(cè)裝置。此種漏洞檢測(cè)方式,可以提高測(cè)試效率并且對(duì)測(cè)試人員的要求低。
【專利說(shuō)明】
自動(dòng)化的漏洞檢測(cè)方法及裝置
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及測(cè)試領(lǐng)域,特別涉及一種自動(dòng)化的漏洞檢測(cè)方法及裝置。
【背景技術(shù)】
[0002]在系統(tǒng)構(gòu)建時(shí),例如網(wǎng)購(gòu)系統(tǒng),不可避免地會(huì)存在很多的漏洞(即bug),例如SQL注入,即沒(méi)有采用參數(shù)化查詢導(dǎo)致SQL注入漏洞的產(chǎn)生,這是一種很嚴(yán)重的漏洞。其他的一些漏洞還包括:XSS (跨站點(diǎn)腳本)、命令執(zhí)行、文件包含等。
[0003]而現(xiàn)在業(yè)界很多對(duì)系統(tǒng)的測(cè)試一般都關(guān)注于功能的測(cè)試,即測(cè)試系統(tǒng)能否實(shí)現(xiàn)其功能,針對(duì)網(wǎng)購(gòu)系統(tǒng)而言,主要測(cè)試用戶能否正常將商品添加至購(gòu)物車、能否正常下單、能否查詢訂單信息等功能。而業(yè)界較忽略對(duì)漏洞的測(cè)試。而一旦系統(tǒng)中的漏洞被外界獲悉,則很有可能造成系統(tǒng)中大量的用戶個(gè)人敏感信息(如聯(lián)系地址、身份證號(hào)、聯(lián)系電話、用戶密碼)的泄漏。因此,對(duì)系統(tǒng)中存在的漏洞(如安全漏洞)的測(cè)試顯得十分地重要。
[0004]但是,現(xiàn)在業(yè)界的測(cè)試方式中,一般都是由安全測(cè)試人員獨(dú)立地去編寫測(cè)試代碼,設(shè)計(jì)測(cè)試規(guī)則,然后對(duì)各種可能的漏洞進(jìn)行單獨(dú)地測(cè)試。此種測(cè)試方式一方面對(duì)測(cè)試人員的要求較高,如果不是經(jīng)過(guò)專業(yè)培訓(xùn)并積累了豐富的測(cè)試經(jīng)驗(yàn),一般很難滿足要求,不適合于普通測(cè)試人員(如功能測(cè)試人員)進(jìn)行測(cè)試。另一方面,現(xiàn)有的測(cè)試方式還存在測(cè)試效率低下的問(wèn)題。
[0005]因此,現(xiàn)有的測(cè)試方式實(shí)有改進(jìn)之必要。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的在于提供一種自動(dòng)化的漏洞檢測(cè)方法及裝置,能夠提高漏洞檢測(cè)效率并且對(duì)測(cè)試人員要求不高。
[0007]為解決上述技術(shù)問(wèn)題,本發(fā)明的實(shí)施方式提供了一種自動(dòng)化的漏洞檢測(cè)方法,包括:記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄;以及將該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配;根據(jù)匹配結(jié)果,確定該被測(cè)系統(tǒng)存在的漏洞。
[0008]本發(fā)明的實(shí)施方式還提供了一種自動(dòng)化的漏洞檢測(cè)裝置,包括:記錄模塊,用于記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄;以及匹配模塊,用于將該記錄模塊記錄的該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配;確定模塊,用于根據(jù)該匹配模塊進(jìn)行匹配所產(chǎn)生的匹配結(jié)果,確定該被測(cè)系統(tǒng)存在的漏洞。
[0009]本發(fā)明實(shí)施方式相對(duì)于現(xiàn)有技術(shù)而言,通過(guò)記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄(如訪問(wèn)被測(cè)系統(tǒng)時(shí)產(chǎn)生的數(shù)據(jù),包括發(fā)送至系統(tǒng)的數(shù)據(jù)和從系統(tǒng)接收到的數(shù)據(jù)),然后利用預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則分別來(lái)對(duì)這些訪問(wèn)記錄進(jìn)行檢測(cè),以確定這些訪問(wèn)記錄能否匹配到某些漏洞檢測(cè)規(guī)則,然后根據(jù)匹配結(jié)果,自動(dòng)化地確定相關(guān)漏洞。此種方式,在漏洞檢測(cè)規(guī)則設(shè)定好之后,就可以自動(dòng)化地對(duì)系統(tǒng)的漏洞進(jìn)行檢測(cè),從而可以提高檢測(cè)效率,并且該種方式無(wú)需實(shí)際的測(cè)試人員懂得相關(guān)漏洞檢測(cè)規(guī)則,因此對(duì)測(cè)試人員的要求也比較低,適合普通的測(cè)試人員(如功能測(cè)試人員)使用。
[0010]另外,對(duì)該被測(cè)系統(tǒng)進(jìn)行訪問(wèn)是指對(duì)該被測(cè)系統(tǒng)中的網(wǎng)頁(yè)進(jìn)行訪問(wèn),其中該訪問(wèn)記錄包括:對(duì)該被測(cè)系統(tǒng)中網(wǎng)頁(yè)的訪問(wèn)請(qǐng)求以及對(duì)應(yīng)的訪問(wèn)響應(yīng)。本實(shí)施方式,比較適合于對(duì)網(wǎng)頁(yè)服務(wù)系統(tǒng)的安全漏洞進(jìn)行檢測(cè)。
[0011]另外,在所述記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄之前,還包括:建立代理系統(tǒng),對(duì)該被測(cè)系統(tǒng)的訪問(wèn)均通過(guò)該代理系統(tǒng)進(jìn)行。本實(shí)施方式,通過(guò)在瀏覽器客戶端和網(wǎng)頁(yè)服務(wù)器之間建立一個(gè)代理系統(tǒng),就可以記錄對(duì)系統(tǒng)進(jìn)行訪問(wèn)所產(chǎn)生的訪問(wèn)記錄。
[0012]另外,所述將該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配,包括:對(duì)該訪問(wèn)記錄進(jìn)行去重復(fù)操作,以得到去重后的訪問(wèn)記錄;將該去重后的訪問(wèn)記錄分別與該預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配。由于本實(shí)施方式的漏洞檢測(cè)方式可以由普通測(cè)試人員使用,例如功能測(cè)試人員,即本實(shí)施方式的漏洞檢測(cè)可以與功能測(cè)試整合為一體,而功能測(cè)試時(shí)容易反復(fù)產(chǎn)生重復(fù)的訪問(wèn)記錄(如同一個(gè)商品網(wǎng)頁(yè)反復(fù)訪問(wèn)),因此本實(shí)施方式增加一去重操作來(lái)對(duì)訪問(wèn)記錄進(jìn)行優(yōu)化,以減少后續(xù)漏洞檢測(cè)規(guī)則匹配中所處理的數(shù)據(jù)量,以提高處理效率。
[0013]另外,所述確定該被測(cè)系統(tǒng)存在的漏洞之后,還包括:顯示該確定的漏洞以及該漏洞的相關(guān)參數(shù)。本實(shí)施方式中,通過(guò)顯示確定的漏洞及相關(guān)參數(shù),這樣測(cè)試人員可以及時(shí)給其他人員反饋并解決相關(guān)漏洞問(wèn)題。其中,顯示漏洞相關(guān)的參數(shù)(如漏洞的規(guī)則,或者漏洞可能由什么導(dǎo)致的)的考慮在于,其中系統(tǒng)建立階段設(shè)計(jì)漏洞檢測(cè)規(guī)則的人員,與系統(tǒng)運(yùn)行階段實(shí)際維護(hù)漏洞檢測(cè)規(guī)則的人員,以及測(cè)試階段實(shí)際檢測(cè)漏洞的人員一般是不同的,因此顯示漏洞相關(guān)的參數(shù)有助于相關(guān)人員(各階段的人員或者其他人員)盡快認(rèn)識(shí)到漏洞的情形,從而能夠更快地對(duì)漏洞進(jìn)行修改,提高修復(fù)效率。
【附圖說(shuō)明】
[0014]圖1是根據(jù)本發(fā)明第一實(shí)施方式的自動(dòng)化的漏洞檢測(cè)方法的流程示意圖;
[0015]圖2是根據(jù)本發(fā)明第二實(shí)施方式的自動(dòng)化的漏洞檢測(cè)方法的流程示意圖;
[0016]圖3是本發(fā)明實(shí)施方式中搭建的代理系統(tǒng)的結(jié)構(gòu)示意圖;
[0017]圖4是根據(jù)本發(fā)明第三實(shí)施方式的自動(dòng)化的漏洞檢測(cè)裝置的結(jié)構(gòu)示意圖;
[0018]圖5是根據(jù)本發(fā)明第四實(shí)施方式的自動(dòng)化的漏洞檢測(cè)裝置的結(jié)構(gòu)示意圖;
[0019]圖6是根據(jù)本發(fā)明第五實(shí)施方式的自動(dòng)化的漏洞檢測(cè)裝置的結(jié)構(gòu)示意圖;
[0020]圖7是根據(jù)本發(fā)明第六實(shí)施方式的自動(dòng)化的漏洞檢測(cè)裝置的結(jié)構(gòu)示意圖;
[0021]圖8是根據(jù)本發(fā)明第七實(shí)施方式的http(超文本傳輸協(xié)議)代理服務(wù)器的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0022]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對(duì)本發(fā)明的各實(shí)施方式進(jìn)行詳細(xì)的闡述。在本發(fā)明各實(shí)施方式中,為了使讀者更好地理解本申請(qǐng)而提出了許多技術(shù)細(xì)節(jié)。但是,即使沒(méi)有這些技術(shù)細(xì)節(jié)和基于以下各實(shí)施方式的種種變化和修改,也可以實(shí)現(xiàn)本申請(qǐng)各權(quán)利要求所要求保護(hù)的技術(shù)方案。
[0023]本發(fā)明的第一實(shí)施方式涉及一種自動(dòng)化的漏洞檢測(cè)方法。具體流程如圖1所示。具體包括:
[0024]步驟11:記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄。
[0025]步驟12:將該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配。其中,訪問(wèn)記錄包括:對(duì)被測(cè)系統(tǒng)中網(wǎng)頁(yè)的訪問(wèn)請(qǐng)求以及對(duì)應(yīng)的訪問(wèn)響應(yīng)。
[0026]步驟13:根據(jù)匹配結(jié)果,確定該被測(cè)系統(tǒng)存在的漏洞。
[0027]其中,在步驟11中,被測(cè)系統(tǒng)例如可以為網(wǎng)頁(yè)服務(wù)系統(tǒng),如網(wǎng)購(gòu)系統(tǒng)。其中記錄的訪問(wèn)記錄可以有多條,一般而言,記錄的訪問(wèn)記錄越多且詳細(xì),越有利于后續(xù)的漏洞檢測(cè)。并且,本實(shí)施方式的漏洞檢測(cè)可以與功能測(cè)試相結(jié)合,即在功能測(cè)試中記錄功能測(cè)試時(shí)記錄相應(yīng)的訪問(wèn)記錄。需要說(shuō)明的是,將功能測(cè)試與本實(shí)施方式的漏洞檢測(cè)相結(jié)合,可以減少測(cè)試的次數(shù);同時(shí),功能測(cè)試時(shí)一般會(huì)較全面地對(duì)系統(tǒng)中的各個(gè)網(wǎng)頁(yè)進(jìn)行訪問(wèn),因此功能測(cè)試時(shí)所產(chǎn)生的訪問(wèn)記錄一般較全面,有利于漏洞檢測(cè)。
[0028]其中,在步驟11中的訪問(wèn)記錄中每一條訪問(wèn)記錄可以包括:對(duì)該被測(cè)系統(tǒng)中網(wǎng)頁(yè)的訪問(wèn)請(qǐng)求(如http訪問(wèn)請(qǐng)求)以及對(duì)應(yīng)的訪問(wèn)響應(yīng)。
[0029]其中,在步驟12中,預(yù)先設(shè)置了多個(gè)漏洞檢測(cè)規(guī)則,例如XSS漏洞檢測(cè)規(guī)則、命令執(zhí)行漏洞檢測(cè)規(guī)則、文件包含漏洞檢測(cè)規(guī)則,等等。從而在步驟12中,可以利用步驟11記錄到的數(shù)據(jù)(即訪問(wèn)記錄)來(lái)依次與這些漏洞檢測(cè)規(guī)則進(jìn)行匹配,以識(shí)別這些記錄到的數(shù)據(jù)具體能夠匹配到哪些漏洞檢測(cè)規(guī)則,對(duì)于能夠匹配到規(guī)則的響應(yīng)結(jié)果,則說(shuō)明該被被測(cè)系統(tǒng)存在該漏洞檢測(cè)規(guī)則所描述的漏洞。
[0030]其中,對(duì)于系統(tǒng)層面而言,步驟11得到的訪問(wèn)記錄實(shí)質(zhì)上為一些代碼數(shù)據(jù),而步驟12即是利用該代碼數(shù)據(jù)來(lái)匹配預(yù)設(shè)的多個(gè)漏洞檢測(cè)。
[0031]其中,在步驟13中,可以根據(jù)步驟12得到的匹配結(jié)果,確定被測(cè)系統(tǒng)存在的漏洞,例如當(dāng)在步驟12中發(fā)現(xiàn)步驟11記錄的數(shù)據(jù)能夠匹配到XSS漏洞檢測(cè)規(guī)則時(shí),在步驟13中確定被測(cè)系統(tǒng)中存在XSS漏洞。
[0032]本發(fā)明實(shí)施方式相對(duì)于現(xiàn)有技術(shù)而言,通過(guò)記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄(如訪問(wèn)被測(cè)系統(tǒng)時(shí)產(chǎn)生的數(shù)據(jù),包括發(fā)送至系統(tǒng)的數(shù)據(jù)和從系統(tǒng)接收到的數(shù)據(jù)),然后利用預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則分別來(lái)對(duì)這些訪問(wèn)記錄進(jìn)行檢測(cè),以確定這些訪問(wèn)記錄能否匹配到某些漏洞檢測(cè)規(guī)則,然后根據(jù)匹配結(jié)果,自動(dòng)化地確定相關(guān)漏洞。此種方式,在漏洞檢測(cè)規(guī)則設(shè)定好之后,就可以自動(dòng)化地對(duì)系統(tǒng)的漏洞進(jìn)行檢測(cè),從而可以提高檢測(cè)效率,并且該種方式無(wú)需實(shí)際的測(cè)試人員懂得相關(guān)漏洞檢測(cè)規(guī)則,因此對(duì)測(cè)試人員的要求也比較低,適合普通的測(cè)試人員(如功能測(cè)試人員)使用。
[0033]本發(fā)明的第二實(shí)施方式涉及一種自動(dòng)化的漏洞檢測(cè)方法。其流程如圖2所示,并且具體包括:
[0034]步驟21:記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄。
[0035]步驟22:對(duì)步驟21記錄到的訪問(wèn)記錄進(jìn)行去重復(fù)操作,以得到去重后的訪問(wèn)記錄;
[0036]步驟23:將該去重后的訪問(wèn)記錄分別與該預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配。
[0037]步驟24:根據(jù)匹配結(jié)果,確定該被測(cè)系統(tǒng)存在的漏洞。以及
[0038]步驟25:顯示該確定的漏洞以及該漏洞的相關(guān)參數(shù)。
[0039]其中,第二實(shí)施方式與第一實(shí)施方式相比,區(qū)別包括:第二實(shí)施方式還包括對(duì)產(chǎn)生的訪問(wèn)記錄執(zhí)行去重操作的操作(即步驟22),然后利用去重后的訪問(wèn)記錄來(lái)進(jìn)行漏洞檢測(cè)。例如測(cè)試訪問(wèn)時(shí)產(chǎn)生了 100個(gè)URL (Uni form Resource Locator,全球資源定位符,或稱為“網(wǎng)址”),該URL也就是前述的訪問(wèn)記錄。經(jīng)去重后只有80個(gè)URL(因?yàn)樵诓煌5闹貜?fù)下單、 支付,所以存在重復(fù)的URL),然后把去重剩余的80個(gè)URL丟入到漏洞檢測(cè)規(guī)則數(shù)據(jù)庫(kù)中,進(jìn)行漏洞檢測(cè)規(guī)則的匹配。
[0040]其中,第二實(shí)施方式與第一實(shí)施方式相比,其區(qū)別還包括:顯示該確定的漏洞以及該漏洞的相關(guān)參數(shù)(即步驟24)。即最終確定的漏洞檢測(cè)結(jié)果通過(guò)諸如圖形用戶界面等方式顯示出來(lái),以告訴測(cè)試人員某個(gè)URL存在某種類型的漏洞以及它的參數(shù)是什么(即可能由什么原因?qū)е碌?。
[0041]本實(shí)施方式,通過(guò)對(duì)訪問(wèn)記錄進(jìn)行去重操作,以優(yōu)化后續(xù)進(jìn)行漏洞檢測(cè)規(guī)則匹配時(shí)所處理的數(shù)據(jù)量。同時(shí),顯示最終確定的漏洞及相關(guān)參數(shù),以幫助相關(guān)人員盡快對(duì)漏洞進(jìn)行修復(fù)。
[0042]上面各種方法的步驟劃分,只是為了描述清楚,實(shí)現(xiàn)時(shí)可以合并為一個(gè)步驟或者對(duì)某些步驟進(jìn)行拆分,分解為多個(gè)步驟,只要包含相同的邏輯關(guān)系,都在本專利的保護(hù)范圍內(nèi);對(duì)算法中或者流程中添加無(wú)關(guān)緊要的修改或者引入無(wú)關(guān)緊要的設(shè)計(jì),但不改變其算法和流程的核心設(shè)計(jì)都在該專利的保護(hù)范圍內(nèi)。[〇〇43]以上對(duì)本發(fā)明的自動(dòng)化的漏洞檢測(cè)方法進(jìn)行了說(shuō)明,下面對(duì)本發(fā)明的自動(dòng)化檢測(cè)裝置進(jìn)行說(shuō)明。如圖3所示,例如在瀏覽器客戶端和服務(wù)器之間可以搭建http代理服務(wù)器, 而本發(fā)明的自動(dòng)化檢測(cè)裝置即可以部署在該http代理服務(wù)器中或者該http代理服務(wù)器就是指的本發(fā)明的自動(dòng)化檢測(cè)裝置。由瀏覽器客戶端與服務(wù)器之間的交互(即URL訪問(wèn)及URL 響應(yīng),或者h(yuǎn)ttp訪問(wèn)和http響應(yīng))均是通過(guò)該http代理服務(wù)器進(jìn)行,因此在該http代理服務(wù)器中可以設(shè)計(jì)一緩存器,用于緩存瀏覽器客戶端在訪問(wèn)服務(wù)器時(shí)所產(chǎn)生的所有數(shù)據(jù),然后就可以利用這些數(shù)據(jù)去跑一遍這些事先設(shè)定好的漏洞檢測(cè)規(guī)則,每符合其中的一個(gè)漏洞檢測(cè)規(guī)則,就代表存在一種類型的漏洞,最后把所有掃描出來(lái)的結(jié)果通過(guò)數(shù)據(jù)庫(kù)顯示出來(lái)。具體的,本發(fā)明的自動(dòng)化的漏洞檢測(cè)裝置或者h(yuǎn)ttp代理服務(wù)器可以參考下述描述。
[0044]本發(fā)明第三實(shí)施方式涉及一種自動(dòng)化的漏洞檢測(cè)裝置4,如圖4所示,其包括:
[0045]記錄模塊41,用于記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄。以及[〇〇46]匹配模塊42,用于將該記錄模塊41記錄的該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配。[〇〇47]確定模塊43,用于根據(jù)該匹配模塊42在進(jìn)行匹配時(shí)所產(chǎn)生的匹配結(jié)果,確定該被測(cè)系統(tǒng)存在的漏洞。
[0048]本實(shí)施方式,在漏洞檢測(cè)規(guī)則設(shè)定好之后,就可以自動(dòng)化地對(duì)系統(tǒng)的漏洞進(jìn)行檢測(cè),從而可以提高檢測(cè)效率,并且該種方式無(wú)需實(shí)際的測(cè)試人員懂得相關(guān)漏洞檢測(cè)規(guī)則,因此對(duì)測(cè)試人員的要求也比較低,適合普通的測(cè)試人員(如功能測(cè)試人員)使用。
[0049]本發(fā)明第四實(shí)施方式也涉及一種自動(dòng)化的漏洞檢測(cè)裝置4,如圖5所示。第四實(shí)施方式與第三實(shí)施方式之間的不同在于,其還包括:http代理模塊44,用于代理對(duì)該被測(cè)系統(tǒng)的http訪問(wèn)。通過(guò)該http代理模塊44來(lái)代理對(duì)被測(cè)系統(tǒng)的http訪問(wèn),這樣對(duì)被測(cè)系統(tǒng)所有訪問(wèn)所產(chǎn)生的數(shù)據(jù)都可以被自動(dòng)化的漏洞檢測(cè)裝置4檢測(cè)出來(lái),從而為后續(xù)的漏洞檢測(cè)提供數(shù)據(jù)支撐。需要說(shuō)明的是,http是最常見(jiàn)的對(duì)系統(tǒng)的訪問(wèn)方式,如果采用其他的訪問(wèn)方式,本實(shí)施方式的http代理模塊44也可以替換為其他類型的代理模塊,這些均在本發(fā)明的精神范圍內(nèi)。
[0050]本發(fā)明第五實(shí)施方式也涉及一種自動(dòng)化的漏洞檢測(cè)裝置4,如圖6所示。第五實(shí)施方式與第三實(shí)施方式之間的不同在于,其還包括:去重模塊45,用于對(duì)記錄模塊41記錄的訪問(wèn)記錄進(jìn)行去重復(fù)操作,以得到去重后的訪問(wèn)記錄。而該匹配模塊42,用于將該去重后的訪問(wèn)記錄分別與該預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配。由于在訪問(wèn)被測(cè)系統(tǒng)時(shí),可能會(huì)產(chǎn)生許多重復(fù)的數(shù)據(jù),因此進(jìn)行去重操作,可以簡(jiǎn)化后續(xù)漏洞檢測(cè)時(shí)需處理的數(shù)據(jù)量,從而可以提尚檢測(cè)效率。[〇〇51]本發(fā)明第六實(shí)施方式也涉及一種自動(dòng)化的漏洞檢測(cè)裝置4,如圖7所示。第六實(shí)施方式與第三實(shí)施方式之間的不同在于,其還包括:顯示模塊46,用于顯示該確定模塊43確定的漏洞以及該漏洞的相關(guān)參數(shù)。其中,將確定的漏洞及相關(guān)的參數(shù)顯示出來(lái),有助于對(duì)漏洞的快速修復(fù)。
[0052]不難發(fā)現(xiàn),上述各裝置實(shí)施方式與上述各方法實(shí)施方式可以相配合實(shí)施。上述方法實(shí)施方式中提到的相關(guān)技術(shù)細(xì)節(jié)在上述的裝置實(shí)施方式中依然有效,為了減少重復(fù),這里不再贅述。相應(yīng)地,上述裝置的實(shí)施方式中提到的相關(guān)技術(shù)細(xì)節(jié)也可應(yīng)用在上述方法的實(shí)施方式中。[〇〇53]值得一提的是,上述裝置實(shí)施方式中所涉及到的各模塊均為邏輯模塊,在實(shí)際應(yīng)用中,一個(gè)邏輯單元可以是一個(gè)物理單元,也可以是一個(gè)物理單元的一部分,還可以以多個(gè)物理單元的組合實(shí)現(xiàn)。此外,為了突出本發(fā)明的創(chuàng)新部分,本實(shí)施方式中并沒(méi)有將與解決本發(fā)明所提出的技術(shù)問(wèn)題關(guān)系不太密切的單元引入,但這并不表明本實(shí)施方式中不存在其它的單元。[〇〇54]下面再舉一例,說(shuō)明上述裝置實(shí)施方式中的各模塊可以由具體的物理單元實(shí)現(xiàn)。
[0055]本發(fā)明第七實(shí)施方式涉及一種http代理服務(wù)器5,如圖8所示,其包括:緩存器51、 處理器52、收發(fā)器53及顯示器54。其中緩存器51主要用于緩存瀏覽器客戶端訪問(wèn)服務(wù)器時(shí)所產(chǎn)生的訪問(wèn)記錄。其中處理器52主要實(shí)現(xiàn)如下功能:作為瀏覽器客戶端的代理系統(tǒng),提供相應(yīng)的代理功能;利用預(yù)設(shè)的漏洞檢測(cè)規(guī)則來(lái)對(duì)緩存器52中緩存的數(shù)據(jù)進(jìn)行漏洞檢測(cè),以確定漏洞及相關(guān)的參數(shù)。其中,收發(fā)器53主要用于負(fù)責(zé)與瀏覽器客戶端和服務(wù)器之間的交互,即將來(lái)自瀏覽器客戶端的訪問(wèn)請(qǐng)求轉(zhuǎn)發(fā)至服務(wù)器,以及將服務(wù)器的訪問(wèn)響應(yīng)轉(zhuǎn)發(fā)至瀏覽器客戶端。其中,顯示器54主要用于顯示處理器52所確定到的漏洞及相關(guān)參數(shù)。其中,需要說(shuō)明的是,處理器52為系統(tǒng)的核心,而緩存器51、收發(fā)器53及顯示器54所執(zhí)行的功能均可以在處理器52的協(xié)調(diào)和控制下完成的。
[0056]前述已經(jīng)從不同層面對(duì)本發(fā)明的自動(dòng)化的漏洞檢測(cè)方法及裝置進(jìn)行了說(shuō)明,下面再舉一個(gè)詳細(xì)示例說(shuō)明本發(fā)明。需要說(shuō)明的是,下述示例涵蓋了本發(fā)明的一些設(shè)計(jì)思路和較細(xì)節(jié)的實(shí)現(xiàn)方式,但這些都僅不應(yīng)理解為本發(fā)明的限制;顯然本領(lǐng)域技術(shù)人員在閱讀完了以下實(shí)施方式之后,可以根據(jù)實(shí)際情況而省略、修改或替換相關(guān)的實(shí)施細(xì)節(jié),而這些變化均包含在本發(fā)明的范圍內(nèi)。
[0057]具體而言,本實(shí)施方式根據(jù)各種各樣的漏洞檢測(cè)規(guī)則(即各種漏洞檢測(cè)插件)搭建一套代理(proxy)系統(tǒng)作為檢測(cè)漏洞的掃描器,并且它上面帶有一定容量的緩存器 (Redis),用于記錄通過(guò)該代理系統(tǒng)訪問(wèn)服務(wù)器時(shí)所產(chǎn)生的所有數(shù)據(jù);然后把緩存器中的內(nèi)容都去跑一遍這些事先設(shè)定的漏洞檢測(cè)規(guī)則,每符合其中的一個(gè)漏洞檢測(cè)規(guī)則,就代表存在一種該類型的漏洞,最后把所有掃描出來(lái)的結(jié)果通過(guò)數(shù)據(jù)庫(kù)顯示出來(lái),告訴測(cè)試人員存在某種類型的漏洞以及它的參數(shù)是什么(即具體存在什么樣的漏洞或者可能由什么導(dǎo)致的),這樣測(cè)試人員可以及時(shí)給研發(fā)反饋并解決問(wèn)題。
[0058] 該掃描器可以針對(duì)網(wǎng)站http的測(cè)試。正常的網(wǎng)站請(qǐng)求是從瀏覽器到服務(wù)端,可以在他們之間加入一個(gè)http代理(如掃描器),在這個(gè)代理里面會(huì)看到測(cè)試人員的所有請(qǐng)求與響應(yīng),因?yàn)樵摯碓谥虚g去做了這個(gè)中轉(zhuǎn)工作,這個(gè)代理可以相當(dāng)于瀏覽器本地代理,即通過(guò)本地代理的方式把所有的請(qǐng)求與響應(yīng)打到本地代理的某個(gè)端口(如8080)上。[〇〇59] 測(cè)試人員在測(cè)試過(guò)程中的所有請(qǐng)求與響應(yīng)都會(huì)經(jīng)過(guò)本地的8080端口,打到代理的緩存器(redis)里面,即把所有的請(qǐng)求與響應(yīng)都緩存起來(lái),緩存器會(huì)記錄測(cè)試人員訪問(wèn)的一堆URL,并會(huì)把所有的URL都抓取下來(lái)做一個(gè)去重操作,例如測(cè)試訪問(wèn)了 100個(gè)URL經(jīng)去重后只有80個(gè)URL,因?yàn)樗诓煌5闹貜?fù)下單、支付,然后把去重剩余的80個(gè)URL丟入到自動(dòng)化測(cè)試工具中,去跑事先設(shè)定的這一堆規(guī)則,最后把所有掃描出來(lái)的結(jié)果通過(guò)數(shù)據(jù)庫(kù)顯示出來(lái), 告訴測(cè)試人員某個(gè)URL存在某種類型的漏洞以及它的參數(shù)是什么(即可能由什么原因?qū)е?。
[0060]本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤、只讀存儲(chǔ)記憶體(Read-Only Memory,ROM)或隨機(jī)存儲(chǔ)記憶體(Random Access Memory,RAM)等。[〇〇61]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種自動(dòng)化的漏洞檢測(cè)方法,其特征在于,包括: 記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄; 將該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配; 根據(jù)匹配結(jié)果,確定該被測(cè)系統(tǒng)存在的漏洞。2.根據(jù)權(quán)利要求1所述的自動(dòng)化漏洞檢測(cè)方法,其特征在于,所述訪問(wèn)記錄包括:對(duì)所述被測(cè)系統(tǒng)中網(wǎng)頁(yè)的訪問(wèn)請(qǐng)求以及對(duì)應(yīng)的訪問(wèn)響應(yīng)。3.根據(jù)權(quán)利要求2所述的自動(dòng)化的漏洞檢測(cè)方法,其特征在于,在所述記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄之前,還包括: 建立代理系統(tǒng),對(duì)所述被測(cè)系統(tǒng)的訪問(wèn)均通過(guò)該代理系統(tǒng)進(jìn)行。4.根據(jù)權(quán)利要求3所述的自動(dòng)化的漏洞檢測(cè)方法,其特征在于,所述記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄,包括: 利用該代理系統(tǒng)中的緩存器來(lái)記錄對(duì)該被系統(tǒng)進(jìn)行訪問(wèn)所產(chǎn)生的訪問(wèn)記錄。5.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的自動(dòng)化的漏洞檢測(cè)方法,其特征在于,所述將該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配,包括: 對(duì)該訪問(wèn)記錄進(jìn)行去重復(fù)操作,以得到去重后的訪問(wèn)記錄; 將該去重后的訪問(wèn)記錄分別與該預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配。6.根據(jù)權(quán)利要求1至4中任一項(xiàng)所述的自動(dòng)化的漏洞檢測(cè)方法,其特征在于,所述確定該被測(cè)系統(tǒng)存在的漏洞之后,還包括: 顯示該確定的漏洞以及該漏洞的相關(guān)參數(shù)。7.—種自動(dòng)化的漏洞檢測(cè)裝置,其特征在于,包括: 記錄模塊,用于記錄對(duì)被測(cè)系統(tǒng)進(jìn)行訪問(wèn)時(shí)所產(chǎn)生的訪問(wèn)記錄;以及匹配模塊,用于將該記錄模塊記錄的該訪問(wèn)記錄分別與預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配; 確定模塊,用于根據(jù)該匹配模塊進(jìn)行匹配所產(chǎn)生的匹配結(jié)果,確定該被測(cè)系統(tǒng)存在的漏洞。8.根據(jù)權(quán)利要求7所述的自動(dòng)化漏洞檢測(cè)裝置,其特征在于,對(duì)該被測(cè)系統(tǒng)進(jìn)行訪問(wèn)是指對(duì)該被測(cè)系統(tǒng)中的網(wǎng)頁(yè)進(jìn)行訪問(wèn),其中該訪問(wèn)記錄包括:對(duì)該被測(cè)系統(tǒng)中網(wǎng)頁(yè)的訪問(wèn)請(qǐng)求以及對(duì)應(yīng)的訪問(wèn)響應(yīng)。9.根據(jù)權(quán)利要求8所述的自動(dòng)化的漏洞檢測(cè)裝置,其特征在于,還包括: 代理模塊,用于代理對(duì)該被測(cè)系統(tǒng)的訪問(wèn)。10.根據(jù)權(quán)利要求8所述的自動(dòng)化的漏洞檢測(cè)裝置,其特征于,還包括:去重模塊,用于對(duì)記錄模塊記錄的該訪問(wèn)記錄進(jìn)行去重復(fù)操作,以得到去重后的訪問(wèn)記錄; 所述匹配模塊,用于將該去重后的訪問(wèn)記錄分別與該預(yù)設(shè)的多個(gè)漏洞檢測(cè)規(guī)則進(jìn)行匹配。
【文檔編號(hào)】G06F21/57GK106055985SQ201610379804
【公開(kāi)日】2016年10月26日
【申請(qǐng)日】2016年5月31日
【發(fā)明人】車祺豐
【申請(qǐng)人】樂(lè)視控股(北京)有限公司, 樂(lè)視電子商務(wù)(北京)有限公司