WEB漏洞概述

   物理路徑泄露:
物理路徑泄露一般是由於WEB服務器處理用戶請求出錯導致的,如通過提交一個超長的請求,或者是某個精心構造的特殊請求,亦或是請求一個WEB服務器上不存在的文件。這些請求都有一個共同特點,那就是被請求的文件肯定屬於CGI腳本,而不是靜態HTML頁面。
還有一種情況,就是WEB服務器的某些顯示環境變量的程序錯誤的輸出了WEB服務器的物理路徑,這應該算是設計上的問題。 

 

 CGI源代碼泄露:
CGI源代碼泄露的原因比較多,例如大小寫,編碼解碼,附加特殊字符或精心構造的特殊請求等都可能導致CGI源代碼泄露。

 

 目錄遍歷:
目錄遍歷對於WEB服務器來說並不多見,通過對任意目錄附加“../”,或者是在有特殊意義的目錄附加“../”,或者是附加“../”的一些變形,如“../”或“..//”甚至其編碼,都可能導致目錄遍歷。前一種情況並不多見,但是後面的幾種情況就常見得多,去年非常流行的IIS二次解碼漏洞和UNICODE解碼漏洞都可以看作是變形後的編碼。


 執行任意命令:
執行任意命令即執行任意操作系統命令,主要包括兩種情況。一是通過遍歷目錄,如前面提到的二次解碼和UNICODE解碼漏洞,來執行系統命令。另外一種就是WEB服務器把用戶提交的請求作爲SSI指令解析,因此導致執行任意命令。

 

 緩衝區溢出:
緩衝區溢出漏洞想必大家都很熟悉,無非是WEB服務器沒有對用戶提交的超長請求沒有進行合適的處理,這種請求可能包括超長URL,超長HTTP Header域,或者是其它超長的數據。這種漏洞可能導致執行任意命令或者是拒絕服務,這一般取決於構造的數據。


 拒絕服務:
拒絕服務產生的原因多種多樣,主要包括超長URL,特殊目錄,超長HTTP Header域,畸形HTTP Header域或者是DOS設備文件等。由於WEB服務器在處理這些特殊請求時不知所措或者是處理方式不當,因此出錯終止或掛起。

 

 條件競爭:
這裏的條件競爭主要針對一些管理服務器而言,這類服務器一般是以system或root身份運行的。當它們需要使用一些臨時文件,而在對這些文件進行寫操作之前,卻沒有對文件的屬性進行檢查,一般可能導致重要系統文件被重寫,甚至獲得系統控制權。

 

 跨站腳本執行漏洞:
由於網頁可以包含由服務器生成的、並且由客戶機瀏覽器解釋的文本和 HTML 標記。如果不可信的內容被引入到動態頁面中,則無論是網站還是客戶機都沒有足夠的信息識別這種情況並採取保護措施。攻擊者如果知道某一網站上的應用程序接收跨站點腳本的提交,他就可以在網上上提交可以完成攻擊的腳本,如JavaScript、VBScript、ActiveX、HTML 或 Flash 等內容,普通用戶一旦點擊了網頁上這些攻擊者提交的腳本,那麼就會在用戶客戶機上執行,完成從截獲帳戶、更改用戶設置、竊取和篡改 cookie 到虛假廣告在內的種種攻擊行爲。


 SQL注入:
對於和後臺數據庫產生交互的網頁,如果沒有對用戶輸入數據的合法性進行全面的判斷,就會使應用程序存在安全隱患。用戶可以在可以提交正常數據的URL或者表單輸入框中提交一段精心構造的數據庫查詢代碼,使後臺應用執行攻擊着的SQL代碼,攻擊者根據程序返回的結果,獲得某些他想得知的敏感數據,如管理員密碼,保密商業資料等。

 

如何有效的防治WEB漏洞,關鍵是確立安全的體系結構和設計檢查單,你如果現在正在測試WEB方面的軟件,試下上面提到的思路,你會發現很多有意思的Bug^_^

 

發佈了11 篇原創文章 · 獲贊 3 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章