Appscan_web安全測試工具 (含修改啓動瀏覽器的方法)

 

安全測試應該是測試中很是重要的一部分,但他經常最容易被忽視掉。html

 

  儘管國內常常出現各類安全事件,但沒有真正的引發人們的注意。無論是開發仍是測試都不太關注產品的安全。固然,這也不能怪咱們苦B的「民工兄弟」。由於公司的所給咱們的時間與精力只要求咱們對產品的功能的實現以及保證功能的正常運行。一方面出於僥倖心理。誰沒事會攻擊我?web

 

     關於安全測試方面的資料也不多,不少人所知道的就是一本書,一個工具。面試

 

  一本書值《web安全測試》,這應該是安全測試領域維數很少又被你們熟知的安全測試書,我曾看過前面幾個章節,唉,鄙視一下本身,作事總喜歡有始無終。寫得很是好,介紹了許多安全方面的工具和知識。我以爲就算你不去作專業的安全開發\測試人員。起碼能夠開闊你的視野,使你在作開發或測試時可以考慮到產品安全方面的設計。防患於未然老是好的,若是你想成爲一個優秀的人。chrome

 

  一個工具,其實本文也只是想介紹一下,這個工具----AappScan,IBM的這個web安全掃描工具被許多人熟知,相關資料也不少,由於我也摸了摸它的皮毛,因此也來人說兩句,呵呵!提及sappScan,對它也很有些感情,由於,上一份工做的時候,我摸過於測試相關的許多工具,AappScan是其它一個,當時就以爲這工具這麼強大,並且還這麼傻瓜!!^_^! 因而,後面在面試的簡歷上寫了這個工具,應聘如今的這家公司,幾輪面試下來都問到過這個工具,由於如今這家公司一直在使用這個工具作安全方面的掃描。我想能來這家公司和我熟悉AappScan應該有一點點的關係吧!呵呵api

 

 

 

AappScan下載與安裝

 

 

 

IBM官方下載;http://download2.boulder.ibm.com ... 2-AppScan_Setup.exe瀏覽器

 

    本鏈接爲7.8 簡體中文版本的安全

 

破解補丁;http://www.vdisk.cn/down/index/4760606A4753服務器

 

     破解補丁中有相應的註冊機與破解步驟,生成註冊碼作一下替換就OK了,這裏不細說。app

 

 

  AppScan實際上是一個產品家族,包括衆多的應用安全掃描產品,從開發階段的源代碼掃描的AppScan source edition,到針對WEB應用進行快速掃描的AppScan standard edition.以及進行安全管理和彙總整合的AppScan enterprise Edition等,咱們常常說的AppScan就是指的桌面版本的AppScan,即AppScan standard edition.其安裝在Windows操做系統上,能夠對網站等WEB應用進行自動化的應用安全掃描和測試。webapp

 

 

 

使用AppScan來進行掃描

 

咱們按照PDCA的方法論來進行規劃和討論; 建議的AppScan使用步驟:PDCA: Plan,Do,check, Action and Analysis.

 

 

 

計劃階段:明確目的,進行策略性的選擇和任務分解。

 

1)  明確目的:選擇合適的掃描策略

 

2)  瞭解對象:首先進行探索,瞭解網站結構和規模

 

3)  肯定策略:進行對應的配置

 

a)   按照目錄進行掃描任務的分解

 

b)   按照掃描策略進行掃描任務的分解

 

 

 

執行階段:一邊掃描一遍觀察

 

4)  進行掃描

 

5)  先爬後掃(繼續僅測試)

 

 

 

檢查階段(Check)

 

6)  檢查和調整配置

 

 

 

結果分析(Analysis)

 

7)  對比結果

 

8)  彙總結果(整合和過濾)

 

 

 

AppScan的工做原理

 

  

 

  當咱們單擊「掃描」下面的小三角,能夠出現以下的三個選型「繼續徹底掃描」,「繼續僅探索」,「繼續僅測試「,有木有?什麼意思? 理解了這個地方,就理解了AppScan的工做原理,咱們慢慢展開:

 

