如何更有效使用Rational AppScan 掃描大型網(wǎng)站
Rational AppScan(簡(jiǎn)稱 AppScan)其實(shí)是一個(gè)產(chǎn)品家族,包括眾多的應(yīng)用安全掃描產(chǎn)品,從開(kāi)發(fā)階段的源代碼掃描的 AppScan source edition,到針對(duì) Web 應(yīng)用進(jìn)行快速掃描的 AppScan standard edition,以及進(jìn)行安全管理和匯總整合的 AppScan enterprise Edition 等。我們經(jīng)常說(shuō)的 AppScan 就是指的桌面版本的 AppScan,即 AppScan standard edition。其安裝在 Windows 操作系統(tǒng)上,可以對(duì)網(wǎng)站等 Web 應(yīng)用進(jìn)行自動(dòng)化的應(yīng)用安全掃描和測(cè)試。
來(lái)張 AppScan 的截圖,用圖表說(shuō)話,更明確。
圖 1. AppScan 標(biāo)準(zhǔn)版界面
請(qǐng)注意右上角,單擊“掃描”下面的小三角,可以出現(xiàn)如下的三個(gè)選型“繼續(xù)完全掃描”、“繼續(xù)僅探索”、“繼續(xù)僅測(cè)試”,有木有?什么意思?理解了這個(gè)地方,就理解了 AppScan 的工作原理,我們慢慢展開(kāi):
還沒(méi)有正式開(kāi)始安全測(cè)試之前,所以先不管“繼續(xù)”,直接來(lái)討論“完全掃描”,“僅探索”,“僅測(cè)試”三個(gè)名詞:
AppScan 三個(gè)核心要素
AppScan 是對(duì)網(wǎng)站等 Web 應(yīng)用進(jìn)行安全攻擊來(lái)檢查網(wǎng)站是否存在安全漏洞;既然是攻擊,需要有明確的攻擊對(duì)象吧,比如北約現(xiàn)在的對(duì)象就是卡扎菲上校還有他的軍隊(duì)。對(duì)網(wǎng)站來(lái)說(shuō),一個(gè)網(wǎng)站存在的頁(yè)面,可能成千上萬(wàn)。每個(gè)頁(yè)面也都可能存在多個(gè)字段(參數(shù)),比如一個(gè)登陸界面,至少要輸入用戶名和密碼吧,這就是一個(gè)頁(yè)面存在兩個(gè)字段,你提交了用戶名密碼等登陸信息,網(wǎng)站總要有地方接受并且檢查是否正確吧,這就可能存在一個(gè)新的檢查頁(yè)面。這里的每個(gè)頁(yè)面的每個(gè)參數(shù)都可能存在安全漏洞,所有都是被攻擊對(duì)象,都需要來(lái)檢查。
這就存在一個(gè)問(wèn)題,我們來(lái)負(fù)責(zé)來(lái)檢查一個(gè)網(wǎng)站的安全性,這個(gè)網(wǎng)站有多少個(gè)頁(yè)面,有多少個(gè)參數(shù),頁(yè)面之間如何跳轉(zhuǎn),我們可能并不明確,如何知道這些信息?看起來(lái)很復(fù)雜,盤(pán)根錯(cuò)節(jié);那就更需要找到那個(gè)線索,提綱挈領(lǐng);想一想,訪問(wèn)一個(gè)網(wǎng)站的時(shí)候,我們需要知道的最重要的信息是哪個(gè)?網(wǎng)站主頁(yè)地址吧?從網(wǎng)站地址開(kāi)始,很多其他頻道,其他頁(yè)面都可以鏈接過(guò)去,對(duì)不對(duì),那么可不可以有種技術(shù),告訴了它網(wǎng)站的入口地址,然后它“順藤摸瓜”,找出其他的網(wǎng)頁(yè)和頁(yè)面參數(shù)?OK,這就是“爬蟲(chóng)”技術(shù),具體說(shuō),是“網(wǎng)站爬蟲(chóng)”,其利用了網(wǎng)頁(yè)的請(qǐng)求都是用 http 協(xié)議發(fā)送的,發(fā)送和返回的內(nèi)容都是統(tǒng)一的語(yǔ)言 HTML,那么對(duì) HTML 語(yǔ)言進(jìn)行分析,找到里面的參數(shù)和鏈接,紀(jì)錄并繼續(xù)發(fā)送之,最終,找到了這個(gè)網(wǎng)站的眾多的頁(yè)面和目錄。這個(gè)能力 AppScan 就提供了,這里的術(shù)語(yǔ)叫“探索”,explorer,就是去發(fā)現(xiàn),去分析,了解未知的,并記錄之。
在使用 AppScan 的時(shí)候,要配置的第一個(gè)就是要檢查的網(wǎng)站的地址,配置了以后,AppScan 就會(huì)利用“探索”技術(shù)去發(fā)現(xiàn)這個(gè)網(wǎng)站存在多少個(gè)目錄,多少個(gè)頁(yè)面,頁(yè)面中有哪些參數(shù)等,簡(jiǎn)單說(shuō),了解了你的網(wǎng)站的結(jié)構(gòu)。
“探索”了解了,測(cè)試的目標(biāo)和范圍就大致確定了,然后呢,利用“軍火庫(kù)”,發(fā)送導(dǎo)彈,進(jìn)行安全攻擊,這個(gè)過(guò)程就是“測(cè)試”;針對(duì)發(fā)現(xiàn)的每個(gè)頁(yè)面的每個(gè)參數(shù),進(jìn)行安全檢查,檢查的彈藥就來(lái)自 AppScan 的掃描規(guī)則庫(kù),其類似殺毒軟件的病毒庫(kù),具體可以檢查的安全攻擊類型都在里面做好了,我們?nèi)ナ褂眉纯伞?/p>
那么什么是“完全測(cè)試呢”,完全測(cè)試就是把上面的兩個(gè)步驟整合起來(lái),“探索”+“測(cè)試”;在安全測(cè)試過(guò)程中,可以先只進(jìn)行探索,不進(jìn)行測(cè)試,目的是了解被測(cè)的網(wǎng)站結(jié)構(gòu),評(píng)估范圍;然后選擇“繼續(xù)僅測(cè)試”,只對(duì)前面探索過(guò)的頁(yè)面進(jìn)行測(cè)試,不對(duì)新發(fā)現(xiàn)的頁(yè)面進(jìn)行測(cè)試。“完全測(cè)試”就是把兩個(gè)步驟結(jié)合在一起,一邊探索,一邊測(cè)試。
posted on 2013-09-24 10:29 順其自然EVO 閱讀(239) 評(píng)論(0) 編輯 收藏 所屬分類: web 前端性能測(cè)試 、安全性測(cè)試