千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。9 |% N1 T; L( c- l
3 y) ]: _7 R. g& g5 H# U2 X
% B! Q% T, m( G8 W
# j- z7 w( ~# n4 u+ f& _! g1 ]) b! Y
/ c# r7 k/ c+ H) c$ Z漏洞名称:千博企业网站管理系统SQL注入+ U3 x9 m/ j* o9 t: U
测试版本:千博企业网站管理系统单语标准版 V2011 Build06087 U9 P( _. B8 i* m; N& D4 ]% e, c
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。* s" F' u' k; u- o8 M M$ z2 A. E
漏洞验证:
! `' m! ~9 g, M- B @* |1 n: l1 i# u
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容* ^( O. q. {0 n; t6 ~
访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空9 f5 U0 j) z# w! F
; _+ j h0 m; g# ?. k8 V( g$ g: N那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
5 z8 j1 E2 ?' D9 v# F7 C1 l8 l
0 y2 \- A. o+ x
8 |; b$ r9 m- f# Q$ _* W3 j+ E
5 F: T* R/ J0 V# ]3 m得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
( h* }+ Z: E) P6 q; H+ q: X + J8 i1 }2 w" l( u7 e9 T0 O
http://localhost/admin/Editor/aspx/style.aspx
. R1 ^% O; ?1 j, S3 ]( [& `4 b是无法进入的,会带你到首页,要使用这个页面有两个条件:) y) ?* ^( S4 |
1.身份为管理员并且已经登录。 E5 M. x' B4 [4 e! u
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/6 W5 Y- U8 J' u4 o4 u
4 N2 K! I$ m- [6 t5 v, w" k# l$ V1 w现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:- ^. M5 m) j8 L- S: E5 `7 k: ^ b
/ e6 E6 b, r; Z# A
http://localhost/admin/Editor/aspx/style.aspx
; a% h; ~7 z2 u6 R4 J剩下的提权应该大家都会了。
6 d( f& d# k; I! s / I4 N2 Q8 U' f6 Q5 U' y
之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
* K* i- F# |1 t, P2 n
$ }5 H4 ~+ l8 {5 r& ~1 ^3 E
" [) B; a% O# K! D" S
! \" `8 i2 V( m提供修复措施:
/ f& i: A, I3 p
* Z- }0 ]6 x) V加强过滤
; Z' [8 S1 R1 L( v- q1 n5 |) d o+ A; f1 H5 G# \- L- O
|