捷克論壇 JKF

 找回密碼
 加入會員
搜尋
查看: 2679 | 回覆: 3 | 跳轉到指定樓層
CCSUN
王子 | 2009-4-16 11:18:11

XSS攻擊防禦技術白皮書

作者: 獨自等待,  出處:IT專家網, 責任編輯: 張帥, 2008-08-19 00:00

  XSS攻擊,跨站腳本攻擊是一種經常出現在web應用中的計算機安全漏洞,它允許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。XSS攻擊將對用戶的web安全構成巨大的威脅。

文章導讀 1、XSS攻擊解析 2、XSS攻擊防禦

  【IT專家網獨家】1、什麼是XSS攻擊

  XSS攻擊:跨站腳本攻擊(Cross Site Scripting),為不和層疊樣式表(Cascading Style Sheets, CSS)的縮寫混淆。故將跨站腳本攻擊縮寫為XSS。XSS是一種經常出現在web應用中的計算機安全漏洞,它允許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。比如這些代碼包括HTML代碼和客戶端腳本。攻擊者利用XSS漏洞旁路掉訪問控制——例如同源策略(same origin policy)。這種類型的漏洞由於被駭客用來編寫危害性更大的phishing攻擊而變得廣為人知。對於跨站腳本攻擊,黑客界共識是:跨站腳本攻擊是新型的「緩衝區溢出攻擊「,而JavaScript是新型的「ShellCode」。

  數據來源:2007 OWASP Top 10的MITRE數據

  

  註:OWASP是世界上最知名的Web安全與數據庫安全研究組織

  從這張圖中我們看到,在2007年OWASP所統計的所有安全威脅中,跨站腳本攻擊佔到了22%,高居所有Web威脅之首。

  XSS攻擊的危害包括

  1、盜取各類用戶帳號,如機器登錄帳號、用戶網銀帳號、各類管理員帳號

  2、控制企業數據,包括讀取、篡改、添加、刪除企業敏感數據的能力

  3、盜竊企業重要的具有商業價值的資料

  4、非法轉賬

  5、強制發送電子郵件

  6、網站掛馬

  7、控制受害者機器向其它網站發起攻擊

  XSS漏洞的分類

  XSS漏洞按照攻擊利用手法的不同,有以下三種類型:

  類型A,本地利用漏洞,這種漏洞存在於頁面中客戶端腳本自身。其攻擊過程如下所示:

  Alice給Bob發送一個惡意構造了Web的URL。

  Bob點擊並查看了這個URL。

  惡意頁面中的JavaScript打開一個具有漏洞的HTML頁面並將其安裝在Bob電腦上。

  具有漏洞的HTML頁面包含了在Bob電腦本地域執行的JavaScript。

  Alice的惡意腳本可以在Bob的電腦上執行Bob所持有的權限下的命令。

  類型B,反射式漏洞,這種漏洞和類型A有些類似,不同的是Web客戶端使用Server端腳本生成頁面為用戶提供數據時,如果未經驗證的用戶數據被包含在頁面中而未經HTML實體編碼,客戶端代碼便能夠注入到動態頁面中。其攻擊過程如下:

  Alice經常瀏覽某個網站,此網站為Bob所擁有。Bob的站點運行Alice使用用戶名/密碼進行登錄,並存儲敏感信息(比如銀行帳戶信息)。

  Charly發現Bob的站點包含反射性的XSS漏洞。

  Charly編寫一個利用漏洞的URL,並將其冒充為來自Bob的郵件發送給Alice。

  Alice在登錄到Bob的站點後,瀏覽Charly提供的URL。

  嵌入到URL中的惡意腳本在Alice的瀏覽器中執行,就像它直接來自Bob的服務器一樣。此腳本盜竊敏感信息(授權、信用卡、帳號信息等)然後在Alice完全不知情的情況下將這些信息發送到Charly的Web站點。

  類型C,存儲式漏洞,該類型是應用最為廣泛而且有可能影響到Web服務器自身安全的漏洞,駭客將攻擊腳本上傳到Web服務器上,使得所有訪問該頁面的用戶都面臨信息洩漏的可能,其中也包括了Web服務器的管理員。其攻擊過程如下:

  Bob擁有一個Web站點,該站點允許用戶發佈信息/瀏覽已發佈的信息。

  Charly注意到Bob的站點具有類型C的XXS漏洞。

  Charly發佈一個熱點信息,吸引其它用戶紛紛閱讀。

  Bob或者是任何的其他人如Alice瀏覽該信息,其會話cookies或者其它信息將被Charly盜走。

  類型A直接威脅用戶個體,而類型B和類型C所威脅的對象都是企業級Web應用,目前天清入侵防禦產品所能防範的XSS攻擊包括類型B和類型C。

http://security.ctocio.com.cn/wpsummary ... 6436.shtml

2、XSS攻擊防禦

  基於特徵的防禦

  XSS漏洞和著名的SQL注入漏洞一樣,都是利用了Web頁面的編寫不完善,所以每一個漏洞所利用和針對的弱點都不盡相同。這就給XSS漏洞防禦帶來了困難:不可能以單一特徵來概括所有XSS攻擊。

  傳統XSS防禦多採用特徵匹配方式,在所有提交的信息中都進行匹配檢查。如, 對於這種類型的XSS攻擊,採用的模式匹配方法一般會需要對「javascript」這個關鍵字進行檢索,一旦發現提交信息中包含「javascript」,就認定為XSS攻擊。這種檢測方法的缺陷顯而易見:駭客可以通過插入字符或完全編碼的方式躲避檢測:

  躲避方法1)在javascript中加入多個tab鍵,得到

