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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-12-10 10:20:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
感谢生生不息在freebuf社区”分享团”里给出线索,才有了本文. R/ F* Q% F8 e, n0 n
9 v7 k& m& W) w
原帖:http://club.freebuf.com/?/question/129#reply12  U& b: C3 Y6 ~8 y( U
, s" O: Y& J9 ^9 p" d! p* V. ^$ S
FCKEditor 2.6.8文件上传漏洞
3 l1 P5 N6 p. h: k) H% b% N, O" \6 m5 ]5 ~3 Y
Exploit-db上原文如下:
) z1 [* O" i+ D9 ]: I" o
5 ?: |0 j1 |/ \2 o. f' }# h- Title: FCKEditor 2.6.8 ASP Version File Upload Protection bypass
, @6 B& c" H2 f' O9 `. N' h3 Z- Credit goes to: Mostafa Azizi, Soroush Dalili
( l& x/ _0 c! v8 w* `- Link:http://sourceforge.net/projects/fckeditor/files/FCKeditor/
! T: L' Z  Y9 \4 d" K7 j4 r- Description:4 J( j2 {* I  J+ i2 i
There is no validation on the extensions when FCKEditor 2.6.8 ASP version is+ L! V  _* ~$ ^+ n
dealing with the duplicate files. As a result, it is possible to bypass( H9 h! F- z7 b9 \; L* C9 L- |) M
the protection and upload a file with any extension.3 E" z/ z7 Q+ Z, t
- Reference: http://soroush.secproject.com/blog/2012/11/file-in-the-hole/, ~: t! v# Y( F* k
- Solution: Please check the provided reference or the vendor website.- t7 ]% j- ?5 q( R

0 I) Q0 h: Y6 y6 z6 [1 m- PoC:http://www.youtube.com/v/1VpxlJ5 ... ;rel=0&vq=hd720
2 g" T; N! W+ d- I3 u% i1 ["
3 B/ i: o$ C4 K) vNote: Quick patch for FCKEditor 2.6.8 File Upload Bypass:8 r4 U1 d4 m# `1 g$ [

5 x* p* w2 w( ?9 x4 gIn “config.asp”, wherever you have:; T; n7 t3 e# O. j6 x
      ConfigAllowedExtensions.Add    “File”,”Extensions Here”5 g2 Q3 A1 q9 l: T2 R  q( W/ P
Change it to:# X% f" W* O$ f' }# P9 I
      ConfigAllowedExtensions.Add    “File”,”^(Extensions Here)$”在视频(需翻墙)里,我们可以看的很清楚:, o9 b$ Y  S5 O: J
& }5 t/ l; l1 h9 U7 @; v0 H
1.首先,aspx是禁止上传的! B9 p( {5 u( `+ o7 V* }$ M: {
2.使用%00截断(url decode),第一次上传文件名会被转成_符号7 {. Z- t; v( x# i! O; b

7 H3 |* ^2 ^3 j) W# {- {6 X
/ m6 a- C1 A2 d# p3 F& `( |  o- j$ e# d0 T, ]1 g; d
接下来,我们进行第二次上传时,奇迹就发生了7 l+ j( k6 s* Y! O0 Y' o) ^2 u

( C+ i# M9 Z* A- B/ s
' T  f& W! C0 B+ B
3 w1 O7 s% K. F5 e0 Z3 n* }% g; P9 w- m代码层面分析可以看下http://lanu.sinaapp.com/ASPVBvbscript/121.html- W0 S* ]# J) B6 W9 c% F9 g/ ^

& D& ]% o  z6 n4 x8 F
, l3 ]  m* U8 e% H/ r, Q$ G1 ~1 f2 T7 R* t! w2 Y
CKFinder/FCKEditor DoS漏洞
$ h/ \; q& b& d. K" z, B: G  r+ T( @
相比上个上传bug,下面这个漏洞个人觉得更有意思' ]" _! s8 K7 H
( N: g, [) O+ O5 y8 R1 Y9 L

- V5 B" P; w  S( m  l  j
0 z( [3 [9 V) s% O3 CCKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观,快速学习的各类用户,从高级人才到互联网初学者。 0 K* @+ ?0 Y1 u3 t) \' e3 w" p
4 m. O* }: g/ q1 U! u. ]
CKFinder ASP版本是这样处理上传文件的:
, q5 K+ f( Y( S3 s3 ~
* V  y0 ]: a9 H- z5 V当上传文件名已存在时,会进行迭代重命名,比如file(1).ext存在了,会尝试重命名为file(2).ext……直到不重复为止。  w+ ]) Z, q- C# T& M7 z

1 Q3 t0 \2 y7 j, P9 f那么现在有趣的事情来了——windows是禁止”con”作为文件名的(关于这个问题我印象中很久以前,win也有过con文件名漏洞,有兴趣可以确认下)+ \3 c. O6 l, h) R
% C' }" M% j! ~' [0 u5 i
dos方法也应运而生!
7 p. E5 z6 j8 p" \' U+ }3 P7 }! \: M- |. r% n1 R
8 E2 Z6 o1 ~! _. B$ Q( Y

9 k- O- W) F9 @1 Z/ h6 e1.上传Con.pdf.txt
% R4 R" w! d: g0 k: K2.CKFinder认为“Con.pdf.txt” 已被占用,于是开始尝试Con.pdf(1).txt,Con.pdf(2).txt……Con.pdf(MaxInt).txt从而对服务器形成致命dos。
6 `- ~3 c/ C. l. _
. J  o, o/ j2 o! W/ d5 t
回复

使用道具 举报

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

本版积分规则

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