问题描述:
http://zhibo.sogou.com/gameZone_格斗游戏.whtml/gameZone_格斗游戏.whtml?product=live&page=kpyxss"};alert(document.cookie);var%20a={"a":"&type=1&f=0#resultlist
url中插入"(javascript脚本)"执行了js
执行方式:
在这个jsp页面源代码里有这么一段
<script type="text/javascript">
var uigs_para={"uigs_productid":"galaxy_zhibo","pagetype":'web_${page}'};
</script>
这里的${page}是指从url里获取参数page的值,按上述url把page参数值拼接进去后,这段代码变成
<script type="text/javascript">
var uigs_para={"uigs_productid":"galaxy_zhibo","pagetype":'web_kpyxss"};
alert(document.cookie);
var a={"a":"&type=1&f=0#resultlist'};
</script>
所以就执行了alert(document.cookie);
这段代码
原因:
url里的page参数值传入后,其中的双引号把javascript代码隔开,导致注入脚本的执行
解决:
将双引号进行转义
<script type="text/javascript">
var uigs_para={"uigs_productid":"galaxy_zhibo","pagetype":'web_<%=page.toString().replaceAll("\"",""")%>'};
</script>
网友评论