千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。4 D9 l, O$ q' x0 J
[1 f8 M$ K( w5 P) V 9 l; y8 P, Y# N
, I: O, d- L& T+ J( f: I; A7 g$ T0 T
0 y' O6 }- H' Q漏洞名称:千博企业网站管理系统SQL注入
, A' ~3 M8 P9 V) f测试版本:千博企业网站管理系统单语标准版 V2011 Build0608. J& P9 @( r* ?/ H) s
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。- T9 N4 ^' w: E7 K0 ~# `" z7 Y
漏洞验证:$ J! Z9 g$ v* d9 L" t) { C
- _0 J$ g% K5 O$ U- }
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容/ J+ W: A/ O j7 ~- b* u
访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空5 T8 P6 B) i3 @/ |- _8 @
- D s& F0 z- j/ w那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
& k9 O& M) ~0 N9 Z # x* [: w% \2 c$ ?( I1 Z, B
7 m/ d2 X. J8 E5 z
_- U5 k/ @/ j" C- @得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
: m' Z! d) u8 L 5 J% H, E; N% W: Z0 p
http://localhost/admin/Editor/aspx/style.aspx/ y2 \$ |: X4 c. V- v" ~, r( e
是无法进入的,会带你到首页,要使用这个页面有两个条件:
# _7 q4 w2 F+ O, m5 c8 E# T" N1.身份为管理员并且已经登录。
, J" ]) e' }4 S8 v$ c5 \2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/! }; _; |! Z1 J2 i
5 U! ~4 z" j+ M, W5 W
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:) _/ I3 r5 N2 |+ L' S4 v* Z
; ?7 M, l5 [) e. {
http://localhost/admin/Editor/aspx/style.aspx
% d3 x- e2 `. R) l剩下的提权应该大家都会了。* u1 s9 m/ K; h1 b
' y% l/ i& e0 s0 C之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了 , v H2 N; o3 P( e9 x
8 Z/ R+ R1 l) E7 [- H3 W
6 y/ w6 e' E w+ I- c, r" A5 h& ^8 d" ^) _. ]) @7 Q
提供修复措施:* o: Y$ H' I0 Y, o
9 k4 b/ I7 P6 b4 g! v7 U5 B S加强过滤
! j* F$ g1 e) e5 s/ o6 n" @+ F% ]+ @ t+ ]6 D
|