找回密码
 立即注册
查看: 2964|回复: 0
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-12-10 10:20:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
感谢生生不息在freebuf社区”分享团”里给出线索,才有了本文
+ l# L' ~5 [+ o, }, v, E
& @- x, d' w3 @! A  m: w原帖:http://club.freebuf.com/?/question/129#reply12
6 |; R* }4 H( V1 X$ F1 Z
' N. B( t4 f+ f2 g& B# D) s# T3 JFCKEditor 2.6.8文件上传漏洞7 A' L  t* Z9 e  Z5 V, u. W1 e. a

  g0 a# m/ C. j+ @0 LExploit-db上原文如下:
% W3 L7 x. K( _' s* Q* t# y+ u+ U7 W5 [6 u% ^4 p8 @7 E+ N3 z. ~4 t
- Title: FCKEditor 2.6.8 ASP Version File Upload Protection bypass
8 y* ^( n" E( G" O0 b# L& z$ A- Credit goes to: Mostafa Azizi, Soroush Dalili
7 D/ Z# H+ b& b- Link:http://sourceforge.net/projects/fckeditor/files/FCKeditor/
1 Q2 Y) T) k9 |$ G: O- Description:
. f' m" k# d2 e3 T# L: ]There is no validation on the extensions when FCKEditor 2.6.8 ASP version is
. ^# q& n7 F/ L  ddealing with the duplicate files. As a result, it is possible to bypass
5 v( x8 `- E$ _% @# C* c% Gthe protection and upload a file with any extension.6 y2 Y9 {2 Z7 M9 N- y
- Reference: http://soroush.secproject.com/blog/2012/11/file-in-the-hole/
4 x" s8 d- W' e1 w) a6 k8 W- Solution: Please check the provided reference or the vendor website.
; f& v! \* k; N/ _' N$ c& p' X0 C4 o
- PoC:http://www.youtube.com/v/1VpxlJ5 ... ;rel=0&vq=hd720" C* b+ [. r, R; s/ K+ L* T
"4 |* E; w1 P7 e
Note: Quick patch for FCKEditor 2.6.8 File Upload Bypass:
( {7 @( _- m0 S+ y
" O5 f9 a" X5 w4 M! K+ vIn “config.asp”, wherever you have:  u( }0 k0 C; Y6 P3 M+ X2 x
      ConfigAllowedExtensions.Add    “File”,”Extensions Here”
: J8 f1 J/ K) ~  x, S; v" w6 SChange it to:
- d! \: X# l& ?  T% Y* H      ConfigAllowedExtensions.Add    “File”,”^(Extensions Here)$”在视频(需翻墙)里,我们可以看的很清楚:
! L& \4 {: t, k, r: @% x3 n9 @% ?" n1 D4 L9 `2 i, s9 u6 `  w
1.首先,aspx是禁止上传的$ i) u1 ?9 R# _& S& l$ C  S1 j6 s
2.使用%00截断(url decode),第一次上传文件名会被转成_符号
1 ~% U5 V* H1 y. M6 G. |7 q2 |: l. L- W8 @, x/ {  m

# ~6 X9 n* j- W& _- k# S7 b' S8 [- D0 v* a+ \' \9 V6 `1 c2 L9 W
接下来,我们进行第二次上传时,奇迹就发生了( ^% r* {1 y+ T% j2 {
4 p5 I1 I- F4 i8 U. e6 b

: ^7 S' U% Z2 Q* h3 Y: s& E* D4 ?7 O; ~( T
代码层面分析可以看下http://lanu.sinaapp.com/ASPVBvbscript/121.html0 }- _( k$ y' A% }! H5 Y: A
) j1 _  u) Z8 S, u$ ~8 y! o# V# l
' n6 q5 j" ]: J
  _8 G4 p! n! V0 }, [4 o& O
CKFinder/FCKEditor DoS漏洞
, E, k5 [; R9 b8 r( R
! u! u& d6 ~2 ]相比上个上传bug,下面这个漏洞个人觉得更有意思$ T! S/ D+ r' `/ u& P& [

3 [0 a" B& j- D0 z
: B" l+ s8 v1 e$ r
) h- ~3 ?6 k. Y: m! xCKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观,快速学习的各类用户,从高级人才到互联网初学者。 , ?' m" Q* x! V4 }/ |; Z) w
  ?6 E1 _% S7 s) L, u2 Z/ d
CKFinder ASP版本是这样处理上传文件的:
( F5 B+ v* q" P3 t. Q' I" M' c! ]
2 C2 Z4 ~$ j8 f# l' I- g# a& A" q当上传文件名已存在时,会进行迭代重命名,比如file(1).ext存在了,会尝试重命名为file(2).ext……直到不重复为止。8 C  h- k, ~0 g1 l% z6 ^% I
3 i2 v+ F# _; Z: T
那么现在有趣的事情来了——windows是禁止”con”作为文件名的(关于这个问题我印象中很久以前,win也有过con文件名漏洞,有兴趣可以确认下)- v* k2 j. A* ^# `6 F9 P7 c

- M3 w6 a+ G- V; U4 ~dos方法也应运而生!, b! o" K# ]% V5 W6 X9 z$ Y8 o& [
( A4 T/ Z, N6 J5 r6 T
6 G3 H9 [, K  }* X3 q: S
+ S& M7 o! k6 k' `7 r7 e& \
1.上传Con.pdf.txt* d% B2 p3 L  r0 C' D5 o# i  }
2.CKFinder认为“Con.pdf.txt” 已被占用,于是开始尝试Con.pdf(1).txt,Con.pdf(2).txt……Con.pdf(MaxInt).txt从而对服务器形成致命dos。
: |& ?1 G7 u8 T
. V8 h7 g6 E8 x$ r: B
回复

使用道具 举报

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

本版积分规则

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