千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。: q: I0 S1 n, _8 q
, D& M4 x4 U: y6 B9 ?
# Z! y7 w0 f* Z6 O( c6 O K9 w9 t 4 e2 P4 m; q+ g) V' g9 o [$ W: @
! B1 @3 p: y, Q+ x
漏洞名称:千博企业网站管理系统SQL注入
/ R1 ]( E- t' n" x测试版本:千博企业网站管理系统单语标准版 V2011 Build0608* |$ o4 G" j# n& s0 M( u) @
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。" }/ { Z+ f3 l( ]6 u
漏洞验证:
! s: o4 C" F& a3 @8 S/ \6 l6 v$ I3 o 6 @7 C* K; o& [8 x0 q
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
# u. C3 P& b/ _8 D访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
: a: @# t6 ~+ R$ r9 ?' l 0 g' _; @: U! e: r% t
那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。9 r' i8 L7 x1 g! c' w) x4 z
: Z- y9 r9 q i" Q! s) ~9 u ' K, u) E' Z- a0 l7 x
. E, K7 z& e$ M, y1 z得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:0 c8 I; [6 R8 ~- w( e& U
7 G8 J6 T$ w1 y4 c( m' R3 y+ c: ]
http://localhost/admin/Editor/aspx/style.aspx+ n( }- ^/ P6 s2 @
是无法进入的,会带你到首页,要使用这个页面有两个条件:; h3 Y+ Y9 l% s) d4 }/ u( e0 s
1.身份为管理员并且已经登录。3 B4 J- j, S; O% D G8 l0 s1 l
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/
) c+ K: I2 ~" f$ z ) E4 D* ], i4 Y& _ E! U, N
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:
" Q; Z+ u6 \* g; W
2 Z" \. x$ M4 G# yhttp://localhost/admin/Editor/aspx/style.aspx
R. Y5 d2 W* R. U& t# G8 r: s% L剩下的提权应该大家都会了。4 f0 M3 a3 T2 O | e& ]
5 t3 |/ S9 L1 r" m$ S" ]之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
1 r5 Q1 U+ b. j& _2 ?7 h* Z' e d) ~6 s2 W, M+ T
' y6 n7 A+ t( M0 {
2 [9 V/ j$ T. ]提供修复措施:
7 k, a$ y& a( G" I; a# D
0 u$ G" R& [: W: {# ~8 s加强过滤9 J3 I) M8 h4 n) D0 {
- S7 b$ n s# y/ W$ i! U
|