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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-12-10 10:20:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
感谢生生不息在freebuf社区”分享团”里给出线索,才有了本文
; f' t+ z- I# Y" d
$ r! m# {" C, {* x, l7 g8 G原帖:http://club.freebuf.com/?/question/129#reply12
* Y) u: m, W& j/ L* o) E. _) T
8 a) p0 [) Z3 y; x* FFCKEditor 2.6.8文件上传漏洞0 a( _1 ?, [: k5 J

  r" T7 }* r4 C1 d/ \* F* _7 ?6 EExploit-db上原文如下:
! o7 p; h5 v7 F, z! s# U1 c! P1 Y1 H) O, W
- Title: FCKEditor 2.6.8 ASP Version File Upload Protection bypass
( N4 M6 N9 ?  Z& c- Credit goes to: Mostafa Azizi, Soroush Dalili; A- }8 {. D( k
- Link:http://sourceforge.net/projects/fckeditor/files/FCKeditor/
% q9 c$ Z& k- R4 P) E- Description:
4 d" T- t+ f$ qThere is no validation on the extensions when FCKEditor 2.6.8 ASP version is
& C! [) @/ V  P* f3 xdealing with the duplicate files. As a result, it is possible to bypass
/ a( x& `- a5 B" J- V  Wthe protection and upload a file with any extension.
: {# i, _: M4 N  D: ]- Reference: http://soroush.secproject.com/blog/2012/11/file-in-the-hole/" A, F' s$ ?7 G+ N# S6 g- F  b( S
- Solution: Please check the provided reference or the vendor website.1 z! c* B% _0 |) \% q4 q* w# X2 s8 Z. t' I
; t7 x+ X9 i' H. {" ^9 _7 k: h
- PoC:http://www.youtube.com/v/1VpxlJ5 ... ;rel=0&vq=hd720
' N; L$ r2 H2 A1 m% Q- m* W3 m5 O"
" W5 W7 D5 y3 V- \2 WNote: Quick patch for FCKEditor 2.6.8 File Upload Bypass:
7 q7 U- W5 g3 e5 l5 `
0 b9 i- B: ~. ^: v* i# qIn “config.asp”, wherever you have:& H4 X  x( r& m" ?2 Q1 u/ e
      ConfigAllowedExtensions.Add    “File”,”Extensions Here”
' T! C( |+ |# k; [* c) X7 qChange it to:4 V  B9 X- u+ ~- h# ]
      ConfigAllowedExtensions.Add    “File”,”^(Extensions Here)$”在视频(需翻墙)里,我们可以看的很清楚:
3 X& J, x9 H5 [- g2 e$ S, h& Q6 R# ]& V/ B
1.首先,aspx是禁止上传的
2 a/ ?# H. H# {' G8 o6 W3 M; }. n2.使用%00截断(url decode),第一次上传文件名会被转成_符号
2 y/ D6 `9 I3 y3 n9 ~: V0 J5 h" `' @
* @1 ?. V; c9 A% I

0 Y; K1 c3 r1 ?( o1 a, I接下来,我们进行第二次上传时,奇迹就发生了
! ^6 C7 P; U7 R" i0 P% t$ L/ D; S9 N6 f: _/ p

4 t7 x5 X( t& d$ N6 A
0 v- H! v6 H% S0 k1 s代码层面分析可以看下http://lanu.sinaapp.com/ASPVBvbscript/121.html
/ B+ e+ I; w! S% n/ e  n& v+ a# y
$ p- e& M$ J6 i  U2 h
- E% i' r" i3 w
CKFinder/FCKEditor DoS漏洞' B5 p& R3 O6 l. T7 F+ v! ^

5 {1 Z7 X* j7 e6 f+ w相比上个上传bug,下面这个漏洞个人觉得更有意思
* B5 O, G5 J7 f6 o! @# Q0 m& R+ {; Z& K* c" W  i% L
% w2 |5 ]* x7 C: |; P  l, }2 D

( R3 |- c: U% K! @- y$ e- L6 YCKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观,快速学习的各类用户,从高级人才到互联网初学者。
' a' `0 j; Y7 ], c4 [7 A1 @# |& X
3 k) P; T* d0 CCKFinder ASP版本是这样处理上传文件的:( V4 u* s! c8 I: ~! j
4 ]4 v0 M) F# e  t  s' {6 o
当上传文件名已存在时,会进行迭代重命名,比如file(1).ext存在了,会尝试重命名为file(2).ext……直到不重复为止。
$ M: |- }' T% D5 X3 N" n6 @1 ^: q4 n; e* \0 F, B( ]
那么现在有趣的事情来了——windows是禁止”con”作为文件名的(关于这个问题我印象中很久以前,win也有过con文件名漏洞,有兴趣可以确认下)* g8 U3 i5 W" K1 T- d7 a( f- [3 T

* }+ M4 O# \( x$ K( Sdos方法也应运而生!
1 T8 S- t1 Z5 r; o% ?/ A' K, ?5 C$ t  h
) \3 @; t* r7 e+ G3 |4 O9 ?- L
& n3 A" x2 M! K! Q) _" E: N
1.上传Con.pdf.txt% W, E# D  y( ]; t- T0 v
2.CKFinder认为“Con.pdf.txt” 已被占用,于是开始尝试Con.pdf(1).txt,Con.pdf(2).txt……Con.pdf(MaxInt).txt从而对服务器形成致命dos。: ]% U8 E; q/ F9 h+ p1 @  c) J

* s# W3 {' O. f, ~7 n
回复

使用道具 举报

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

本版积分规则

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