尚未正式開始,因此先無論「繼續「,直接來討論’徹底掃描」,「僅探索」,「僅測試」三個名詞: 

 

  AppScan是對網站等WEB應用進行安全攻擊,經過真刀真槍的攻擊,來檢查網站是否存在安全漏洞;既然是攻擊,確定要有明確的攻擊對象吧,好比北約如今的對象就是卡扎菲上校還有他的軍隊。對網站來講,一個網站存在的頁面,可能成千上萬。每一個頁面也均可能存在多個字段(參數),好比一個登錄界面,至少要輸入用戶名和密碼吧,這就是一個頁面存在兩個字段,你提交了用戶名密碼等登錄信息,網站總要有地方接受而且檢查是否正確吧,這就可能存在一個新的檢查頁面。這裏的每一個頁面的每一個參數均可能存在安全漏洞,全部都是被攻擊對象,都須要來檢查。

 

  這就存在一個問題,你領命來檢查一個網站的安全性,這個網站有多少個頁面,有多少個參數,頁面之間如何跳轉,你可能很不明確,如何知道這些信息? 看起來很複雜,盤根錯節;那就更須要找到那個線索,提綱挈領; 那就想想,訪問一個網站的時候,咱們須要知道的最重要的信息是哪一個?網站主頁地址吧? 從網站地址開始,不少其餘頻道,其餘頁面均可以連接過去,對不對,那麼可不能夠有種技術,告訴了它網站的入口地址,而後它「順藤摸瓜」,找出其餘的網頁和頁面參數? OK,這就是」爬蟲」 技術,具體說,是」網站爬蟲「,其利用了網頁的請求都是用http協議發送的,發送和返回的內容都是統一的語言HTML,那麼對HTML語言進行分析,找到裏面的參數和連接,紀錄並繼續發送之,最終,找到了這個網站的衆多的頁面和目錄。這個能力AppScan就提供了,這裏的術語叫「探索」,explorer,就是去發現,去分析,瞭解未知的,記錄。

 

  在使用AppScan的時候,要配置的第一個就是要檢查的網站的地址,配置了之後,AppScan就會利用「探索」技術去發現這個網站存在多少個目錄,多少個頁面,頁面中有哪些參數等,簡單說,瞭解了你的網站的結構。

 

  「探索」瞭解了,測試的目標和範圍就大體肯定了,而後呢,利用「軍火庫」,發送導彈,進行安全攻擊,這個過程就是「測試」;針對發現的每一個頁面的每一個參數,進行安全檢查,檢查的彈藥就來自AppScan的掃描規則庫,其相似殺毒軟件的病毒庫,具體能夠檢查的安全攻擊類型都在裏面作好了,咱們去使用便可。

 

  那麼什麼是「徹底測試呢」,徹底測試就是把上面的兩個步驟整合起來,「探索」+ 「測試」;在安全測試過程當中,能夠先只進行探索,不進行測試,目的是瞭解被測的網站結構,評估範圍; 而後選擇「繼續僅測試」,只對前面探索過的頁面進行測試,不對新發現的頁面進行測試。「徹底測試」就是把兩個步驟結合在一塊兒,一邊探索,一邊測試。

 

上圖更容易理解:

 

 

步驟1:探索(爬行,爬網)

 

步驟2:真對找到的頁面進行測試,生成安全攻擊

 

 

 

AppScan掃描大型網站

 

  常常有客戶抱怨,說AppScan沒法掃描大型的網站,或者是掃描接近完成時候沒法保存,甚至保存後的結果文件下次沒法打開?;同時你們又都很奇怪,做爲一款業界出名的工具,如此的脆弱?是配置使用不當仍是本身不太瞭解呢?咱們今天就一塊兒來討論下AppScan掃描大型網站會遇到的問題以及應對。

 

  什麼叫大型網站,顧名思義,網站規模大,具體說是頁面不少,內容很全。好比www.sina.com.cn,好比http://music.10086.cn/,都包括上萬個頁面。並且除了這個,可能還有一個特色---頁面參數多,即要填寫的地方多,和用戶的交互多;好比一個網站若是都是靜態頁面(.html,.jpg等),沒有讓用戶輸入的地方,那麼能夠利用,能夠做爲攻擊點的地方也就很少。若是頁面處處都是有輸入,有查詢,要求用戶來參與的,你輸入的越多,可能泄露的信息也越多,可能被別人利用的攻擊點也就越多,因此和頁面參數也是有關係的。AppScan聲稱測試用例的時候,也是根據每一個參數來產生的,簡單說,若是一個參數,對應了200個安全攻擊測試用例,那麼一個登錄界面至少就對應400個了,爲何?登錄界面至少有用戶名和密碼兩個字段吧? 每一個字段200個攻擊用例。

 

 

 

