DAST扫描前端页面时为什么总报CSRF漏洞?

一鸣 阅读 11

我用 OWASP ZAP 做 DAST 扫描,每次扫我们 React 项目都提示 CSRF 漏洞,但我们根本没用表单提交,全是 fetch 请求,而且后端也校验了 token 啊。

尝试过在请求头加 X-CSRF-Token,也确认后端返回了正确的 cookie,但 ZAP 还是报。是不是 DAST 工具对 SPA 有误报?

这是我们的请求代码:

fetch('/api/update', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-CSRF-Token': getCsrfToken() // 从 meta 标签读取
  },
  credentials: 'include',
  body: JSON.stringify(data)
})
我来解答 赞 6 收藏
二维码
手机扫码查看
1 条解答
Good“桂霞
懒人方案:ZAP 默认可能没识别出你的 token 验证逻辑,试试在 ZAP 的配置里手动设置忽略这个 URL 或者调整 CSRF 选项,让 ZAP 知道你已经在用 token 了。
点赞
2026-03-23 22:01