枚舉功能與內容:
手動瀏覽在我們的日常生活中很常見,但是在我們進行攻擊的時候,我們需要去仔細檢查每一項功能,我們有必要去進行抓取。
web抓取:
通過web抓取,我們可以獲得公開內容中的鏈接不可能發現的目錄,但是這樣也有許多弊端:
- 無法正確處理不常用的導航機制
- 無法抓取到隱藏在編譯客戶端中的對象
- 多階段功能嚴格檢查輸入,可能不會接受自動工具產生的值
用戶指定的抓取:
用戶使用它通過標準瀏覽器以常規方式瀏覽應用程序,試圖枚舉應用程序中的所有功能
- 用戶控制提交到應用程序的所有數據
- 用戶能夠以常規方式登陸應用程序
BURP INTRUDER可用於循環訪問一組常見的目錄名稱並收集服務器的響應信息。可以獲取該目錄下的資源等。
需要注意的是,許多應用程序以自定義的方式處理不存在資源的請求。通常以一個200想贏嗎的預定義錯誤信息。下面列出一些可能會遇到的響應碼的含義:
302found:重定向指向一個登錄頁面,那麼只有通過驗證的用戶才能訪問該資源
400 bad request:使用的詞彙包含一些空白符或者其他無效的語法
401 unauthorized/403 forbidden:該響應通常表示被請求的資源存在,但是不顧那用戶的權限或者等級,禁止任何用戶訪問該資源,這也說明,資源確實存在
500 internal server error:該響應說明應用程序希望在請求資源的時候提交某些參數。
滲透測試還可以通過搜索引擎,web服務器進行滲透,另外,許多web服務器包含有助於攻擊者對其進行攻擊的內容,樣本和診斷性腳本中可能包含的漏洞,還有許多第三方組件等等。但是這些掃描器比如Nikto,Wikto之類的,檢查很多都是多餘的,而且錯誤警報也是經常發生,而我們的BURP INTRUDER就不會出現漏報誤報的問題。
分析用戶程序:
確定用戶輸入入口點:
- 每個URL字符串,包括字符串標記。
- URL查詢字符串中提交的每個參數。
- post請求主題中提交的每個參數
- cookie
- HTTP消息頭:user-agent/referer/accept/accept-language/host
確定服務器端技術:
- 提取版本信息:許多web服務器公開與web服務器軟件本身和所安裝組件有關的詳細版本信息
- http指紋識別:server消息頭
- 文件拓展名:asp,aspx,jsp
- 目錄名稱:一些字目錄名稱常常表示應用程序使用了相關技術
- 會話令牌:可以據此判斷所使用技術的信息
確定服務器端功能:
- 仔細分析請求:我們可以通過URL中的不同字段來分析應用程序所披露的信息。
- 推測應用程序的行爲