千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。
& O5 u' C7 @1 v5 ]7 E6 J, O$ E0 B7 R6 ?1 y7 R2 y% M' `8 {8 Y
$ F$ h1 m# W1 o* L7 N8 C
9 g8 b$ S# Y! W, R. B( G
2 Q# O6 ]2 z8 }8 G' V漏洞名称:千博企业网站管理系统SQL注入
) m# z0 ] [, J2 w测试版本:千博企业网站管理系统单语标准版 V2011 Build0608' S; N% a0 `7 k# \
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。( N. x( q4 `6 E. K+ U. `* A
漏洞验证:
# M+ o4 d; V2 z6 g* b% ~) X
- [4 N! E* X- H9 v& b访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容- s4 f J# x/ U
访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空6 n1 [3 h1 L0 M4 z `: w
# P7 K' p; | u" F, Y那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
. S0 v" \- N8 S' C# C$ ^ ; S" y# j* [ c" ]
4 ?3 n; @- N$ a) I9 U8 Q( @9 s
& {" M) r% H$ L2 q. Z% ^得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
& N1 H2 {. H# y! Q& X
- p. W) f2 d( @) ]% k9 m: |http://localhost/admin/Editor/aspx/style.aspx) D, J7 z/ p8 @! g. R% n9 |
是无法进入的,会带你到首页,要使用这个页面有两个条件:# k3 o. H; U! C" \* L
1.身份为管理员并且已经登录。$ }- h G( Z/ I! Q# }. O3 S
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/6 A# M2 ]3 c7 W
/ G1 Y* U z! a0 a: g2 H现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:
+ q2 _# C' y5 F% N7 F( W% F
0 c& W5 f( O _9 U! lhttp://localhost/admin/Editor/aspx/style.aspx: C' H5 K! `3 |) Y( Z" J2 N
剩下的提权应该大家都会了。; z k: [+ \+ J
$ n1 m k3 [2 Q4 E- @之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了 2 Y( o; [% \+ h
6 T {! P' U5 u9 p/ M' \2 ^8 @
8 r; N, n7 A- h% x$ i$ Y- [2 G- L
1 ~; d6 d- H4 J7 l提供修复措施:
; Z( ^$ m1 F+ e H: c$ d. ]/ \! S0 e( R8 P( `4 a$ r5 f( ?1 d
加强过滤& N9 Q/ y& S5 K9 t. |7 q' l5 L
9 |) I2 a3 x" q# g6 T& ?+ x# c
|