千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。2 W2 M& M" \" C
% F% u4 z$ g/ ^* t# S8 b( U2 D % s# i3 N8 R4 _
; u) X8 G$ d4 W4 P3 Q: O
- w; I$ d# B6 P+ O1 L& Q; C漏洞名称:千博企业网站管理系统SQL注入
* T9 ]1 K/ K3 ?" d$ n" D; Q测试版本:千博企业网站管理系统单语标准版 V2011 Build0608
1 N0 X% ~4 C' i: V5 v6 T漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。+ z4 G& d$ D# U3 y) ^
漏洞验证:
! U; A& s5 F+ D+ g# w 0 H b$ F3 ]$ g$ V- J$ ~6 f
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容' S2 B0 ^; I( r- O% `2 p/ P
访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空3 p1 ^# j4 N4 e, X0 Y5 b- T
* ]+ y6 L6 s1 p! L K( b g那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。3 H5 _" Y# F8 G' S9 I1 X) Q. @
% G6 r( B# y& M6 K: B6 N' M" N; o) [
* |! q: D h# K/ y % D. D/ H& Y5 A$ ?4 d( ^! ]
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
9 e' e( V' U9 b+ d1 k 9 g& \- @1 y# n/ X7 L, S/ E
http://localhost/admin/Editor/aspx/style.aspx
, o' p* f( x: N4 x, G+ E; @" R是无法进入的,会带你到首页,要使用这个页面有两个条件:% h2 u' B4 P; O- \' D$ r/ }
1.身份为管理员并且已经登录。
/ @% R! l9 W, V) u7 ~3 |, S2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/
9 O( ~/ K: l8 o5 k, Z, B 3 \3 q" Z' a! J/ ?, F; Q7 y
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:4 s- n( ^( U/ e1 F' Y
5 N* R! W5 \* h7 I$ R, thttp://localhost/admin/Editor/aspx/style.aspx6 K- a# L: W# l
剩下的提权应该大家都会了。
) c( N: k0 l( O& w; T9 ]2 R' Z
% V& K" w: f8 J, p之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
( u) F! j7 R( @' |6 d; O/ O4 _% q+ e$ |9 _* j' w$ f$ |9 n8 c
, z* b2 t6 S! Q) u' a( u
8 k) d f1 F8 Y6 E8 u4 E R& {5 q提供修复措施:
' T9 m6 u5 t9 r( i: ~* A3 O6 P
加强过滤
6 `9 s7 l7 n3 X/ ]4 H5 n) f+ _! }6 c. E+ \# g' K# E( @' k7 f
|