集中实习第四天

一、反射型、存储型、DOM型XSS特点和区别

反射型XSS

  • 特点
    • 非持久性:攻击脚本不会存储在目标服务器上。
    • 即时性:攻击发生在服务器立即将脚本反射回客户端时。
    • 需要用户交互:通常通过诱使用户点击链接或访问特定URL来触发。

存储型XSS

  • 特点
    • 持久性:攻击脚本存储在目标服务器上,如数据库、留言板等。
    • 自动化攻击:用户访问受感染的页面时,无需交互即可触发脚本。
    • 影响广泛:任何访问受感染页面的用户都可能遭受攻击。

DOM型XSS

  • 特点
    • 不涉及服务器:攻击完全在客户端进行,不涉及服务器的响应。
    • 基于DOM:攻击发生在客户端代码处理DOM元素和属性时。
    • 多样性:攻击向量依赖于客户端代码的具体实现

区别

  • 数据存储
    • 反射型:不存储在服务器上,通过请求直接反射。
    • 存储型:存储在服务器上,可能是数据库或其他永久存储介质。
    • DOM型:不通过服务器存储,直接在客户端的DOM中处理。
  • 触发方式
    • 反射型和存储型:通常需要用户与链接或页面进行交互。
    • DOM型:可能在用户仅仅浏览页面时就会触发,取决于客户端代码。
  • 防御措施
    • 反射型和存储型:主要通过服务器端输入验证和输出编码来防御。
    • DOM型:需要确保客户端代码对所有用户输入进行适当的清理和处理。

二、上网搜索一份XSS 的fuzz字典或字典生成工具

fuzz字典下载地址
https://github.com/fuzzdb-project/fuzzdb

https://github.com/TheKingOfDuck/fuzzDicts

https://github.com/TuuuNya/fuzz_dict

https://github.com/jas502n/fuzz-wooyun-org

三、 到XSS挑战靶场打靶(https://xss.tesla-space.com/)

第一关

直接在url中插入<script>alert(1)</script>,改变name值,成功过关。

第二关

尝试第一关的方法,不行。

输入的脚本语句中“<>"被实体转义了,应该闭合input标签

输入"> <script>alert()</script> <",成功过关

第三关

查看源码与第二关一样

用第二关的方法,发现不行。

 h2 和 input 都使用了 htmlspecialchars (),该函数会将特殊字符进行转义

换种绕过方法,构造事件onmouseout,' οnmοuseοver='alert(/xss/)

第四关

检查页面代码

尝试"> <script>alert()</script> <",发现不行

尝试' οnmοuseοver='alert(/xss/)

查看源码发现外围是双引号,尝试" οnmοuseοver='alert(666)'",成功过关。

第五关

尝试<script></script>,查看代码发现scr和ipt中间有了个下划线,对script进行了过滤

在这里学到使用 a 标签的 href 导入 js 代码进行注入,"><a href=javascript:alert(666)>666,过关成功

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值