找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2937|回复: 0
打印 上一主题 下一主题

FCKEditor 2.6.8文件上传和CKFinder/FCKEditor DoS漏洞

[复制链接]
跳转到指定楼层
楼主
发表于 2012-12-10 10:20:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
感谢生生不息在freebuf社区”分享团”里给出线索,才有了本文
* M4 @% z* U. S7 M! l  L* K# H& \! m" R8 Q3 x: n$ d
原帖:http://club.freebuf.com/?/question/129#reply12" b) e! A% t% z" y
6 _: m3 J9 T6 k$ ~0 t; A6 o$ e
FCKEditor 2.6.8文件上传漏洞/ e+ [! w! K7 K* V% P/ a
" D/ k. O+ Q; |
Exploit-db上原文如下:9 r0 e: \2 k/ ]; ]# c. I6 O

, s# K: k/ i: k$ O2 f! a- Title: FCKEditor 2.6.8 ASP Version File Upload Protection bypass
) O6 d% i4 A# E; E( R9 ~- Credit goes to: Mostafa Azizi, Soroush Dalili
* R2 G* ?; ?# k. C5 H, V- Link:http://sourceforge.net/projects/fckeditor/files/FCKeditor/, k: R1 H& e! l0 |* {
- Description:/ h% V9 }" _7 d4 B/ ~' r4 R
There is no validation on the extensions when FCKEditor 2.6.8 ASP version is" @0 d2 h2 V2 G! U
dealing with the duplicate files. As a result, it is possible to bypass
) X$ x6 d3 S# i$ b) ~% |0 Ethe protection and upload a file with any extension.9 ~+ a2 v$ t) `! Z
- Reference: http://soroush.secproject.com/blog/2012/11/file-in-the-hole/$ U% l% m% Z/ S+ r+ j8 W
- Solution: Please check the provided reference or the vendor website.  j* V7 w% U; Q* H) ^% i, g

& Z: i& x2 x+ ]8 z* q- PoC:http://www.youtube.com/v/1VpxlJ5 ... ;rel=0&vq=hd720
: {. [0 b7 z- u- P"/ p0 e5 \7 [# f! e7 E* d1 L2 ~5 F
Note: Quick patch for FCKEditor 2.6.8 File Upload Bypass:
6 W1 [6 N( V: w, Q' d
1 x1 u6 r% B0 MIn “config.asp”, wherever you have:. R2 x" c2 L) ?& d& j5 O
      ConfigAllowedExtensions.Add    “File”,”Extensions Here”9 r5 L3 F, i6 O, C2 _& o
Change it to:
7 n2 V8 u! G5 |8 H      ConfigAllowedExtensions.Add    “File”,”^(Extensions Here)$”在视频(需翻墙)里,我们可以看的很清楚:& d# k8 u" [, m% h0 Q

2 h3 x9 B9 {  O" X1.首先,aspx是禁止上传的8 L  _) N  Y6 N, S5 K
2.使用%00截断(url decode),第一次上传文件名会被转成_符号' P3 C- h% Y7 v1 S3 Z7 I- q
4 N% G  Q7 ?1 f% P2 ~

: U% }4 w1 H. R6 Y; |8 L% L
# Z0 O( |3 _3 u+ N" J接下来,我们进行第二次上传时,奇迹就发生了
2 ^" ~8 D9 R- P; D! t% g: |5 S! z4 U0 I8 G
! R% e  B  F) g/ z, W  f
2 b) n( a/ y- q! {% v, ?
代码层面分析可以看下http://lanu.sinaapp.com/ASPVBvbscript/121.html
2 ~  N/ T; t( r0 ]) }
4 O9 o9 _5 R) d; [* a ( N" x6 s' i( R4 X$ Q7 V$ O
3 o; d4 h1 \5 a. U
CKFinder/FCKEditor DoS漏洞0 B4 s$ W2 @. ~* @+ @& P! c, s  X
. t. {- B$ H/ `6 i" n
相比上个上传bug,下面这个漏洞个人觉得更有意思
  E. @  f8 v; q7 ^+ A, L: ~
) X0 [) D$ b( B* o' z8 W5 Y8 j: [
: T3 f& u( s8 G, G* Y, H/ c' r6 r
CKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观,快速学习的各类用户,从高级人才到互联网初学者。
( }& i  s0 N! r6 I+ v" j( }% q) ~9 {1 g
; E7 x5 Z; G. g; Q! v5 i0 tCKFinder ASP版本是这样处理上传文件的:$ K4 Z0 `2 P8 R1 A% s
* Z" O. O& A2 Y1 x9 c% h
当上传文件名已存在时,会进行迭代重命名,比如file(1).ext存在了,会尝试重命名为file(2).ext……直到不重复为止。
# c9 T4 H) x# D) q2 o8 e5 u9 r
/ T- d" O6 w2 W那么现在有趣的事情来了——windows是禁止”con”作为文件名的(关于这个问题我印象中很久以前,win也有过con文件名漏洞,有兴趣可以确认下)
" s" j' i7 k' r) {" H& {/ r) m: _0 f0 ?. S6 D! P; |& G! d1 [  P, s
dos方法也应运而生!; @- U* N5 W  j" n# d7 S4 Y( ?; g
' p' f3 c0 W5 p. r1 k( t5 C7 G* C* m
1 Z7 e+ j" [& E0 k4 N
9 a2 x# a6 t+ d. q
1.上传Con.pdf.txt
; }- O& U9 r2 J% {4 H# B2.CKFinder认为“Con.pdf.txt” 已被占用,于是开始尝试Con.pdf(1).txt,Con.pdf(2).txt……Con.pdf(MaxInt).txt从而对服务器形成致命dos。5 `1 b% J4 b4 G+ Z3 ?/ d5 z
& j# w# H: E- ~9 k- R& |+ ?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表