預防Web應用程序的漏洞 |
時間: 2013/2/16 10:43:54 點擊: 16683 |
態(運行時)的觀察可能會阻止發現很多安全缺陷。當然,滲透測試不需要查看源碼,但是靜態代碼分析需要。
使用錯誤的檢測工具會導致部署的應用含有未檢測出的漏洞。圖2比較了在Web服務中,知名的并廣泛使用的滲透測試和靜態分析工具在檢測SQL注入漏洞中的表現。8結果顯示靜態代碼分析工具——包括FindBugs、Fortify 360以及IntelliJ IDEA(在圖中匿名為SA1到SA3)——的覆蓋度通常高于滲透測試工具,包括HP WebInspect、IBM Rational AppScan、Acunetix Web Vulnerability Scanner以及科英布拉大學開發的一個原型工具(在圖中匿名為VS1到VS4)。這兩種方式都有的一個問題就是誤報,但是在靜態分析中更明顯。一個重要的發現在于相同方式下的不同工具對于相同的代碼通常報告不同的漏洞。 根據研究結果,需要強調工具的局限性使得有必要提高漏洞檢測的有效性,比如這可以通過聯合使用多種方式來實現。另外,開發人員需要定義一種機制來評估和比較不同的工具,這樣它們才能選擇最適合各種開發場景的工具。 檢測攻擊 為了防止對Web應用的攻擊,軟件工程師必須實施攻擊檢測機制,通常稱為入侵檢測系統(intrusion detection system,IDS)或Web應用防火墻(WAF)。不同的工具可以作用在應用或網絡級別甚至在應用的資源上,如數據庫,它們可以使用不同的方式如異常檢測或簽名匹配來檢測攻擊。 檢測攻擊的方法 檢測攻擊要區分出與所學習行為的差別。攻擊檢測工具所使用的方式要么基于異常檢測要么基于簽名。8 異常檢測通常需要一個訓練階段。訓練階段會展現系統的無惡意請求,工具會在給定的架構級
|
上一篇: 馬云:做搜索是為了讓百度睡不著覺 下一篇: 網站流量之如何防止圖片浪費空間流量技巧 |