千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。" ^. m6 N( t2 s4 h$ i' `8 }, c, W! h) |' n
V. G/ k% ]) ~' K0 s. }/ l
/ D7 y3 l* t: \7 q5 B
; {& A/ U; ~7 t" ^ r1 a; ]
8 Y W& g5 F7 D0 H* `4 x漏洞名称:千博企业网站管理系统SQL注入8 J) i/ A0 Q2 L* B Q5 }
测试版本:千博企业网站管理系统单语标准版 V2011 Build0608* {& J8 _- h: Q2 f" |
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。
3 R+ I- b; H+ ?' n% N! F漏洞验证:) r0 |* s4 c0 `* U1 x4 U6 W
+ c5 T; I% o! Z" A6 q
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
! @% a ~) m* t! w8 v0 h, r( Q访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
: W' w1 ]0 L$ G4 o + O2 R0 V6 q }$ I$ @
那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
& T/ X3 u) }& [- J& i% k* ] 5 n" \: J$ B) P4 Q7 P
" w3 Z* t. y6 P* {% h, J" d9 t
. N% \ m* O! D* i' v5 I. W得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:1 `+ L! w* m" ?9 s( R
) t8 ~$ p+ m) Ahttp://localhost/admin/Editor/aspx/style.aspx# w+ {4 l5 l3 H3 c3 \% V( `
是无法进入的,会带你到首页,要使用这个页面有两个条件:
! x. D. j# z( ^6 v% C$ X) M1.身份为管理员并且已经登录。
1 G8 U$ W) ^! u2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/! f: Y4 ?4 R2 n; x5 p& L
* M8 q# \- N* K" c* @3 E
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:
( _7 M; v v; o) Z+ s * e, c1 ]5 g% l' z& c9 F/ \% r; g2 M
http://localhost/admin/Editor/aspx/style.aspx
4 x! I; V! h& \7 E2 P& y剩下的提权应该大家都会了。
# q) h/ |4 f! \ v3 A+ v& c$ w; T
4 A* P( @5 `) U0 j: M! |之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
8 G- E. t7 d; Q# E3 y' f& i4 ]' d- r! j8 O% n9 B% C- s+ c
2 ]: s- i( C3 Y) V3 x) w
* Z% U: D) B! j1 F( s提供修复措施:9 H+ t- L" D) t4 k7 B; u
' \* w8 t2 Z0 s: u: {" F) U加强过滤& ^" V- ~& Q" x0 B. L8 m4 y
6 k* S7 ^/ r5 I% ^
|