跨站脚本攻击(XSS)

跨站脚本攻击(Cross Site Script,简称 XSS),利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序

XSS 示例

  1. $input = $_GET["param"];
  2. echo "<div>" . $input . "</div>";
  1. https://blog.maplemark.cn/test.php?param=这是一个测试!
  2. https://blog.maplemark.cn/test.php?param=<script>alert(/xss/)</script>

XSS 分类

  • 反射型 XSS:简单地将用户输入的数据反射给浏览器
  • 存储型 XSS:把用户输入的数据存储在服务器端
  • DOM Based XSS:修改页面 DOM 节点形成的 XSS

XSS 防御

  • 为 Cookie 设置 HttpOnly,避免 Cookie 被劫持泄露
  • 对输入/输出进行检查,明确编码方式