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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-12-10 10:20:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
感谢生生不息在freebuf社区”分享团”里给出线索,才有了本文
4 q  \1 b. o- x, H/ \+ J4 J- R6 T# T6 S4 K8 C
原帖:http://club.freebuf.com/?/question/129#reply12
8 G4 c1 r& R: j% R$ \3 Z, A) [8 z6 Y
FCKEditor 2.6.8文件上传漏洞
# y/ i  @% y7 T, u+ h; N$ N$ U( M, D5 A- m
Exploit-db上原文如下:
5 n7 ]' z* Z# }0 l. i5 m! N
0 }$ g- I4 B3 V( r" w( Q: t: a- Title: FCKEditor 2.6.8 ASP Version File Upload Protection bypass
/ I7 E7 y2 Y7 A$ x- Credit goes to: Mostafa Azizi, Soroush Dalili" G- e" ^% y6 G3 o( q; J5 E3 n
- Link:http://sourceforge.net/projects/fckeditor/files/FCKeditor/
% P; t5 D/ a3 O, M5 a+ d- Description:0 Y" s' G: ]9 Q  k1 ]6 `
There is no validation on the extensions when FCKEditor 2.6.8 ASP version is
% n6 q8 f, ^& h. q8 Ddealing with the duplicate files. As a result, it is possible to bypass1 o9 P6 M2 I7 b: o/ ^% g  S+ _
the protection and upload a file with any extension.) Q8 }2 S/ x$ q# F
- Reference: http://soroush.secproject.com/blog/2012/11/file-in-the-hole/
; Z8 E3 a6 ]: J* u- Solution: Please check the provided reference or the vendor website.
6 C' Q# t0 Z) C3 h+ H" ]( h" ^6 N5 }' q% C3 j3 G# G5 x
- PoC:http://www.youtube.com/v/1VpxlJ5 ... ;rel=0&vq=hd7204 l3 z; w+ u  K6 y. q' k, M  j; A
"4 e6 Q2 D' a( }$ s
Note: Quick patch for FCKEditor 2.6.8 File Upload Bypass:
7 v  Q  F  @6 U) }2 n3 w$ H- ^5 O% H! ]9 Q" R
In “config.asp”, wherever you have:
/ a4 b3 \% T% j  j      ConfigAllowedExtensions.Add    “File”,”Extensions Here”, Z" @6 u9 p6 L6 N. i9 x/ W' b8 ~
Change it to:. [7 V( ]2 |: o
      ConfigAllowedExtensions.Add    “File”,”^(Extensions Here)$”在视频(需翻墙)里,我们可以看的很清楚:
& {; c5 p8 [: D$ L; _# H1 k8 r
7 I- |% y- H9 M- ~( j5 H) I1.首先,aspx是禁止上传的( ]; G+ X+ d5 w% E# Q
2.使用%00截断(url decode),第一次上传文件名会被转成_符号
6 p8 P1 b# U, B2 i# L+ o5 i% ]$ V

; ^/ i& U4 i; U  d8 d" y. I6 C, o6 l6 [5 V, h) G- T, v
接下来,我们进行第二次上传时,奇迹就发生了  x9 |% b* t  H" ]9 s

' [( h1 y8 o- v; |4 y% W" ~6 @- L4 {" G4 G; N$ m$ ]+ l
" j: H: P( }5 A1 G+ X1 P
代码层面分析可以看下http://lanu.sinaapp.com/ASPVBvbscript/121.html, E$ [, R$ D: H0 j

6 |7 o/ ~/ f/ {% A6 ?! {8 z - t' I: U: H: W8 G

3 H$ Y5 C8 D0 v- q/ ~CKFinder/FCKEditor DoS漏洞
& q/ ]: B9 e! t: S
3 ?# i+ x% K7 K& X相比上个上传bug,下面这个漏洞个人觉得更有意思7 b- F- f. ?8 G8 r5 i, c$ s, H
* I' A5 g0 U$ P. R6 P2 j' I5 s
/ p4 H5 c' L3 h: X& Y" k: U; {0 N$ t& v

3 H/ M$ u; T2 A" mCKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观,快速学习的各类用户,从高级人才到互联网初学者。 ' _. H; R1 \% Q4 A4 q
1 t# l6 k5 q6 t: m
CKFinder ASP版本是这样处理上传文件的:
6 o7 W( r" n* ^1 ~' h8 ?' c
$ f4 D/ \8 [( S9 X. F/ B/ g* i当上传文件名已存在时,会进行迭代重命名,比如file(1).ext存在了,会尝试重命名为file(2).ext……直到不重复为止。! ~7 l% }5 p! j9 I) Q" o" l

* n* w! {  c0 C* d  p2 V" K/ q那么现在有趣的事情来了——windows是禁止”con”作为文件名的(关于这个问题我印象中很久以前,win也有过con文件名漏洞,有兴趣可以确认下)5 c. @/ M' n2 |- J+ _
- {( l9 e6 r3 g- t3 q7 ?+ N
dos方法也应运而生!
; o" Z& V* e+ R
% C0 p; T( U  { , h; A1 }* p! X  Z

% C" h+ a$ v( ^$ M0 q# K# K( Q( }1.上传Con.pdf.txt
- k0 x# j7 D: `& Q2.CKFinder认为“Con.pdf.txt” 已被占用,于是开始尝试Con.pdf(1).txt,Con.pdf(2).txt……Con.pdf(MaxInt).txt从而对服务器形成致命dos。
8 }* ^# U! @3 z6 K2 I5 z! a$ O8 d4 h  I  l8 m$ p! g
回复

使用道具 举报

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

本版积分规则

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