千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。
8 T) N. x3 Z0 H- X
1 S% B) N; n6 o+ M9 S: u& B' R 0 G) `# d$ [! Y/ t g1 b9 f
; y9 K2 A3 f9 c2 i3 x M( T7 P$ Q) n$ p$ `6 t; g
漏洞名称:千博企业网站管理系统SQL注入
* O5 X* l7 e% a: f1 T* i测试版本:千博企业网站管理系统单语标准版 V2011 Build0608; b, X2 X& _+ ~# \6 X9 `2 u
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。
) x0 Y9 H0 T* `# A' }% h* b漏洞验证:
% b- {9 ~# _& i3 i
+ C7 P5 @. h3 C& B访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容# L) f* y) Y) ]1 f1 Q5 S
访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
* z! W5 b! j& G' E
+ ?0 h+ s/ X8 y/ k那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
! w. v+ w( r: C9 Q. z ; q8 q0 f1 L" B+ b
$ _8 U% k3 R* v- F
; {1 z8 s9 A8 a! c
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
I$ t5 f8 O: }( R
+ }! e' q' f) F+ V' Phttp://localhost/admin/Editor/aspx/style.aspx: P. s- K2 m0 T/ {& m
是无法进入的,会带你到首页,要使用这个页面有两个条件:
1 o. }* G+ b" E1.身份为管理员并且已经登录。
& c2 w+ ~; |9 `* n' C* L. a% M5 j a2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/! k9 a# K$ |2 c# ^* y" v
8 s6 y+ ?9 z2 Z$ o. V* O9 Z现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:& y6 n3 R5 B4 z7 j
) ]2 l; D2 g& y: Chttp://localhost/admin/Editor/aspx/style.aspx+ a, \8 {& t; O* n0 L I0 M
剩下的提权应该大家都会了。
* L8 }3 R* X) u3 Z
5 _& l4 ]) @" s9 R [: P4 h( R之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了
/ R8 [9 Y1 Q! r6 n; H6 h. E& b
7 g, Y, @; d! [. i : O$ ]. G+ S3 \0 a3 g+ Z3 m( u
4 Z3 t2 Y+ J% Z0 C" L4 L) w
提供修复措施:
) C. ]( o8 [1 G! Q6 T; V+ `; L1 E7 `6 m( z) ^
加强过滤
- Q) H+ @! I: o$ }) ^2 }" ^
! }$ S$ V9 o, ~( J8 i% F1 c1 D# R |