千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。
. t0 f$ M1 M; g- y4 G& Z" i( }$ P' W* }3 x3 t$ k+ R: _) K
9 O9 P1 i' R: \0 p! O' k
/ e$ T# i3 D8 V2 v
3 O+ H2 G5 E( l: F7 _漏洞名称:千博企业网站管理系统SQL注入( q6 I2 d# c: J1 C* B
测试版本:千博企业网站管理系统单语标准版 V2011 Build0608
* E+ Z) j- {- T漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。
& ^5 |4 x/ B! _" F$ ]$ x" K+ U漏洞验证:
7 g& o! ?2 q1 C9 m2 Z7 E
& l- s1 a. W- ?6 ?, p; v访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
6 H3 b, H9 O( I0 R' i; M9 y5 O4 J访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
; ?; Z+ Z( f" v% V* K. e
6 `9 N+ J y& U- w% e3 I) g那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。. k6 u- O# c( M; o+ u
( ^% @" @: t1 B- W# N
: @7 h; K; `% Z! H* x2 S 1 W5 f8 i, [0 L+ ?2 c4 N; Q
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
+ E+ B) T$ J3 H% c, p6 ~8 |- |
" u; }3 H9 S/ R, ahttp://localhost/admin/Editor/aspx/style.aspx; N j9 g3 ^% J- T, j
是无法进入的,会带你到首页,要使用这个页面有两个条件:9 P4 c7 `1 H# d8 Y# X& \# J
1.身份为管理员并且已经登录。2 ~4 ^& H" s9 `/ d' e. X4 y8 ]
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/
" h e: g+ ^' ?8 S, G # _. l2 @% V. Q0 H2 i) l
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:+ S4 ?' H8 C6 o* `# r
8 k1 `0 y9 T& ]2 x. Ohttp://localhost/admin/Editor/aspx/style.aspx
2 O& O3 @8 N. l# U- _: X6 q剩下的提权应该大家都会了。! T# q: B4 Y1 \0 e
9 p/ U& O8 t8 F9 `, T3 l, R
之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
! z1 _. `) Q. y! v- z9 m, G# F$ h# K4 T3 `& X
* O; ~9 N0 S" @+ G" T9 _+ B
, x2 E- d1 q7 { E1 ^( L- ?/ H3 s1 Y提供修复措施:6 ^5 X q+ R# {
8 w& U2 f$ s* Y& Z W8 ]) Y9 i加强过滤) K) ?, m& w& j5 |
" n7 o1 |8 X, G0 ^1 i! i& ^ S
|