本文共 791 字,预计阅读时间 4 分钟
首发于 『先知社区』

在T00ls上看到一个老哥WordPress站点被搞了,下载了Access日志分析了一下,发现攻击路径是先访问了一个页面,然后访问 /wp-admin/admin-ajax.php?action=wmuUploadFiles 后直接就Shell落地了,确定是这个模块有问题了,后来说是wpDiscuz评论插件的漏洞,看了下官网V7.0.5修复了一次安全漏洞,于是下载了一个低版本测试一下。

官方版本更新信息

漏洞分析完成WordPress环境搭建后,手动安装wpDiscuz插件,看到文章下增加了评论模块。

环境搭建

PHPStorm导入Web目录,点击图片按钮,上传一个PHP文件测试一下,默认是上传不了的。

尝试直接上传

从入口点分析,原来是 wp_filter 处进行了过滤。

跟踪过滤函数

跟进去,可以看到上传的功能点,再进去。

分析上传功能函数

可以看到使用了 getMimeType() 方法根据文件内容获取文件类型,并不是通过文件后缀名判断,进一步根据 $mineType 判断是否是允许的上传类型。

分析文件类型判断方式

跟入查看 isAllowedFileType() 方法,在判斷 $mineType 是否存在 $this->options->content["wmuMimeTypes"] 中。

查看文件类型判断方法

进入 $options 中,可以看到 content["wmuMimeTypes"] 使用三目运算判断,搜索上下文得知,结果就是 $defaultOptions[self::TAB_CONTENT]["wmuMimeTypes"] 。

得到文件类型白名单存储位置

进入 $defaultOptions 中可以得到最终 $this->options->content["wmuMimeTypes"] 的值是几种常见的图片类型。

默认允许上传的文件类型

很明显此时文件类型已经通过 getMimeType() 方法修改为 text/plain 了,但是回到进入 isAllowedFileType() 的代码,发现程序只在此处对上传文件进行了判断后,直接保存了文件。

分析后续流程

漏洞利用如此,程序只是根据文件内容判断文件类型,并未对文件后缀进行校验,构造一个图片马,或者手动在Webshell前面加上图片头信息即可绕过。我们制作一个图片马,把后门文件内容追加到图片后面。

制作图片马

上传并修改后缀名为 .php ,可以看到返回路径。

成功上传

成功连接Webshell。

连接Webshell

漏洞检测在装上wpDiscuz插件后,每篇文章中都会带有特定的标签信息,且带有版本号,可利用此特征编写脚本或者御风插件进行检测。

插件指纹信息


喜欢您来,喜欢您再来

