一、什么是XSS XSS(Cross Site Scripting)跨站腳本誕生于1996年。XSS一直被OWASP(Open Web Application Security Project)組織評為十大安全漏洞中的第二威脅漏洞,也有黑客把跨站腳本當(dāng)做新型的“緩沖區(qū)溢出攻擊”,而JavaScript則是新型的Shellcode。2011年6月份,國內(nèi)知名信息發(fā)布平臺新浪微博爆發(fā)了XSS蠕蟲攻擊,新浪微博的XSS蠕蟲爆發(fā)僅持續(xù)了16分鐘,感染的用戶就達(dá)到將近3300個。 XSS最大的特點就是能注入惡意的HTML/JavaScript代碼到用戶瀏覽的網(wǎng)頁上,從而達(dá)到劫持用戶會話的目的。由于HTML代碼和客戶端JavaScript腳本能在受害者主機上的瀏覽器任意執(zhí)行,這樣等同于完全控制了WEB客戶端的邏輯,在這個基礎(chǔ)上,攻擊者可以輕易地發(fā)送各種各樣的攻擊。 XSS是一種經(jīng)常出現(xiàn)在WEB應(yīng)用程序中的計算機安全漏洞,是由于WEB應(yīng)用程序?qū)τ脩糨斎脒^濾不足而產(chǎn)生的。攻擊者利用網(wǎng)站漏洞把惡意的腳本代碼注入到網(wǎng)頁中,當(dāng)其他用戶瀏覽這些網(wǎng)頁時,就會執(zhí)行其中的惡意代碼,對受害用戶可能采取Cookie資料竊取、會話劫持、釣魚欺騙等攻擊手段。 、 二、XSS的分類 1、反射形XSS 反射型XSS又被稱之為非持久型XSS,因為這種攻擊是一次性的,需要欺騙用戶自己去點擊鏈接才能觸發(fā)XSS代碼(服務(wù)器中沒有這樣的頁面和內(nèi)容),一般容易出現(xiàn)在搜索頁面。 2、存儲型XSS 存儲型XSS又被稱之為持久性XSS,攻擊的腳本可以持久的保存在服務(wù)器的文件或數(shù)據(jù)庫中,如在個人信息或發(fā)表文章等地方,加入代碼,如果沒有過濾或過濾不嚴(yán),那么這些代碼將儲存到服務(wù)器中,用戶訪問該頁面的時候觸發(fā)代碼執(zhí)行。 3、DOM型XSS DOM其實是一種特殊的反射型XSS,它是面向于DOM文檔的模型的漏洞。DOM由多個HTML標(biāo)簽組成,而每一個HTML標(biāo)簽都是一個節(jié)點。DOM樹結(jié)構(gòu)如下 DOM就是一個樹狀的模型,我們可以編寫Javascript代碼根據(jù)DOM一層一層的節(jié)點,去遍歷/獲取/修改對應(yīng)的節(jié)點,對象,值。 |
|