千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。
' m0 G4 x! K( y- _4 l* r5 W9 c" `. b- j( }- Q9 j8 q, X
: i. Y' `: y2 }7 v
% V7 i" Z) ^& t+ c3 V5 E
/ z) _- E2 m* M6 R漏洞名称:千博企业网站管理系统SQL注入
0 R9 ], q. @9 L( n2 s6 m测试版本:千博企业网站管理系统单语标准版 V2011 Build0608
% _$ r0 [9 W! `+ O: i4 ~+ Y漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。
) h3 _- Q0 T# Z3 I, x! q ]漏洞验证: r0 F3 T, p [8 m2 u5 a! N
0 M {1 o! z. T- S# x$ }3 u$ `4 T' a5 y
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
1 B r( f; B8 H& h访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
. k$ F' j' R- _7 F" K
& ~5 s- F+ O3 X x+ D5 W2 q4 I' N那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。 [7 _4 c5 w+ j! V
7 t- v4 l- N: d0 y6 w
( ~5 p5 K V1 s( ?, b, l" E
7 ?$ ^8 Y; A. v$ A' z5 F! D
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:- `0 a( G$ w. L k. {% e
+ a6 E( s+ A# v* @- t4 @http://localhost/admin/Editor/aspx/style.aspx
# m/ P Q5 R5 o. d" ^+ ]# k: J6 ~是无法进入的,会带你到首页,要使用这个页面有两个条件:
& j0 c0 G4 Y8 X/ E, v% a1.身份为管理员并且已经登录。# X* l' l q, R: B* ?5 d
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/1 \- \; w6 W) h3 P& i* w% {1 X
9 J% q$ [6 M: c1 y7 z现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:* [! k/ N7 i5 n" c" D
: G# z2 M3 R& c% I* r
http://localhost/admin/Editor/aspx/style.aspx
f B! N/ V& C: [5 v7 }( [- p剩下的提权应该大家都会了。3 M+ T' E2 l! @
( \4 y1 O% z1 g0 x, O之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了 $ ~" h" c( A% F) L: b+ \2 a
7 v, Y6 y& `8 F" J' ]/ k ' M3 \9 k/ t Q) f$ `, X( J
2 B% ~7 o: T: W, l" B, j
提供修复措施:
$ P! x4 g/ A1 D& m' D' C5 `' v p0 y* z$ D! N$ W; q1 _
加强过滤
+ N9 j% Y" G4 a2 v' h
$ B' o+ P3 Y; h2 W7 A) k0 Y8 M |