导入php插件_漏洞分析丨WordPress评论插件wpDiscuz任意文件上传相关推荐

  1. 漏洞复现 用友畅捷通T+任意文件上传漏洞(CNVD-2022-60632)

    文章目录 漏洞复现 用友畅捷通T+任意文件上传漏洞(CNVD-2022-60632) 1. 用友畅捷通T+简介 2.漏洞描述 3.影响版本 4.fofa 查询语句 5.漏洞复现 6.POC&E ...

  2. struts2 ajax上传文件 file空_WordPress插件漏洞分析:WPDiscuz任意文件上传漏洞

    写在前面的话 就在不久之前,Wordfence的威胁情报团队在一款名叫wpDiscuz的Wordpress评论插件中发现了一个高危漏洞,而这款插件目前已有超过80000个网站在使用了.这个漏洞将允许未 ...

  3. weblogic系列漏洞整理————8、WebLogic 两处任意文件上传漏洞动态分析(CVE-2018-2894)

    0x01 前言 CNCERT前几天发公告称发现Oracle公司出品的基于JavaEE结构的中间件WebLogic产品存在一个远程上传漏洞,并得到了厂商的确认,危害程度评分高达9.8分.鉴于厂商已进行了 ...

  4. php上传漏洞绕过gd库,jQuery File Upload任意文件上传漏洞

    事件背景 jQuery是一个快速.简洁的JavaScript框架,是继Prototype之后又一个JavaScript代码库(或JavaScript框架).jQuery File Upload一个jQ ...

  5. uploadhandler.php,多个WordPress主题’upload-handler.php’任意文件上传漏洞

    发布日期:2013-11-17 更新日期:2013-11-19 受影响系统: WordPress WordPress 描述: ------------------------------------- ...

  6. 通达OA任意文件上传/文件包含RCE漏洞分析

    通达OA任意文件上传/文件包含RCE漏洞分析 0x01 前提 0x01 漏洞介绍 0x02 漏洞分析 首先下载安装 绕过身份验证文件上传部分 变量传递问题 文件包含部分 0x01 前提 关于这个漏洞的 ...

  7. html 文件上传_某平台存在多处任意文件上传

    文章来源: EDI安全 01 漏洞标题 某平台存在多处任意文件上传 02 漏洞类型 文件上传 03 漏洞等级 中危 04 漏洞地址 http://xxxx.xxxxx.com/er.app.xxxx/ ...

  8. Linux使用445端口,利用enum4linux 445端口+wordpress插件任意文件上传的一次渗透

    探测内网80端口发现目标IP 目标使用Apache  2.4.7web服务中间件 使用linux    Ubuntu系统 使用御剑扫描了目录 目录扫描到了 对192.168.31.236/wordpr ...

  9. PHPCMS最新版任意文件上传漏洞分析

    工具:火狐插件hackbar 前几天就听朋友说PHPCMS最新版出了几个洞,有注入还有任意文件上传,注入我倒不是很惊讶,因为phpcms只要拿到了authkey注入就一大堆-- 任意文件上传倒是很惊讶 ...

最新文章

  1. vue+vant使用图片预览功能ImagePreview的问题
  2. php短信android,Android_Android短信操作常见协议和常用代码,content://sms/inbox 收件箱 conte - phpStudy...
  3. C++ 重载机制实现原理
  4. mysql hash分区 数目_mysql8 参考手册-HASH分区
  5. 面试官:请手写一个带取消功能的延迟函数,axios 取消功能的原理是什么
  6. H5实现微信摇一摇功能
  7. mysql相关知识点_MySQL相关知识点
  8. javase开发工具包中的什么命令负责运行应用程序_想当程序员?先搞懂JavaSE、JavaEE和JavaME之间的区别吧!...
  9. 等级保护第三级安全扩展要求笔记(2019)
  10. 注意,你需要注意的使用盗版破解软件发论文存在的风险及规避方法
  11. 联想台式计算机 不启动u盘,联想台式机u盘启动不了怎么办
  12. POI 导出 Excel:字体颜色、行列自适应、锁住、合并单元格、一文搞定……
  13. PHP base64转图片
  14. 贝叶斯网络与EM算法
  15. 运维审计系统:堡垒机
  16. Linux安装配置MySQL8.0 打war包 启动项目
  17. 【计算机毕业设计】123网上商城系统设计与实现
  18. ios获取系统自带的文字蓝色色值
  19. CSS3 animation-fill-mode 属性
  20. 编译问题解决:LINK : fatal error LNK1104: 无法打开文件“*.dll”

热门文章

  1. 外挂(目前看不懂_转帖不要怪我抄袭只是想学习而已)
  2. SurfaceFlinger 和 WindowManager
  3. Go接口(Interface)的使用方法
  4. 编写kernel第一个Hello World
  5. Android handleMessage和sendMessage 简单示例
  6. vue 后端数据成功返回 页面不渲染_vue能获取到数据数据却渲染不到页面上,为什么?...
  7. arm b bl 地址无关码_海边同居有甜有虐,又一部BL日剧来了
  8. HTML和CSS精要基础知识整理
  9. apache2 安装时报错 ServerRoot must be a valid directory
  10. linux重新识别逻辑卷,linux – 从已删除的LVM逻辑卷恢复ext4文件系统的任何方法?...