WordPress 4.2.0-4.5.1...

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 漏洞概述 WordPress 于 2016 年 5 月 6 号发布新版本 4.5.2,其中修了一 个反射型 XSS 漏洞,直接影响 4.2.0 至 4.5.1 版本。该反射型 XSS 源 于 WordPress 一个处理媒体的插件 MediaElement,攻击者能够构 造恶意 Payload,使之解析媒体文件时触发 XSS * 下面的分析部分来源:https://midzer0.github.io/2016/wordpress-4.5.1-xss/ ### Source Code Preparation 一般来说, 开源CMS所使用的Flash文件也都来自其他的开源项目, 所以直接获取WordPress所使用的SWF文件的actionscript源码并不是一件困难的事情. 以本次漏洞的目标文件wp-includes/js/mediaelement/flashmediaelement.swf为例, 通过查看Github上与这个文件相关的最新的commit, 可以发现flashmediaelement.swf来自于一个开源项目MediaElement, 版本号为2.18.1. 恰好, 这个开源项目也托管在Github上, 那么直接下载它对应版本的Release. 同时, 在对MediaElement的源码目录初步研究后发现, 该项目也引用了另外一个开源项目flashls的swc文件, 还贴心低注释了版本号为4.3.4, 该swc文件对应版本的源码同样也可以在Github上找到Release. 这样的好处一是可以避免反编译过程中本地变量名混淆/代码块失踪的尴尬, 二是可以通过手动添加debug信息再本机编译, 更快地消化代码分支结构及数据流. ### Vulnerable Output 首先来看存在漏洞的输出, 99%的Flash XSS都是由于ExternalInterface.call函数的参数注入导致的, 当然本次也不例外. 拿到源码之后, 第一件事就是看看源码中出现了几次调用ExternalInterface.call, 对应的参数是否都是可控的. 在排除了几个参数不可控或者已经做了对应防注入的调用, 唯一剩下的就是下面的代码. ``` public class Log { private static const LEVEL_INFO :...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息