<IMG SRC="jav ascript:alert('XSS');">


  躲避方法2) 在javascript中加入&#x09編碼字符,得到

<IMG SRC="jav&#x09;ascript:alert('XSS');">


  躲避方法3) 在javascript中加入字符,得到

<IMG SRC="jav&#x0A;ascript:alert('XSS');">


  躲避方法4)在javascript中的每個字符間加入回車換行符,得到

<IMG SRC="j\r\na\r\nv\r\n\r\na\r\ns\r\nc\r\nr\r\ni\r\np\r\nt\r\n:alert('XSS');">   


躲避方法5)對"javascript:alert('XSS')"採用完全編碼,得到

<IMGSRC=&#x6A&#x61&#x76&#x61&#x73&#x63&#x72&#x69&#x70&#x74&#x3A&#x61&#x6C&#x65&#x72&#x74&#x28&#x27&#x58&#x53&#x53&#x27&#x29>


  上述方法都可以很容易的躲避基於特徵的檢測。而除了會有大量的漏報外,基於特徵的還存在大量的誤報可能:在上面的例子中,對"http://www.xxx.com/javascript/kkk.asp?id=2345"這樣一個URL,由於包含了關鍵字「javascript」,也將會觸發報警。

  基於代碼修改的防禦

  和SQL注入防禦一樣,XSS攻擊也是利用了Web頁面的編寫疏忽,所以還有一種方法就是從Web應用開發的角度來避免:

  步驟1、對所有用戶提交內容進行可靠的輸入驗證,包括對URL、查詢關鍵字、HTTP頭、POST數據等,僅接受指定長度範圍內、採用適當格式、採用所預期的字符的內容提交,對其他的一律過濾。

  步驟2、實現Session標記(session tokens)、CAPTCHA系統或者HTTP引用頭檢查,以防功能被第三方網站所執行。

  步驟3、確認接收的的內容被妥善的規範化,僅包含最小的、安全的Tag(沒有javascript),去掉任何對遠程內容的引用(尤其是樣式表和javascript),使用HTTP only的cookie。

  當然,如上操作將會降低Web業務系統的可用性,用戶僅能輸入少量的制定字符,人與系統間的交互被降到極致,僅適用於信息發佈型站點。並且考慮到很少有Web編碼人員受過正規的安全培訓,很難做到完全避免頁面中的XSS漏洞。

  正是由於傳統檢測方法存在諸多缺陷,國內廠商(如啟明星辰天清入侵防禦系統)並未採用這一方法,而是採用了基於攻擊手法的行為檢測方法,其分析流程如下圖所示,

  

  首先對各種場景下的XSS攻擊樣本庫進行整理和分類,並建立起XSS攻擊行為特徵庫,在實時攻擊檢測階段,對所有可能實現XSS攻擊的數據來源,如HTTP-Refere、URL、COOKIE、表單數據等,進行數據收集和初步分析,存在注入腳本的用戶提交信息才進入下一步的XSS攻擊判斷。

  這種分析方法有以下幾點優勢:

  A:採用行為特徵庫而非數據特徵庫方式,可以避免由於檢測固定特徵導致的誤報可能。

  B:內置數據預處理過程,可以對所有可能包含XSS攻擊的數據進行預處理,放行大部分正常HTTP請求,僅對少量疑似事件進行深入分析,提升分析速度,降低資源開銷。

  C:XSS攻擊行為特徵庫維護由啟明星辰公司AD-LAB(積極防禦實驗室)和博士後工作站負責,AD-LAB擁有大批漏洞發掘和分析人員,2007年發現並獲得CVE編號的漏洞數量多達26個,是國內獨立發掘CVE漏洞數量最多的團隊。啟明星辰博士後工作站是業內第一家駐企業的信息安全博士後工作站,為產品算法實現、研究技術轉化提供有力保障。

  3、綜論

  XSS攻擊作為Web業務的最大威脅之一,不僅危害Web業務本身,對訪問Web業務的用戶也會帶來直接的影響,如何防範和阻止XSS攻擊,保障Web站點的業務安全,是定位於業務威脅防禦的入侵防禦產品的本職工作。只有結合對XSS攻擊的分析,才能能準確的發現和防禦各類XSS攻擊行為,保障Web業務的正常運營。

http://security.ctocio.com.cn/wpsummary ... 36_1.shtml


我回來了.
回覆 使用道具
頭像被屏蔽
徐享
禁止發言 | 2010-8-18 08:53:02

提示: 作者被禁止或刪除 內容自動屏蔽
回覆 使用道具
糗事百科
鄉紳 | 2010-9-5 07:31:20

不知道該說什么,總之頂下吧,繼續
回覆 使用道具
jns0072001
見習騎士 | 2010-12-7 18:35:13

雖然我還是不大慬
還是謝謝樓主的分享
回覆 使用道具
您需要登入後才可以回覆 登入 | 加入會員

回頂部 下一篇文章 放大 正常倒序 快速回覆 回到列表