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>

 

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

 

posted @ 2021-01-05 11:09  烟花花海  阅读(184)  评论(0)    收藏  举报