反射性XSS
利用网页对用户输入的处理不当,将恶意脚本注入到网页中,从而在用户的浏览器中执行。此类攻击通常在用户点击链接或提交表单后发生,恶意脚本会反射回用户的浏览器。
产生过程:
- 用户输入:用户访问一个网页并输入数据
- 未经过滤的输出: 服务将这些数据直接返回给用户浏览器,没有进行过滤和编码。
- 执行恶意代码:如果攻击者构造了一个特殊的输入,例如包含 JavaScript 代码,这段代码就会在用户的浏览器中执行。
防御措施
- 输出编码: 进行适当的html编码,避免直接被插入。
- 输入验证: 验证用户输入,拒绝不合规内容
- 内容安全策略: 使用CSP限制可以执行的脚本来源。
- HttpOnly Cookies:确保敏感信息不能被js访问。