這個簡單吧,還能夠更復雜:若是遇到下面的兩個地址,那要掃描多少次呢?

 

http://www.cnblogs.com/fnng/focus/satisfy/file.jsp?id=1

 

http://www.cnblogs.com/fnng/focus/satisfy/file.jsp?id=2

 

上面的兩個地址有相似的,「?」號之前的URL地址徹底同樣,」?」號後面帶的參數不一樣,這種能夠認爲是重複頁面,那麼對於重複頁面,是否要重複測試呢?

 

這取決於「冗餘路徑設置」,默認的是最多測試5次;即,這種類型URL出現的前5次,那麼就是要測試1000個攻擊用例了。

 

 

 

若是再繼續修改下:遇到下面的URL呢

 

http://www.cnblogs.com/fnng/focus/satisfy/file.jsp?id=1&Item=open

 

http://www.cnblogs.com/fnng/focus/satisfy/file.jsp?id=2&Item=close

 

每一個URL裏面都有2個參數,測試的次數就更多了。想象下,若是這個網頁裏面的參數若是是10個,或者更多的呢?好比不少網站提交註冊信息的時候,要填寫的內容足夠多吧?

 

要進行的安全測試用例也就隨之不斷增長…

 

 

 

  這是網站規模的影響,還有一個問題,就出在「每一個參數,發送200個安全測試用例」這個假設上。這個假設的前提來源於哪裏? 來源於咱們選擇的掃描規則庫。即你關心那些安全威脅,這個須要在測試策略裏面選擇。一樣來參照殺毒軟件,你會用殺毒軟件來查找一些專用的病毒嗎,好比CIH,好比木馬;應用安全掃描也是同樣的道理,若是有明確的安全指標或者安全規則範圍,那麼就選擇之。這些可能來源於企業的規範,來源於政府的法律法規。就要根據你的理解,在這裏選擇。

 

 

  不少時候,咱們也很難在最開始的階段,就把掃描規範制定下來,按照項目經理們的口頭禪「漸進明細」,「滾動式規劃」,在實踐中,更多時候也是摸着石頭過河,選擇了一個掃描策略,而後根據結果分析,看是否須要調整,不斷優化。好比選擇默認的「缺省值’掃描策略,對網站進行掃描,發現其」敏感信息「裏面會去檢查頁面上是否含有Email地址,是否含有信用卡號碼等,若是咱們以爲這些信息,顯示在頁面上是正常的業務須要, 咱們就能夠取消掉這些規則,因此掃描規則也很大程度上影響着咱們的掃描效率。

 

 

 

     這裏主要分享如何使用AppScan對一大項目的部分功能進行安全掃描。

 

------------------------------------------------------------------------ 

 

  其實,對於安全方面的測試知道的甚少。由於那公司每月要求對產品進行安全掃描。掌握了一人點使用技巧,因此拿來與你們分享。

 

  由於產品比較大,功能模塊也很是之多,咱們不可能對整個產品進行掃描。再一個每一個測試員負責測試的模塊不一樣。咱們只須要對本身負責測試的模塊掃描便可。

 

  掃描工具天然是IBM AppScan  ,功能強大,使用簡單。略懂安全測試的都使用或據說過這個工具。這裏就不過多介紹了。

 

 

 

抽取被掃描功能的連接                                                             

 

  

 

  首先要抽取掃描的連接。fiddler工具來抽取。打開系統,找到你須要作掃描的功能模塊,開啓fiddler攔截功能,而後對你所要測試的功能作各類操做,fiddler就會記錄的全部訪問的連接,由於涉及到隱私,因此下圖會比較模糊。

 

 

