千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。
s1 e/ k4 [' u; j: B y3 }- S( Q2 o5 |7 Y7 S S* F
$ G% O+ C' F: l5 M
" R" C2 g* X# Q+ f& `1 o! J/ U, M % Q# ?; G6 Z' n' r# ?
漏洞名称:千博企业网站管理系统SQL注入+ T, g; i" E7 P" ], o* f) i, v4 s
测试版本:千博企业网站管理系统单语标准版 V2011 Build0608
5 ~4 r6 J* c8 ~4 F2 H漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。
2 u4 ^- r# N* C7 A7 O! U4 e漏洞验证:8 `$ |6 `2 F4 z& ?( P! U7 L @
" f1 L% }4 o5 F0 f
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
# D7 ~! H# n# X$ A访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
H) I5 p$ F8 l; p
- O7 w3 u! m) T3 G1 t$ [) a那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。5 j) v+ v# l o9 z" L$ h
5 M4 Q. i8 `2 E0 G* O
5 e. _! p# T3 f4 `. U Q
% X7 M9 ]: `: ^6 k" t0 Y" K
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:$ M& k" W, l0 o6 z) t* J
9 Q& E3 \* t7 M, H: d1 g
http://localhost/admin/Editor/aspx/style.aspx
- Y8 d7 Q4 Z2 e- T5 j/ a是无法进入的,会带你到首页,要使用这个页面有两个条件:0 x8 w/ w2 }. G, t1 f) B" c
1.身份为管理员并且已经登录。1 B/ P+ P# ^9 s$ f1 }# e
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/+ Y. k9 U3 ?1 a( W( A# f+ {
5 ^) p4 w- K: p% n9 r
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:2 f4 a& z" d# B4 p' @- v
; P/ J+ p% N% _5 ~1 A3 s; o
http://localhost/admin/Editor/aspx/style.aspx4 Z. J- r8 [% f- l7 E- s
剩下的提权应该大家都会了。
8 z9 X2 ^5 Z0 K2 y
, A, t! _2 G7 O$ P% r之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
4 I F) d2 t: e! O* K% b( P# q5 g: q
% ]7 N- g3 I0 ~5 N
6 u2 ~9 k! r& G/ K提供修复措施:1 D' b0 e8 L) t2 M; o0 q
- F" E- ]/ ?6 w
加强过滤
, F% D5 n# Q4 L- @9 q# ~5 ]0 v$ m: d$ {7 S" P' x/ X
|