感谢生生不息在freebuf社区”分享团”里给出线索,才有了本文
) Q' H8 R$ \- o
2 Q) h3 m% u7 ]# {8 W* v X原帖:http://club.freebuf.com/?/question/129#reply12
8 P) y8 t4 f' V, \
& h; K9 e# s1 x6 L f6 K: f1 jFCKEditor 2.6.8文件上传漏洞6 q m" r* A. C& `2 g
" e, Z& H, P( S% qExploit-db上原文如下:& k7 f4 n# X& s( O" a$ O
& I# j H& C( @9 C5 v- Title: FCKEditor 2.6.8 ASP Version File Upload Protection bypass& b/ d8 c/ ~; R0 J. z) o5 B6 M
- Credit goes to: Mostafa Azizi, Soroush Dalili
5 j; r+ R& c D$ b7 X9 o- Link:http://sourceforge.net/projects/fckeditor/files/FCKeditor/
* }3 a8 I& ^& Z: ~/ |" t, Z8 e2 G- Description:% @; b5 Y7 h: ?- Z
There is no validation on the extensions when FCKEditor 2.6.8 ASP version is# o$ p, G' D& e! T4 Z' Y
dealing with the duplicate files. As a result, it is possible to bypass: o3 c+ k0 \# [' G+ P- v3 C
the protection and upload a file with any extension.( W* q# v$ I1 m
- Reference: http://soroush.secproject.com/blog/2012/11/file-in-the-hole/
+ q4 S' e. V* k) M7 f* r9 _9 y- Solution: Please check the provided reference or the vendor website.0 ^) U) ~" n! _0 O: C9 M$ H6 ]
+ B% I" s7 T- r3 } _7 L2 }- PoC:http://www.youtube.com/v/1VpxlJ5 ... ;rel=0&vq=hd720' ]& s4 O8 `( w# Z7 z0 ` i
"
, w% B* W- K. t4 P3 Y; ENote: Quick patch for FCKEditor 2.6.8 File Upload Bypass:
% o3 D4 e4 s0 b% c$ S
7 m( O& b6 S" U- q# a* iIn “config.asp”, wherever you have:+ W! @) u W+ p7 X3 Y, ^
ConfigAllowedExtensions.Add “File”,”Extensions Here”
- t* h- C1 R3 q$ R& QChange it to:0 H- ]. l# {9 @* ?3 L8 m
ConfigAllowedExtensions.Add “File”,”^(Extensions Here)$”在视频(需翻墙)里,我们可以看的很清楚:
5 b. c& x% k; Z3 ?# B! x2 I6 D$ H7 s& t" j. [7 s: h! m9 s
1.首先,aspx是禁止上传的. ?; K3 C+ n k9 F5 d5 m- |
2.使用%00截断(url decode),第一次上传文件名会被转成_符号5 R! `6 d4 U( S6 p
7 o! m- c/ R7 l# R% w3 Z) [% i0 ]6 S0 V" y* ]5 i9 c
% k- z3 l! u5 n3 D/ P0 q接下来,我们进行第二次上传时,奇迹就发生了, M$ |! R% [. g& U h. m
/ l5 t y$ M }3 r2 C o; T) H
. Q% I+ L% s A1 p: s) |
! A( } L( ~6 U) e代码层面分析可以看下http://lanu.sinaapp.com/ASPVBvbscript/121.html
E& B5 I2 T( S3 N# L6 V# H) q- q. }3 o: n' Z% J: Y
! V( Z1 h% u1 J! j- }; v, \7 a2 K. z8 s
& e+ b G2 h7 s' ^" NCKFinder/FCKEditor DoS漏洞
4 B% ~3 ]% q. R5 N/ F# C. t% ~
$ A& x+ j5 N- ^相比上个上传bug,下面这个漏洞个人觉得更有意思
3 H; E1 P4 h) L/ L* m( {; ` K. M( R6 H
3 {+ G6 Z @- V( n
$ b" f" q& H, Q; K& HCKFinder是一个强大而易于使用的Web浏览器的Ajax文件管理器。 其简单的界面使得它直观,快速学习的各类用户,从高级人才到互联网初学者。 6 l r& C0 z; t
. s4 `% e+ S# D$ {* Y! W' c
CKFinder ASP版本是这样处理上传文件的:
q3 c6 I, I4 _ f8 T' `$ U) V3 R1 {; q) R1 o! c1 Y
当上传文件名已存在时,会进行迭代重命名,比如file(1).ext存在了,会尝试重命名为file(2).ext……直到不重复为止。
* ?9 t. n) A9 ]
; M8 U8 ?- \' u- L7 U那么现在有趣的事情来了——windows是禁止”con”作为文件名的(关于这个问题我印象中很久以前,win也有过con文件名漏洞,有兴趣可以确认下)0 i& H4 V$ ]5 O1 k& D4 N
+ Q$ b6 L& b0 R0 u- N$ Jdos方法也应运而生!
4 {2 \) T; ^. d! l. V; H! @
% z, B# o7 P' J2 i B
1 `) T$ s5 ~9 i! b
: x0 T$ q3 L) ?9 r# ]1.上传Con.pdf.txt
9 c, x! L- U8 B! e0 O2.CKFinder认为“Con.pdf.txt” 已被占用,于是开始尝试Con.pdf(1).txt,Con.pdf(2).txt……Con.pdf(MaxInt).txt从而对服务器形成致命dos。
) d- d! F+ o" J4 g$ r2 P, X- ]7 b& |* k' @. @8 L
|