1.8 KiB
1.8 KiB
title | localeTitle |
---|---|
XSS Cross Site Scripting | XSS跨站点脚本 |
XSS跨站点脚本
跨站点脚本(XSS)是一种代码注入。它是Web上最常见的漏洞之一。
XSS通常涉及将代码输入到表单,url参数或接受显示回用户的用户输入的任何其他位置。例如,想象一个显示您的用户配置文件的网站,并输入<script>alert("HELLO!");</script>
作为您的用户名。如果该网站没有阻止XSS,那么访问您个人资料的每个人都会收到一个警告弹出窗口。
不同类型的XSS
有3种不同类型的XSS。
- 存储XSS
- 反射XSS
- 基于DOM的XSS
XSS的危险
当然,上述示例对查看您的个人资料的人没有任何直接危险。但是,如果你有更多险恶的意图怎么办?您可以执行一些javascript来显示虚假登录页面,并为该站点的其他用户收集用户名和密码,或者只是在不安全的情况下读取会话cookie。您可以强制他们访问其他网站或执行操作。
抵御XSS
- 绝不信任用户数据
- 验证不受信任的数据(检查有效数据,如果无效,则拒绝而不是处理)
- 白名单安全值(而不是黑名单)
- 始终编码输出
- 编码正确的上下文(HTML / HTML属性/ CSS / JSS都不同)
- 保护cookie(仅限HTTP和安全只能由服务器读取)
- 实施内容安全策略
更多信息:
阅读有关XSS的更多信息以及您可以采取的防范步骤来自:
[跨站点脚本(XSS)](https://www.owasp.org/index.php/Cross-site_Scripting_(XSS) )
[OWASP XSS(跨站点脚本)预防备忘单](https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)