DVWA靶场通关记录(存储型XSS漏洞)

Low

存储型XSS漏洞与反射型不同的是,存储型持续时间会很长,即便刷新页面或者关闭页面,再次打开时XSS漏洞依然会发挥作用。

这里name字段限制了输入最大长度,所以把payload放进message中:

<script>alert(document.cookie)</script>

成功,没有任何过滤

刷新页面或者退出页面时,我们注入的XSS攻击仍然有效,这就是存储型漏洞的特点

Medium

来到中级别,这里注意要将之前的代码清除,我们可以点击Clear Guestbook按钮清除评论

在message栏添加XSS代码:

<script>alert("You've been hacked!")</script>

 没有蹦出弹窗,而是将代码内容显示在评论区

查看源代码可知

加入了几个新函数用于过滤输入:

strip_tags():去除字符串中的html、php和xml标签

str_replace():将字符串替换成别的内容

htmlspecialchars():将特殊字符转换成html字符实体

addslashes():在预定义字符串前添加反斜杠

而这些操作都是对message栏目实施的,name栏只是简单的替换了标签<script>,但name栏有输入长度限制。F12打开控制台更改页面源代码,将长度限制进行修改:

接下来用大小写绕过name过滤机制

 成功

High

和存储型漏洞一样的是,这回我们仍然换标签,源代码中用正则表达式绕过了标签<script>,我们可以换成<img>或<iframe>

第一步先改长度限制

上代码

<img src=0 οnerrοr=alert(documnet.cookie)>

攻击成功!

Impossible

分析源代码

源代码对name参数也增加了更加严格的过滤机制,同时使用了Anti-CSRF token机制

generateSessionToken()

完全防御了XSS攻击和CRSF漏洞

XSS存储型漏洞就到这里了,欢迎反馈和交流

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值