其實,請求中有很是多的連接,但許可能是同樣,咱們只要把不同的全找出來就能夠了。這裏你須要知道每一個鏈接的狀況。也有一些外部連接是不須要抽取的。

 

 

 

複製代碼
aaa.bbb.cn
g2.aaa.bbb.cn
g1.aaa.bbb.cn
webapp.aaa.bbb.cn
uec.aaa.bbb.cn
addrapi.aaa.bbb.cn
smsrebuild1.aaa.bbb.cn
disk2.aaa.bbb.cn
mw.aaa.bbb.cn
scriptlog.aaa.bbb.cn
images.139cm.com
appmail.aaa.bbb.cn
gfile5-disk.aaa.bbb.cn
gfile8-disk.aaa.bbb.cn
gfile7-disk.aaa.bbb.cn
複製代碼

 

把全部連接抽取出來以後就沒幾個了。去掉重複的就沒多少了。

 

 

 

 

 

 完成配置嚮導                                                                          

 

 

 

  下面打開appscan建立掃描。(關於appascan的下載安裝與破解、介紹,我在另外一篇博文已講)

 

 

選擇常規掃描,進入配置嚮導。點擊下一步,進入配置

 

 

 

 

上面這一步是重點,起始URL填寫你要掃描的網址。其它服務器和域:這裏把抽取的全部連接都添加進去。包括後網站的首頁連接。點擊下一步。

 

 

 

 

這裏提供三種方式來記錄賬號,很少介紹。第一種和第三種最經常使用。

 

 

 

 

而後點擊幾個下一步後出現後面的選項,選擇第三個或第四項完成掃描的配置。

 

 

 

 

 

 錄製掃描腳本                                                                        

 

 

 

  完成配置後,下面就要開始錄製腳本了呢。

 

  點擊工具欄上的探索按鈕,appscan會打開自帶瀏覽器,輸入系統用戶名密碼登陸系統,對你要掃描的模塊功能進行操做。

 

 

上圖爲我打開的appscan自帶瀏覽器(由於我輸入的網址有誤,因此沒法訪問)。操做完成以後,點擊暫停按鈕,關閉瀏覽器窗口便可。

 

 

 

 

  關閉瀏覽器後,上面的窗口中會記錄全部你訪問的鏈接,點擊肯定。全部的信息就會記錄下來了,下面要作的點擊點擊工具欄上的掃描按鈕開始掃描。咱們通常晚上下班進行,次日早上來看掃描結果就能夠了。

 

 ------------------------------------

 

  原本到這裏就能夠結束了,我再多說個設置。呵呵!在手動探索的時候,由於打開的瀏覽器是appscan自帶的,可能會存在兼容性問題,有些頁面沒法正常打開。那麼是否能夠用咱們電腦上的瀏覽器(IE 、火狐、谷歌)來進行錄製呢了。固然是能夠的。

 

菜單欄--工具---選項----高級

 

 

 

 

這個必定要大圖,咱們只須要修改openExternalBrowser 選項「值」的參數就能夠了(1=IE、2=firefox、3=chrome)。

 

 -----------------

 

 

 

安全測試挺有前途的,國內起步很晚,這兩年才逐漸受到重視。公司也愈來愈重視安全。

 

使用分享參照蟲師:

http://www.cnblogs.com/fnng/archive/2012/10/09/2717568.html

工具簡單講解參照蟲師:

http://www.cnblogs.com/fnng/archive/2012/05/27/2520594.html

 

 

     
 

@ 流年細雨
發現不少人都須要這個東西,我分享一下。方便你們
連接:http://pan.baidu.com/s/1sl2pRA1 
密碼:z2xs
LicenseProvider.dll 文件爲破解包
安裝好以後找到安裝目錄覆蓋同名文件便可

安裝的時候要把殺毒軟件關掉,否則安裝不成功

 若是出現沒法寫入鍵的問題,在虛擬機裏面安裝 就能夠用了

相關文章
相關標籤/搜索