千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。$ k/ J7 m3 b1 q+ Z' |
* u& \+ m* F, D( z
T. `+ s# W; }# X0 p& D" X
% A* A" s! ^# |1 D! K
& E* B; A1 f* C, |+ i漏洞名称:千博企业网站管理系统SQL注入
, W5 U$ m3 }) e" E( ]* I& r" p测试版本:千博企业网站管理系统单语标准版 V2011 Build0608
; G+ S: O7 W* y漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。8 m1 t! f! k. O8 l x: f0 ~$ z
漏洞验证:
/ d& y7 q+ T4 v% l V% F
% \. b6 Q9 V& _* S4 e8 o/ b* Z访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容) c. l; b# d& P
访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空
& F2 s$ l3 }# o
# B# {8 `, s: ~那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。! p% m4 Y) P; v+ Y
( I1 {7 F" G7 q$ y4 f% ~
5 p8 b. u/ K& ]. k : I- f$ L. e; n/ i! U' K
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:- F( q' d/ |" m/ Q9 x1 i2 G
8 } {- ~6 ]/ d4 ^
http://localhost/admin/Editor/aspx/style.aspx
( x3 {, n8 z ~! M+ X是无法进入的,会带你到首页,要使用这个页面有两个条件:* E5 m1 N. m( _+ }
1.身份为管理员并且已经登录。
0 a T) r; r* ]7 S/ f4 D2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/6 |5 P& U/ n7 o
" l" `2 k! m Q
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:
/ f2 C4 |2 z8 P* X* b2 u9 A9 {7 G
1 N G' S6 v5 S8 u( a5 Bhttp://localhost/admin/Editor/aspx/style.aspx
8 l {2 W- p1 X1 E6 T5 S' o: x剩下的提权应该大家都会了。
/ \% s( k6 a" C* r1 A - Y# A; L' q+ ~- H& \( ^- x4 m
之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了 2 F/ A7 X* F! i& u
$ n& f5 u' U) t9 c0 k, \
7 M. `% \% w, R& s( {0 g: |, l
( K T5 r$ t5 K$ A4 ^# r4 x8 O
提供修复措施:
# O4 m$ H t U! w t0 q7 @5 ]; y( M6 F) T" i; u
加强过滤5 c8 c! ^, y: m1 w/ t
c7 P7 n; c. s6 u
|