DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)

目录:

一、XSS说明:

  1. XSS简介
  2. XSS类型
  3. 漏洞形成的根源

二、反射型XSS:

  1. 原理示意图
  2. 实验环境
  3. 实验步骤
    安全级别:LOW
    - 重定向
    - 获取cookie
    安全级别:Medium
    安全级别:High
    安全级别:Impossible

一、XSS说明

1、XSS简介

XSS,跨站脚本攻击(Cross Site Scripting),为了不和层叠样式表(Cascading Style Sheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意的 Script 代码,当用户浏览该页面时,嵌入其中 Web 里面的 Script 代码就会被执行,从而达到恶意攻击用户的目的。

2、XSS类型

  • 反射型XSS:非持久化,需要欺骗着用户自己去点击链接才能触发XSS代码(服务器中没有这样的网页和内容),一般容易出现在搜索页面。特点:强窗警告、广告;JavaScript;在浏览器中执行。
  • 储存型XSS:持久化,代码是储存在服务器中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或者过滤不严格,那么这些代码将储存到服务器中,用户访问该页面的时候触发代码执行。这种XSS比较危险,容易造成蠕虫,盗窃cookie。
  • DOM型XSS:文本对象模式XSS,通过修改页面的DOM节点形成的XSS,可储存型,可反射型,只取决于输入地点。

3、漏洞形成的根源

  • 服务器对用户提交的数据过滤不严;
  • 提交给服务器端的脚本被直接返回给其他用户端执行;
  • 脚本在客户端执行恶意操作;

二、反射型XSS

1、原理示意图:

(1)获取被攻击者的cookie
  • 1、黑客首先向服务器发送js脚本;
  • 2、服务器将含有js脚本的网页发给黑客;
  • 3、何可将js脚本页面的url发送给被攻击方;
  • 4、黑客获取被攻击方的cookie;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第1张图片

(2)重定向到第三方网站:
  • 1、黑客首先向服务器发送js脚本;
  • 2、服务器将含有js脚本的网页发给黑客;
  • 3、黑客将js脚本的页面的URL发送给被攻击方;
  • 4、被攻击者点击重定向到第三方网站;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第2张图片

2、实验环境:

(1)被攻击者:物理机Win7 ,安装BurpSuite,远程登录DVWA;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第3张图片

(2)DVWA服务器:虚拟机Win 7,启动PHPStudy;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第4张图片

(3)攻击者:虚拟机kali,IP地址:192.168.85.197

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第5张图片

三、实验步骤:

安全级别:Low

1、设置安全级别为Low;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第6张图片

2、查看源码

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第7张图片

3、源码分析

在源码中,可以看到直接引用来 name参数,并没有对参数做任何过滤;例如:输入a,则返回含有 ’ Hello a ’ 的js页面。

4、实验操作

4.1> 直接输入zcl,则返回Hello zcl;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第8张图片

4.2> 直接插入:,后弹出弹框;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第9张图片

  • 使用Burpsuite抓包查看,返回的页面信息为含有输入信息的js页面;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第10张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第11张图片

4.3> 输入元素标签事件:,弹出弹框xss。

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第12张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第13张图片

4.4> 输入:登录

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第14张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第15张图片

4.5> ——> 如果在服务器192.168.85.223中找不到图片a.jpg,则弹出弹框xss1;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第16张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第17张图片

4.6> 输入:点击 ——> 点击“点击”超链接,弹出弹框xss3

注:href后有两个单引号,onclick前有一个空格。

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第18张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第19张图片

重定向

4.7> 输入: ——> 重定向到百度;

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第20张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第21张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第22张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第23张图片

4.8> 输入: ——> #提交之前,在Kali(IP为192.168.85.197)上监听80端口,获取cookie值。

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第32张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第33张图片
通过BurpSuite抓包,查看cookie值。

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第34张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第35张图片

4.12> 输入: ——> #直接弹出一个弹窗,显示cookie值

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第36张图片
DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第37张图片

4.12> 输入:

步骤:

  • 在Kali的 /var/www/html 目录下创建一个a.js脚本;
  • 在Kali的 /var/www/html 目录下开启Apache服务(开启apache服务:/etc/init.d/apache2 start);
  • 监听指定的端口88(命令:nc -vnlp 88);
  • 访问ip/a.js脚本;
  • 获取到a.js脚本实现的结果;
  • 首先在Kali上写a.js脚本,开启Apache服务,并监听指定的端口88;
    DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第38张图片
  • 输入
    DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第39张图片
  • 查看Kali监听到的cookie值;
    DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第40张图片
    DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第41张图片

安全级别:Medium

1、设置安全级别为:Medium

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第42张图片

2、查看源码

DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击)_第43张图片

3、源码分析

在这里是基于黑名单的思想,使用str_replace函数将输入中的 ——> 提交后,会将 ——> #将 #嵌入绕过,可以将script嵌入到

你可能感兴趣的:(DVWA系列(五)—— 使用Burpsuite进行反射型XSS(反射型跨脚本攻击))