千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。
s0 x) |& Y4 s( ~' m# P( ~9 B
g, p$ w, B: _( R* r, O& v, S1 y 8 Z* r b. }; l, d1 W0 l
H4 b/ w5 C6 `- r
, y/ a5 @0 i. Q
漏洞名称:千博企业网站管理系统SQL注入
$ N7 o8 P3 T/ v! R) p( j, E1 i测试版本:千博企业网站管理系统单语标准版 V2011 Build06085 Z" D1 F9 R( O. B) S
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。. P S% O0 H8 y: m* }2 \* x
漏洞验证:, X, h7 o! u! ~+ v3 b# H' q$ ^3 w
. e* R, S' i Y8 s/ @- u# W; x
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
6 ?8 [* h* W% _7 L访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空1 x4 V% U+ C; t% h
6 x8 n% O Y* C. `那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
& M, o2 J. B! g7 y8 K0 L 6 U& D v; u& C' l6 w1 _% q, N+ u
( I5 }, Z9 o }' a5 t' s" p % p8 y6 P/ ^% s# X
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
( d! V# i9 [" F8 U+ P1 V! s' Y
* T) q- t7 B+ S* Q8 E, o: Y$ {* K, _http://localhost/admin/Editor/aspx/style.aspx- Q; M8 l, d0 E, r* Y) g" d% r
是无法进入的,会带你到首页,要使用这个页面有两个条件:$ q! a# z) ~1 A0 p
1.身份为管理员并且已经登录。1 g( K2 o- x# U
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/4 _! }9 ~* `2 n4 L" P6 |1 u
1 D0 E) `1 I" ~0 ~8 D' y现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:
, H* S% o& u: K& Q0 R2 k& ?0 d9 k& `6 ~
$ f4 v4 H: _2 Q3 m2 f- c8 r- yhttp://localhost/admin/Editor/aspx/style.aspx
. o' P9 j9 b; ^* Z G/ I剩下的提权应该大家都会了。1 K. V# s. U7 v4 t) q( f! j
8 O& N* B2 g2 z8 E3 D% I* b- Z之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了 4 }8 X0 g. g3 j
9 v, R# x+ ]& n5 D5 f7 r% Q2 `
: c1 z# J% W0 ]! I$ q3 z$ p. g: K1 B4 }& ~& Z f& h# D, E. \& ]( x" M
提供修复措施:
. F4 h5 N7 G9 B+ {! _$ M; _( n3 x3 Q6 Z( u) B
加强过滤
% J/ Q) I" p9 I d- o; a5 l* \3 ^! I& J7 m3 w7 p+ X
|