2.2 Web2.0 安全評估策略與方法

1.Blackbox(黑箱測試):

在這測試中,不像是理論上的教法,而是想像自己是個攻擊者,試圖找出任何可能攻擊之處,並在找到的弱點上做防範。

a.Footprinting:

有傳統和服務導向架構為基礎(SOA-based)兩種觀點

傳統上,需要在multihosted frameworks上,反向搜尋IP,並判斷所有可能在此IP上執行的WEB應用,但是這種技術在web2.0的應用上是不夠的。

另一個則是判斷在web2.0應用層上,所有可能執行的服務。

b.Discovery:

 識別在server端的隱藏資源。

c.Crawling/Enumeration:

--Event are fired from the DOM

--Because of Ajax, crawling on protocol level is not sufficient
--find all possible endpoints (XML-RPC/REST/SOAP)
d.Profiling:

--Identify resources and their attributese.

--Attack vectors must be testedbefore deploying --Tools:in-house or open-source
f.Vulnerabilities detection:

--Server response analysis
--Client holes exploiting

 

2.Whitebox(白箱作業):

 在這過程,盡量竭盡所學,根據架構、資料配置或原始碼,根據這些複雜資訊來找出問題。在應用上可能較多層次,使人更迫切想找到安全問題的正確程式碼

a.Threat Modeling(危機模型):
–Dependencies, users, roles
–Tools and methods
   用工具或方法取得資訊,然後轉化成邏輯樣式,並以此為根基找出所有可能的攻擊者。
–Mashup and web services
   web2.0總是圍繞著混搭和一些網路服務,加入一個完整的結構於這些複雜的服務中,了解其運作模式並設法和邏輯區塊取得連結。
b.Source Code review:
–Both server and client layer

   嘗試切開server和client這兩部分的原始碼,並判斷容易攻擊的部分,像是XSS、CSRF、和SQL injection,
c.Configuration review(結構檢查):
–Configuration is far too often a neglect issue
應用層的結構必須被鎖定(掃描所有結構資料)