之前有
IBM Rational Appscan使用詳細說明的一篇
文章,主要是針對掃描過程中配置設置等.本文將介紹針對掃描結果的分析,也是一次完整的滲透
測試必須經歷的環節.
掃描開始的時候,Appscan會詢問是否保存掃描結果,同時下方有進度條顯示掃描的進度.
在掃描過程中,如果遇到任何連接問題或其他任何問題,可以暫停掃描并在稍后繼續進行.如第一篇文章中講的掃描包括兩個階段-探索、測試.Appscan種的Scan Expert和HP WebInspect中的建議選項卡類似,Scan Expert分析掃描的配置,然后針對變化給出配置建議,目的是為了更好的執行一次掃描.可以選擇忽略或者執行這些建議.
Appscan的窗口大概分三個模塊,Application Links(應用鏈接), Security Issues(安全問題), and Analysis(分析),如下圖所示:
Application Links Pane(應用程序結構)
這一塊主要顯示網站的層次結構,基于URL和基于內容形式的文件夾和文件等都會在這里顯示,在旁邊的括號里顯示的數字代表存在的漏洞或者安全問題.通過右鍵單擊文件夾或者URL可以選擇是否忽略掃描此節點.Dashboard窗格會根據漏洞嚴重程序,高中低列出網站存在的問題情況,因此Dashboard將反映一個應用程序的整體實力。
Security Issues Pane(安全問題)
這個窗格主要顯示應用程序中存在的漏洞的詳細信息.針對沒一個漏洞,列出了具體的參數.通過展開樹形結構可以看到一個特定漏洞的具體情況,如下所示:
根據掃描的配置,Appscan會針對各種諸如
SQL注入的關鍵問題,以及像郵件地址模式發現等低危害的漏洞進行掃描并標識出來.因為掃描策略選擇了默認,Appscan會展示出各種問題的掃描情況.右鍵單擊某個特定的漏洞可以改變漏洞的的嚴重等級為非脆弱,甚至可以刪除.
Analysis Pane(分析)
選擇Security Issues窗格中的一個特定漏洞或者安全問題,會在Analysis窗格中看到針對此漏洞或者安全問題的四個方面:Issue information(問題信息), Advisory(咨詢), Fix Recommendation(修復建議), Request/Response(請求/相應).
Issue information(安全問題信息)
Issue information 標簽下給出了選定的漏洞的詳細信息,顯示具體的URL和與之相關的安全風險。通過這個可以讓安全分析師需要做什么,以及確認它是一個有效的發現。
Advisory(咨詢)
在此選項卡,你可以找到問題的技術說明,受影響的產品,以及參考鏈接。
Fix Recommendation(修復建議)
本節中會提到解決一個特定問題所需要的步驟.
Request/Response(請求/響應)
此標簽顯示發送給應用程序測試相關反應的具體請求的細節.在一個單一的測試過程中,根據安全問題的嚴重性會不止發送一個請求.例如,檢查SQL盲注漏洞,首先AppScan中發送一個正常的請求,并記錄響應。然后發送一個SQL注入參數,然后再記錄響應.同時發送另外一個請求,來判斷條件,根據回顯的不同,判斷是否存在脆弱性漏洞。在此選項卡,有以下一些標簽.如圖:
Show in Browser(在瀏覽器顯示),讓你在瀏覽器看到相關請求的反應,比如在瀏覽器查看跨站腳本漏洞.實際上會出現警從Appscan發出的彈窗信息.
Report False Positive(報告誤報),如果發現誤報,可以通過此標簽發送給Appscan團隊.
Manual
Test(手動測試),單擊此項之后會打開一個新的窗口,允許您修改請求并發送來觀察響應.這個功能類似Burp Suite中的"repeate"選項.
Delete Variant(變量刪除),從結果中刪除選中的變量.
Set as Non-vulnerable(非脆弱性設置),選取的變量將被視為非脆弱性.
Set as Error Page(設置為錯誤頁面), 有時應用程序返回一個定制的錯誤頁面,通過此選項可以設置錯誤頁面,避免Appscan因為掃描響應為200而誤報.
Understanding the Toolbar(了解工具欄)

下面的一些提示將有對分析有所幫助:
Tips for Analysing(分析注意事項)
1.分析掃描結果的同時,如果發現不是你的應用程序有關的問題,可以點擊右上角的Vulnerability-->State-->Noise.這個掃描將會完全從列表中刪除此掃描結果.如果想顯示,可以在View-->Show issues Marker as Noise(顯示標記為雜訊的問題),將會顯示帶有刪除線的灰色文本中的問題.
2.如果開發團隊針對一個特定的漏洞進行了修復,不必要再次掃描整個應用程序,來進行重新測試該問題.只需要點擊URL,選擇"Retest the Issues Found",如果有發現新的問題,會自動添加到掃描結果中.
3.CVSS設置可以調整特定漏洞的嚴重性,想改變漏洞嚴重性,右鍵單擊一個漏洞,Severity-->CVSS settings.
4.工具菜單中的"Manual Test(手動測試)"選項可以幫助進行手動發送攻擊請求,而且可以保存當前掃描下的結果,編輯請求,發送后,點擊"Save"保存當前的掃描測試.
5.Appscan掃描過程中會有很多測試,掃描結果中只顯示發現的漏洞的測試,如果需要顯示所有的測試(包括非脆弱的結果),需要選擇Scan Configuration(掃描配置)-->Test 下的"Save Non-vulnerable Test Variant Information"選項.完成掃描之后可以在View-->Non-vulnerable Variants下查看到.
6.如果想掃描一個特定的URL或一個應用程序的特定部分,可以先針對整個應用程序進行探測而不進行測試.選擇掃描配置向導下的"Start with Automatic Explore Only"選項.然后輸入要掃描的網址,進行掃描.
7.當需要掃描一個正在使用的網站,有可能會導致服務癱瘓,需要確保開發團隊有意識到這個后果.
8.Test Malware(惡意軟件測試):這個會分析網站中的惡意的鏈接.可以選擇Scan-->Test For Malware,如果有任何發現,也會被添加掃掃描結果中.
Generating Reports(生成報告)
在分析結束之后可以針對所有確定的結果進行生成報告.其中包括為了解決改問題需要遵循的補救措施的報告.報告是可以根據需求進行定制的,例如可以為不同的開發團隊設置不同的模板.比如針對公司標志,封面頁,報告標題等進行不同的定制。
在上圖中,可以看到所有可選的參數.
Tools(工具)
本節介紹Tools中的Power Tools,該工具是為了更好的對結果進行分析.
Authentication Tester(認證測試)
幫助執行針對應用程序用戶名和密碼進行暴力猜解,結果取決于密碼策略字典強大與否.
Connection Test(連接測試)
可以用來ping一個網站,僅此而已.
Encode/Decode(編碼/解碼)
分析掃描結果的同時,可能會遇到許多的地方需要進行編碼和解碼.
HTTP Request Editor(Http請求編輯器)
可以修改請求的值來測試應用程序針對請求返回的不同響應.
這篇文章是Rational Appscan使用中的一部分內容,重要的是牢記,工具值提供結(在某些情況下甚至都可能不提供你所有的結果),從安全分析師的觀點,提升個人技術技能才是最重要的,從而可以判斷發現的是否是誤報還是真正存在漏洞.