一个xss漏洞问题分析

问题描述:

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("\"","&quot;")%>'};
</script>
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,931评论 1 45
  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,430评论 0 3
  • 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Se...
    chinariver阅读 5,711评论 1 49
  • 讲的是:一天早上在看到存有自己所有积蓄的银行卡要倒闭的时候,马修去世了。玛丽拉和安妮因为马修去世而伤心不已。 好句...
    姜凯睿阅读 212评论 0 0
  • 第一节,套路王 课堂上,老师吱喳着,迟南方看不进书,也学不进去,博学的老师曼妙的课堂变成了她眼中的小鸟。 迟南方发...
    迟南方阅读 268评论 0 0