我正在开展一个项目,要求我们从当前工作中删除风险领域。因此,注意力集中在我们的一些嵌入式Flash内容中配置变量的值,例如:
<object type="application/x-shockwave-flash" data="https://www.somedomain.com/videoplayer/flowplayer.swf" width="640" height="360"> <param name="movie" value="https://www.somedomain.com/videoplayer/flowplayer.swf"/><param name="allowFullScreen" value="true"/>
<param name="wmode" value="transparent"/><param name="flashVars" value="config={'playlist':[{'url':'https://www.somedomain.com/videoplayer/videos/index.mp4','autoPlay':false}]}"/></object>
我不清楚的是用户如何做到这一点。 有人可以解释或提供一个用户如何使用value =“config = {...}?
注入内容的示例答案 0 :(得分:0)
在浏览器中,打开控制台。如果不是这种情况加载JQuery:
var scr = document.createElement('script');
scr.setAttribute('src', 'https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js');
document.body.appendChild(scr);
使用修改后的参数重新加载flash对象:
$('[name="flashVars"]').html('
<object type="application/x-shockwave-flash"
data="https://www.somedomain.com/videoplayer/flowplayer.swf"
width="640" height="360">
<param name="movie"
value="https://www.somedomain.com/videoplayer/flowplayer.swf"/>
<param name="allowFullScreen value="true"/>
<param name="wmode" value="transparent"/>
<param name="flashVars"
value="config={'evil':true}"/>
</object>
');
客户端的所有内容都可以由用户操纵,因此不要依赖它。