Kali渗透测试之DVWA系列4——反射型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、原理示意图

获取cookie

  1. 黑客首先向服务器发送js脚本
  2. 服务器将含有js脚本的页面发给黑客
  3. 黑客将js脚本的页面的url发送给被攻击方
  4. 黑客获取被攻击方的cookie

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第1张图片

重定向

  1. 黑客首先向服务器发送js脚本
  2. 服务器将含有js脚本的页面发给黑客
  3. 黑客将js脚本的页面的url发送给被攻击方
  4. 被攻击方点击url重定向到第三方网站

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第2张图片

2、实验环境

1、测试机:物理机Windows 10,远程登录DVWA;安装BurpSuite

2、DVWA服务器:Windows Server 2003(192.168.247.129),启动phpStudy。

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第3张图片

3、实验步骤

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第4张图片

安全级别:LOW

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第5张图片

查看源码

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第6张图片

源码分析

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

1、直接嵌入html:,弹出弹框xss。

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第7张图片

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

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第8张图片

2、元素标签事件,弹出弹框xss。

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第9张图片Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第10张图片

3、登录

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第11张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第12张图片

4、;如果在服务器192.168.247.129上找不到图片a.jpg,则弹出弹框xss1。

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第13张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第14张图片

5、点击;点击 ' 点击 ' 超链接,弹出弹框xss2。

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

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第15张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第16张图片

重定向

6、;提交后,重定向到百度。

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第17张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第18张图片

7、;提交后,重定向到192.168.247.129的网站页面。

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第19张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第20张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第21张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第22张图片

8、;提交后,访问http://192.168.247.129/a.jpg

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第23张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第24张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第25张图片

获取cookie

9、       #提交之前,在Kali(IP为192.168.247.157)上监听80端口,获取cookie值。

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第26张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第27张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第28张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第29张图片

10、       #直接弹出一个弹窗,显示cookie值

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第30张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第31张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第32张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第33张图片

11、     #使用js脚本获取cookie值

步骤:

  1. 在Kali的 /var/www/html 目录下制作一个js脚本
  2. 在Kali的 /var/www/html 目录下开启 Apache服务(/etc/init.d/apache2 start)(截图上忘记放这一步了)
  3. 监听指定的端口88(nc -vnlp 88)
  4. 访问ip/js脚本
  5. 获取到js脚本实现的结果

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第34张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第35张图片

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第36张图片

安全级别:Medium

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第37张图片

查看源码

Kali渗透测试之DVWA系列4——反射型XSS(跨站脚本攻击)_第38张图片

源码分析

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

你可能感兴趣的:(Kali渗透测试,XSS)