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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2012-12-10 10:20:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
感谢生生不息在freebuf社区”分享团”里给出线索,才有了本文$ G% h' H0 m4 W0 H% B7 F
7 A2 l' \+ `! J; K( b: s* o& s
原帖:http://club.freebuf.com/?/question/129#reply12. ]1 S" Q3 V* Q

! H/ [" |& N( k( nFCKEditor 2.6.8文件上传漏洞
. Y/ \3 U4 x( j! v- N1 S( _
7 C& o3 @) p; v% M, o# [" P6 L  TExploit-db上原文如下:
$ i% i3 ], D, x" Y3 t2 F+ j1 N- b" s$ a
8 E. b/ R+ C( C1 |* s. F1 r- Title: FCKEditor 2.6.8 ASP Version File Upload Protection bypass! h" @/ }) R0 t
- Credit goes to: Mostafa Azizi, Soroush Dalili  q4 _% F3 i/ g& C! Z2 R
- Link:http://sourceforge.net/projects/fckeditor/files/FCKeditor/2 t( I$ x: ^0 P3 ^" Z
- Description:6 B+ m" i" k( j0 ~) n4 k) q! n
There is no validation on the extensions when FCKEditor 2.6.8 ASP version is/ Y9 r+ T/ d  ]2 g  X* S  g
dealing with the duplicate files. As a result, it is possible to bypass
# G) s+ U  L1 \4 ~the protection and upload a file with any extension.
5 N- X2 L8 H. A9 v/ K+ l7 [. ~- Reference: http://soroush.secproject.com/blog/2012/11/file-in-the-hole/1 p' M0 M+ q9 Q3 r9 G: g
- Solution: Please check the provided reference or the vendor website.
9 Q  [( z7 n0 ]) f4 W' N, d' i/ z3 X8 k* j9 N& M) C' @
- PoC:http://www.youtube.com/v/1VpxlJ5 ... ;rel=0&vq=hd720
$ U1 P5 X' {) P( l' N2 T"
4 ~0 }2 T+ u) Q. u3 a! FNote: Quick patch for FCKEditor 2.6.8 File Upload Bypass:$ @, F( @+ p1 y3 ?

. p! Z. e7 H  w0 ]0 d5 O5 _( WIn “config.asp”, wherever you have:
. r9 B+ `' G1 M0 f) v: T1 Q/ \7 d      ConfigAllowedExtensions.Add    “File”,”Extensions Here”
4 T8 X' Y6 D: W* LChange it to:
( X, R5 q8 i" u8 K) C& R      ConfigAllowedExtensions.Add    “File”,”^(Extensions Here)$”在视频(需翻墙)里,我们可以看的很清楚:
- \& Y8 K% @6 Y! i9 T
) x0 v- f, h+ L3 H! O! C1.首先,aspx是禁止上传的
2 m9 x, @1 R9 ]  w2.使用%00截断(url decode),第一次上传文件名会被转成_符号
. m! {" g: L7 Z$ ?7 q* d: ~7 v8 ?( M3 r. v0 [; K4 ]

7 H+ P( h" ?3 Y+ a" o% X: W# V) c; @: a, j: S) ^3 w" P
接下来,我们进行第二次上传时,奇迹就发生了
6 ]/ I* `: O& W2 [3 F) w9 Z2 K  [0 a

# b; _6 b# L& k( \" U- R, ^3 ^# Z0 D* n( n2 m7 |/ {
代码层面分析可以看下http://lanu.sinaapp.com/ASPVBvbscript/121.html) W6 ?! l: l( S8 n: P, `1 y

! a( V+ T* {9 \, D: x+ u9 c) {: X
; n) z3 W2 w4 N! @' R; `# x( N* u, d- p3 r# R: y% l
CKFinder/FCKEditor DoS漏洞8 U% \& L4 ^7 {& V# f# O! x5 \
- O& \8 N! b& l
相比上个上传bug,下面这个漏洞个人觉得更有意思! Y% N$ x: F0 Z# ]5 v1 N4 K
% k7 O9 O" z3 v6 C9 n
1 ~3 b" E4 C0 n& O) j1 p( g+ [+ y/ ~
4 z8 ?; ^8 F9 f# q' V
CKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观,快速学习的各类用户,从高级人才到互联网初学者。
  H+ p# H7 `1 p+ @/ C1 r7 o2 `1 N
; q: o0 T: T" w. |4 CCKFinder ASP版本是这样处理上传文件的:5 v2 k; N6 ?/ |3 b2 E$ M/ j* Z

2 K) L* }! _7 \; v/ w# D9 m2 {7 ^' q3 ?! y当上传文件名已存在时,会进行迭代重命名,比如file(1).ext存在了,会尝试重命名为file(2).ext……直到不重复为止。
4 e' M% `1 _5 N" g  v7 O- u7 A( {
, _: s5 T4 _. t9 j那么现在有趣的事情来了——windows是禁止”con”作为文件名的(关于这个问题我印象中很久以前,win也有过con文件名漏洞,有兴趣可以确认下)9 o+ h, k/ Y4 ]5 Z2 D0 W5 ~( ]' u
6 U) f( \# h( T' {
dos方法也应运而生!1 c8 d* \) h6 V$ Z" E! _6 e

0 k; f9 E0 W- s  m
7 J' s; N0 j0 N
) i6 B( N% \  ], N/ V  l6 C1.上传Con.pdf.txt
4 o+ e# p- j. b1 v& D2.CKFinder认为“Con.pdf.txt” 已被占用,于是开始尝试Con.pdf(1).txt,Con.pdf(2).txt……Con.pdf(MaxInt).txt从而对服务器形成致命dos。
7 V4 a# S! ~" }# x5 M: E) D  x5 s; u8 _8 r* m% @
回复

使用道具 举报

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

本版积分规则

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