qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          如何更有效使用Rational AppScan 掃描大型網(wǎng)站

            Rational AppScan 工作原理

            Rational AppScan(簡稱 AppScan)其實(shí)是一個產(chǎn)品家族,包括眾多的應(yīng)用安全掃描產(chǎn)品,從開發(fā)階段的源代碼掃描的 AppScan source edition,到針對 Web 應(yīng)用進(jìn)行快速掃描的 AppScan standard edition,以及進(jìn)行安全管理和匯總整合的 AppScan enterprise Edition 等。我們經(jīng)常說的 AppScan 就是指的桌面版本的 AppScan,即 AppScan standard edition。其安裝在 Windows 操作系統(tǒng)上,可以對網(wǎng)站等 Web 應(yīng)用進(jìn)行自動化的應(yīng)用安全掃描和測試

            來張 AppScan 的截圖,用圖表說話,更明確。

            圖 1. AppScan 標(biāo)準(zhǔn)版界面

            請注意右上角,單擊“掃描”下面的小三角,可以出現(xiàn)如下的三個選型“繼續(xù)完全掃描”、“繼續(xù)僅探索”、“繼續(xù)僅測試”,有木有?什么意思?理解了這個地方,就理解了 AppScan 的工作原理,我們慢慢展開:

            還沒有正式開始安全測試之前,所以先不管“繼續(xù)”,直接來討論“完全掃描”,“僅探索”,“僅測試”三個名詞:

            AppScan 三個核心要素

            AppScan 是對網(wǎng)站等 Web 應(yīng)用進(jìn)行安全攻擊來檢查網(wǎng)站是否存在安全漏洞;既然是攻擊,需要有明確的攻擊對象吧,比如北約現(xiàn)在的對象就是卡扎菲上校還有他的軍隊。對網(wǎng)站來說,一個網(wǎng)站存在的頁面,可能成千上萬。每個頁面也都可能存在多個字段(參數(shù)),比如一個登陸界面,至少要輸入用戶名和密碼吧,這就是一個頁面存在兩個字段,你提交了用戶名密碼等登陸信息,網(wǎng)站總要有地方接受并且檢查是否正確吧,這就可能存在一個新的檢查頁面。這里的每個頁面的每個參數(shù)都可能存在安全漏洞,所有都是被攻擊對象,都需要來檢查。

            這就存在一個問題,我們來負(fù)責(zé)來檢查一個網(wǎng)站的安全性,這個網(wǎng)站有多少個頁面,有多少個參數(shù),頁面之間如何跳轉(zhuǎn),我們可能并不明確,如何知道這些信息?看起來很復(fù)雜,盤根錯節(jié);那就更需要找到那個線索,提綱挈領(lǐng);想一想,訪問一個網(wǎng)站的時候,我們需要知道的最重要的信息是哪個?網(wǎng)站主頁地址吧?從網(wǎng)站地址開始,很多其他頻道,其他頁面都可以鏈接過去,對不對,那么可不可以有種技術(shù),告訴了它網(wǎng)站的入口地址,然后它“順藤摸瓜”,找出其他的網(wǎng)頁和頁面參數(shù)?OK,這就是“爬蟲”技術(shù),具體說,是“網(wǎng)站爬蟲”,其利用了網(wǎng)頁的請求都是用 http 協(xié)議發(fā)送的,發(fā)送和返回的內(nèi)容都是統(tǒng)一的語言 HTML,那么對 HTML 語言進(jìn)行分析,找到里面的參數(shù)和鏈接,紀(jì)錄并繼續(xù)發(fā)送之,最終,找到了這個網(wǎng)站的眾多的頁面和目錄。這個能力 AppScan 就提供了,這里的術(shù)語叫“探索”,explorer,就是去發(fā)現(xiàn),去分析,了解未知的,并記錄之。

            在使用 AppScan 的時候,要配置的第一個就是要檢查的網(wǎng)站的地址,配置了以后,AppScan 就會利用“探索”技術(shù)去發(fā)現(xiàn)這個網(wǎng)站存在多少個目錄,多少個頁面,頁面中有哪些參數(shù)等,簡單說,了解了你的網(wǎng)站的結(jié)構(gòu)。

            “探索”了解了,測試的目標(biāo)和范圍就大致確定了,然后呢,利用“軍火庫”,發(fā)送導(dǎo)彈,進(jìn)行安全攻擊,這個過程就是“測試”;針對發(fā)現(xiàn)的每個頁面的每個參數(shù),進(jìn)行安全檢查,檢查的彈藥就來自 AppScan 的掃描規(guī)則庫,其類似殺毒軟件的病毒庫,具體可以檢查的安全攻擊類型都在里面做好了,我們?nèi)ナ褂眉纯伞?/p>

            那么什么是“完全測試呢”,完全測試就是把上面的兩個步驟整合起來,“探索”+“測試”;在安全測試過程中,可以先只進(jìn)行探索,不進(jìn)行測試,目的是了解被測的網(wǎng)站結(jié)構(gòu),評估范圍;然后選擇“繼續(xù)僅測試”,只對前面探索過的頁面進(jìn)行測試,不對新發(fā)現(xiàn)的頁面進(jìn)行測試。“完全測試”就是把兩個步驟結(jié)合在一起,一邊探索,一邊測試。

          posted on 2013-09-24 10:29 順其自然EVO 閱讀(238) 評論(0)  編輯  收藏 所屬分類: web 前端性能測試安全性測試

          <2013年9月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 若尔盖县| 浦城县| 凤台县| 南川市| 阿坝县| 同江市| 平陆县| 平阴县| 铜山县| 隆回县| 柯坪县| 阿合奇县| 惠安县| 建始县| 金阳县| 平舆县| 宝丰县| 南康市| 金坛市| 晋州市| 浑源县| 社会| 康马县| 城口县| 文水县| 新晃| 桃园市| 万州区| 全椒县| 垫江县| 观塘区| 湘阴县| 杭锦旗| 昌邑市| 保山市| 沁水县| 东台市| 盱眙县| 黄骅市| 河津市| 怀安县|