千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。$ \# z/ g5 p/ K2 P3 r
+ p% c3 a. g8 Y
8 a8 z4 ^ b8 m
. N9 r0 l5 G/ V
; y1 ?' W P1 N漏洞名称:千博企业网站管理系统SQL注入
+ g$ x8 S& f6 [" V测试版本:千博企业网站管理系统单语标准版 V2011 Build0608
( B& f) U/ v# C2 M, C漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。2 F1 Y* x% M$ u! f1 r
漏洞验证:% V* P+ S H& j8 j% f
* |9 r7 [: S) c# S6 c% C访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
# G3 I4 s8 N# G, i; ^" O2 V访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空' d) D6 I4 U, g+ I
& o& p- e9 F; O那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。8 h f, k" s, r7 }6 Z
# e# B$ E1 `( T* H$ E* ?& j" L" k
( h: {; u) H2 R. P# o3 g , m# J% F( b* a9 t7 f# u% Z) d
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:+ G; D7 S- \ B/ e
8 T# Q; I$ L6 D0 Q3 ihttp://localhost/admin/Editor/aspx/style.aspx! `$ a8 p9 \9 {" v' @! K
是无法进入的,会带你到首页,要使用这个页面有两个条件:
& r2 R2 U2 f4 N% G+ J! M; e1.身份为管理员并且已经登录。; h6 y4 k$ @1 T
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/
: H2 I, J5 \0 d1 Y
: V* C& F+ S4 u: C现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:8 t" k. o1 Y- U, U h: Q: E
! Y4 r# ^1 P) g$ ~2 U, L2 ?; Q8 |
http://localhost/admin/Editor/aspx/style.aspx1 K. S1 C0 d8 z8 `# N
剩下的提权应该大家都会了。; G* G, l& d: U# c3 y& }
/ t; ^5 P# @# r- `之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了 . q/ X5 f& b" N1 B- V
/ O E: R7 c8 S# S
. V9 Z1 `4 Q" Q8 |. m& h0 E6 K& Q- n
提供修复措施:- Y5 Q8 `9 X. p& h/ M% I& q7 ^
: z+ P0 ~+ k: l0 Z, D% Y, E
加强过滤% n1 s# Y" K8 u% ]+ g
3 _* I2 V# ?' \& W$ W% _( t" t
|