4.1.6 Identify Application Entry Points
這個測試基本上就是針對你的服務進行所謂的 api 測試,其中文中覺得需要注意的幾個地方 :
會嘗試所有 api 的不同參數組合與尋找隱藏參數。
會注意 http header 有沒有什麼不常見的自定義標頭,因為它可能會有關於程式的資訊。
會看有那些新的 cookie 被設置,因為它可能包含密敏資訊。
識別特定的 http status,因為這暗示著服務的問題與錯誤。
4.1.7 Map Execution Paths Through Application
主要是在說測試前需要理解 application 的結構,然後以下是需要注意的 :
Path : 測試時應該包含每個路徑 ( 有什麼方法可以知道呢 ? )
Data Flow ( or Taint Analysis ) : 測試外部使用者給不同參數的情況,重點是 mapping the flow、transformation 與 use of data throughout an application。
Race : 就是測 race condition 的情況。
這篇感覺重點就是要測到這個 application 的所有覆蓋範圍,就是以上三個面向。
4.1.8 Fingerprint Web Application Framework
4.1.9 Fingerprint Web Application
這篇主要是在提如何知道服務用的 web frawework,主要可以從以下幾個地方來 :
HTTP headers : X-Powered-By
Cookies : 有些 framework 會自動幫你加 cookie。
HTML source code
Specific files and folders : 像 wordpress 就有長常見資料 /wp-includes/, /wp-admin/。
File extensions : https://wiki.owasp.org/index.php 你看他就是用 php。
Error messages : 從錯誤訊息也可以知道,所以很多時後我們會選擇隱藏錯誤訊息。
文中有建議用這個工具來查找。
https://github.com/urbanadventurer/WhatWeb
4.1.10 Map Application Architecture
這章是在說要 map 出 application architecture,它裡面是提到透過一些請求可以得知它現在是不是有用反向代理、或是有 cache、cdn 之類的。