中国网络渗透测试联盟

标题: FCKEditor 2.6.8文件上传和CKFinder/FCKEditor DoS漏洞 [打印本页]

作者: admin    时间: 2012-12-10 10:20
标题: FCKEditor 2.6.8文件上传和CKFinder/FCKEditor DoS漏洞
感谢生生不息在freebuf社区”分享团”里给出线索,才有了本文7 j7 A$ Y0 s6 ^$ `2 e
0 q$ j; c2 s9 m, h* e/ l
原帖:http://club.freebuf.com/?/question/129#reply12
( H( x' u. t# L, ?$ [& I1 e. v3 |" p1 x5 N) O
FCKEditor 2.6.8文件上传漏洞
7 l7 S: `, U$ i2 ]% L$ K" c# Q4 o* h/ r
Exploit-db上原文如下:
3 e1 s6 z3 T. L0 ?( x( \
8 J, g8 @, z4 U; @0 c- Title: FCKEditor 2.6.8 ASP Version File Upload Protection bypass
3 ?. L+ I2 ?" T1 J- Credit goes to: Mostafa Azizi, Soroush Dalili3 g( r8 u9 y0 V5 G) R; e4 x
- Link:http://sourceforge.net/projects/fckeditor/files/FCKeditor/
! s( p$ g: ]& X! w5 {( }- \: W- Description:3 s1 l/ }3 ~* g: {* @3 P) T
There is no validation on the extensions when FCKEditor 2.6.8 ASP version is% f  K$ z6 Z1 |( v( S* Y( w' U' L. b
dealing with the duplicate files. As a result, it is possible to bypass
) F9 G. W% P6 w, d  H9 K* Wthe protection and upload a file with any extension.
2 u, P' ?2 ^+ Z1 J- Reference: http://soroush.secproject.com/blog/2012/11/file-in-the-hole/. U) y* r, E* v' \' F& K
- Solution: Please check the provided reference or the vendor website.
2 |2 z* [4 h: K
3 F6 }$ O5 ]; u$ r0 m! T& R- PoC:http://www.youtube.com/v/1VpxlJ5 ... ;rel=0&vq=hd720! T/ S) R' z" J' |
"; O. i  |' n% O! Q* e2 ?$ r9 X& r
Note: Quick patch for FCKEditor 2.6.8 File Upload Bypass:
1 D) z. e) j+ O/ g
( g  z. G+ C! z- w- LIn “config.asp”, wherever you have:
8 k! q8 K5 D6 t8 G4 n4 u. E      ConfigAllowedExtensions.Add    “File”,”Extensions Here”& v' \0 L7 P* P8 M$ d
Change it to:
+ n  e- W* M% M6 |) r0 e: U9 r7 U: S      ConfigAllowedExtensions.Add    “File”,”^(Extensions Here)$”在视频(需翻墙)里,我们可以看的很清楚:
# o2 y3 S: H/ H8 I: _1 a, E) |0 R4 l* \* L
1.首先,aspx是禁止上传的: U; y9 G/ R& F1 z' i4 k$ q
2.使用%00截断(url decode),第一次上传文件名会被转成_符号: U+ ]1 ~8 p- E. m) C9 V9 E
0 T5 Z! V" M3 _1 [

% ^) Q$ n' I0 N+ @. U) U! h% C) O/ ^5 W9 h) N
接下来,我们进行第二次上传时,奇迹就发生了* s+ ?8 z8 L9 a) s3 K6 a

" P: ?, X" D. z+ b  s5 v4 W- P3 Z: T. n0 ~9 U; P) k* r+ s1 M
2 h% _, h6 K+ e1 w4 R# r
代码层面分析可以看下http://lanu.sinaapp.com/ASPVBvbscript/121.html) q1 j0 {' I- X- L6 [
3 t% Q) H' _- W" n  f
3 F- ]' c, v% Z

( y" X1 o0 i+ l) K2 a; b4 }CKFinder/FCKEditor DoS漏洞
. v! L! Q7 a; [$ g' o! q7 L7 B1 E, W( n; \* Q
相比上个上传bug,下面这个漏洞个人觉得更有意思
( b9 v& A% M0 {: a
  M+ i0 O* J  m5 Q3 Z; g# p ( \: T) {+ U% \& E* k7 x1 ]1 _+ r
' D) f! c: c$ q7 ?' l1 r& q
CKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观,快速学习的各类用户,从高级人才到互联网初学者。 * {$ c4 J- ^2 u+ K' [/ G+ ^  D

+ J1 D! t  J5 aCKFinder ASP版本是这样处理上传文件的:4 ^3 t( D; E, {% [9 {$ F

# N8 T* [& H& i# z9 R# Q# e当上传文件名已存在时,会进行迭代重命名,比如file(1).ext存在了,会尝试重命名为file(2).ext……直到不重复为止。
0 D: y- G% o1 }# n  ^
3 |3 D: V, {) ~9 u- n7 u5 O; `那么现在有趣的事情来了——windows是禁止”con”作为文件名的(关于这个问题我印象中很久以前,win也有过con文件名漏洞,有兴趣可以确认下)4 g7 g! l% R) y) G0 ~) ^

/ w4 a7 j5 ^6 L4 qdos方法也应运而生!
% C( Y# o& ]% d$ P# w2 G7 e5 s! @+ D$ r
, G$ _/ j0 e8 z2 o+ ~& g; G ) w9 A, b1 P6 @1 ?' W3 G, w- O

. F# P3 W! p/ U8 |1.上传Con.pdf.txt
4 p+ [" ]7 d0 x4 e# X. I4 |/ W* G2.CKFinder认为“Con.pdf.txt” 已被占用,于是开始尝试Con.pdf(1).txt,Con.pdf(2).txt……Con.pdf(MaxInt).txt从而对服务器形成致命dos。
6 d( }1 Q* L4 x% f& E3 B! m
1 E: p* Y: _  y8 f




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2