千博企业网站管理系统是一套比较常见的企业网站管理系统,很多市面上的企业网站都是改它的源码而来的。它的ASPX版本是封装起来的,就是说很多东西是放进DLL里面的,因此给查看源代码带来了难度。漏洞出现的版本是2011版的了,网上挺多的,其实想要说的重点是在后面的GetShell,很有技巧。
: @ ], H, A+ x2 ]8 r+ R; L5 [, w) C, c
& F1 G' ]$ Z' x8 o
' u3 b! }2 B5 w) z& t
) Z* @! n7 |4 u4 F+ Q漏洞名称:千博企业网站管理系统SQL注入
4 b8 p$ _9 s1 z# k测试版本:千博企业网站管理系统单语标准版 V2011 Build0608& J: s: ]7 F0 G9 Q8 }* @4 w( `
漏洞详情:由于搜索处未对输入进行过滤,导致SQL注入。出现漏洞的文件名是:Search.Aspx。& [8 a- Y S' [* u/ {2 ^
漏洞验证:
& ]7 |* M m# u
) t0 W/ g/ G. R, `) }6 r9 g# m& b访问http://localhost/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%Jarett,返回所有内容
7 p' L+ m2 ?: k P5 S, r. b访问http://www.xxx.com/Search.Aspx?sid=2&keyword=%' and '%Jarett%'='%sb,返回为空( [8 } ^) L+ z
- ^' x/ Z$ P; X6 q3 X$ n1 c6 S
那么就是存在注入了,不过可能无法直接union出来,要折半查找,慢慢手工刷吧,不一会儿,就刷到你脑残了。
; ^: y9 Z/ @7 ^% d+ M ; P( q$ v3 Y f1 x2 Y' s8 u3 ~/ ^
' E6 Z3 h! R) d- Q' M/ C8 i2 | * M+ \# |! Q2 r) n& l% X4 L
得到密码以后一般直接加个admin目录就是后台了,不出意外的话,而且进入了后台以后,不出意外的话,你是无法GetShell的,但是本地测试时发现了个一个很有技巧的GetShell方法。这个系统使用了eWebEditor,但是无法直接利用,已经经过二次DLL封装处理的了。直接访问:
- r5 c% d9 u% Q/ A; c7 r) \ & a3 y5 w- X2 J( J- F# K* X
http://localhost/admin/Editor/aspx/style.aspx4 c& t3 [5 ~' R+ j: v, U
是无法进入的,会带你到首页,要使用这个页面有两个条件:
4 \0 s( ^8 S' Y1.身份为管理员并且已经登录。5 w0 s# v0 d" o7 u( u4 q1 D
2.访问地址来源为后台地址,也就是请求中必须带上refer:http://localhost/admin/% e4 U5 u2 g( `
S8 a' f* u2 A7 d
现在我们第一个条件已经有了,只需要使用火狐的插件或者其他插件来伪造一个refer头就可以直接进入样式管理接口:$ q6 |! k& e4 M+ j1 v
8 q1 W! H2 j! ^9 }7 bhttp://localhost/admin/Editor/aspx/style.aspx
$ `) j3 K, z# _剩下的提权应该大家都会了。
7 i1 ?+ G: X5 \& A+ x
^# P6 U9 j- b/ I% c之所以发出来是因为这个提权方式真的很特别,如果不是本地测试偶然发现,我相信没有多少人会去试一试加refer头。也算是奇葩GetShell了 . J' l4 R4 q) |5 X7 |9 F( e
3 c. Y7 K5 Z6 y4 Q5 L0 }
9 m3 u3 s+ e! P. O( B0 ?$ b3 I
" o: J, G, [; U0 ^2 ^提供修复措施:+ O, p9 V1 ?5 F6 U+ y! }, O
8 D/ n! X' d6 @2 V$ O6 v加强过滤
; C& T/ @1 w7 W# z$ Y9 B' u" l" ?
|