DVWA —— Stored Cross Site Scripting (存储型 XSS)

目录

漏洞原理

Low

渗透思路

textarea 标签无防护直接上 payload

Medium

渗透思路

标题 script 大小写绕过

源码对比

Low & Medium 源码

对比小结

High

渗透思路

标题栏 img 标签绕过

源码对比

Medium & High 源码

对比小结

Impossible

源码对比

High & Impossible 源码

对比小结

绕过

防御

参考文章


漏洞原理

持久型 XSS,常见的就是在博客留言板、反馈投诉、论坛评论、将恶意代码和正文都存入服务器的数据库。每次访问都会触发恶意代码。 例如:alert(/xss/)

Low

渗透思路

textarea 标签无防护直接上 payload

<script>alert(1)</script>

Medium

渗透思路

标题 script 大小写绕过

<Script>alert(1)</Script>

源码对比

Low & Medium 源码

对比小结

Medium 比 Low 级别代码做了如下防护措施:

  1. 用 strip_tags 函数过滤 message 内容中的NULL字节、HTML和PHP标签
  2. 对 message 内容做 html 转义
  3. 替换 name 中的 script 标签

High

渗透思路

标题栏 img 标签绕过

<img src=1 onerror=alert(1)>

源码对比

Medium & High 源码

对比小结

与 Medium 相比,High 对标题栏中内容的 script 标签字符串进行匹配且不区分大小写

Impossible

源码对比

High & Impossible 源码

对比小结

Impossible 对所有用户输入做了如下措施:

  1. 校验 CSRF token
  2. html 编码,所有标题和文本栏中的特殊符号都会被转义,也就无法被有效解析
  3. 插入数据库执行采用参数化预编译编程

绕过

  1. 大小写绕过
  2. 关键字双写绕过
  3. 利用eval拼接关键字绕过
  4. 利用注释、标签的优先级
  5. 编码绕过

防御

  1. 过滤敏感字符或进行编码转义
  2. 针对特定类型数据进行格式检查
  3. 针对输入点的检查最好放在服务器端实现
  4. WAF

参考文章

xss攻击、绕过最全总结-阿里云开发者社区

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值