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