千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。7 a& k0 ?" i2 [9 R" \1 z
8 D: [/ B0 K. c. b( c; d 7 E, E, `! s7 L( W R b& T
9 Y- I) J# o( ]
9 r5 ]! ?+ L/ \/ L& e$ R
漏洞名称:千博企业网站管理系统SQL注入* i/ G" ` A( n: A- p- F
测试版本:千博企业网站管理系统单语标准版 V2011 Build0608: W9 i2 q# i/ H" l: N
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。2 `% {8 p- l% C* M9 X6 |* J: r
漏洞验证:9 u, f8 N. V! o Z0 C0 {! G. |. B
. K7 r' `# d( ]; V
访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容! ~ C( F/ N, \% U
访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
8 h$ L/ x4 y2 X" t I + p2 \4 o5 G2 F' t/ s1 y
那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
7 i) P2 A8 G5 U - k9 d9 s1 x2 c7 f7 G" U$ d* p3 t
# P- F+ t' x/ c6 ~ , c" @; R& N( x
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:+ ^& N1 K; U0 V5 Z) |
, w( B+ ]- `" S# ?8 N. dhttp://localhost/admin/Editor/aspx/style.aspx* s7 {4 o0 Z: T* V: \3 K
是无法进入的,会带你到首页,要使用这个页面有两个条件:7 V, E: t& l, E, S
1.身份为管理员并且已经登录。
& K& P7 t7 F5 {* r! f1 ]2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/
$ K0 h) g2 |+ _# ]# c 5 ]) P/ m* y& Y; b( J' |
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:
" d" O0 b: V/ M) O6 } # V0 \4 |" d6 o
http://localhost/admin/Editor/aspx/style.aspx
, j0 f5 M; o x* W: I. K剩下的提权应该大家都会了。
9 C5 S* F3 y3 ?; Q1 |1 r
3 w9 f$ K# d" E7 E C$ z之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
$ I1 W& x% L: H% K* V# N1 f
8 ^' x& r, R, v4 @, \) X' Q, n; d
5 T) o' g3 m' e9 C! w" p0 I/ O7 i# m
提供修复措施:
' I$ k8 ^, k* E. W( h
; E/ C% W# d+ s! x+ T2 z8 ~加强过滤4 P0 L; c- ]" P$ X% [
9 _. E9 R8 B# q7 g# y# C( x" k |