Testing Directory Traversal File Include
這個地方主要是在說,大部份的 web server 或 web application 都會將一些 permission 與 role 的資訊放某個檔案,例如 unix base 的 /etc/passwd
,然後這裡駭客會再所有你對外的 api 或啥來進行嘗試,例如 :
http://example.com/getUserProfile.jsp?item=../../../../etc/passwd
然後在進行這種攻擊時有幾個地方可能會被針對 :
cookie
http query string 或是 body。
然後有些時後會用 url encoding 的方式來代這些東西,例如2e%2e%2f
代表 ../
之類的。
或是用 utf8 encoding,例如..%c0%af
代表 ../
。
Testing for Bypassing Authorization Schema
這個部份主要是針對 role 與 permission 對 resource ( 被訪問的東東 ) 的機制驗證,主要重點如下 :
是否可以在未經身份驗證的情況下訪問。
是否可以在登出後訪問。
是否可以訪問,不屬於這個 permission 的 resource。
Testing for Privilege Escalation
這個地方主要是在驗證『 escalating privileges 』,也就是攻擊者是否有辦法將自已的 role 升級更多權限,看起來這裡面都在講 api 相關的修改資料嘗試。
Testing for Insecure Direct Object References
Insecure Direct Object References (IDOR),主要是發生在 application 會基於使用者提到的 input 來直接提供對 resource 的訪問權,也就是說攻擊者能夠繞過 authorization 來訪問 resource。
例如下面的 invoice 就是 IDOR 的範例,他會直接用這個 invoice 去資料庫抓資料,所以這時就可能會發生『 不是這個 invoice 的 user 也可以取得到這個 invoice 的問題 』
http://foo.bar/somepage?invoice=12345