千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。% O2 h2 u6 `+ t9 [4 D4 x
, n+ s' y3 p" G6 l
! [ M) M2 y, X+ C
3 K2 J( ~7 e) f' @ U ' x5 `( O' m1 g! i, ?* Y! z
漏洞名称:千博企业网站管理系统SQL注入3 |: r$ a1 d7 t/ G/ L7 }! ?
测试版本:千博企业网站管理系统单语标准版 V2011 Build0608
/ S0 y/ e% |1 F) O, t' b. G漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。
% T8 O( a- Z! _, w6 S2 h漏洞验证:
5 Y& I: O4 R' b4 {; W
; {" O8 e1 u5 A& s% ]' r访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
0 t1 I. M+ w0 m8 ^9 s: `访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
, l' D' u! [ l: {' I: u
) L# L% Z# }: w7 e% _9 n. ^那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
' O, p7 d5 C" J3 x2 A" Y1 p9 c
" l" {5 ^! S, z: Z2 K r' a 9 J" V, k( d- I- |
: p0 J- H1 D! g得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:. @! D9 U( {: Y7 y' r
8 U8 k. n9 g" F
http://localhost/admin/Editor/aspx/style.aspx
9 z& ^% J$ Z0 w5 f( r6 X: o是无法进入的,会带你到首页,要使用这个页面有两个条件:: R, A8 E9 b& z# {; C' O% e
1.身份为管理员并且已经登录。$ `7 a X3 |1 e8 A7 @6 s t0 ]" ]
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/
$ P3 \3 Q# G2 ~: Q) s1 b1 L
; b) k M. I7 O现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:
) z2 I* `! V0 J2 t4 d D# } + T: a& H, q+ P) p5 M
http://localhost/admin/Editor/aspx/style.aspx
7 Q8 H' C: |9 ~! k; I剩下的提权应该大家都会了。" ` `) y B+ r
/ H9 ]& c: u- W' f8 ]7 j& {之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了 . j0 J1 G( n2 g- A) f7 v, T/ ]% ~
/ S8 z5 t0 W. h1 R! ]7 ^& y3 { ' V7 n+ h3 i2 Q# H$ s5 e
! V: c7 {3 f; P, u提供修复措施:7 M8 v! J6 T) }; p- e9 K# d
3 g" w9 Z. B) V }
加强过滤
5 Q, d" A/ p: O0 }0 t- ?( c' V9 `) ?4 A8 t$ f& I" n
|