javascript - GET 请求的 CSRF 保护

标签 javascript csrf same-origin-policy

我有一个 RESTful API,可以通过我制作的网站进行交互。我对 POST、DELETE、PUT 等请求进行了充分的保护,因此攻击者无法通过 CSRF 对数据库进行任何更改。

但是,如果有人使用 CSRF 向网站发出 GET 请求,我担心他们可能能够查看响应,这可能会泄露存储在数据库中的敏感数据。

他们是否可以查看对跨站点 GET 请求的响应,或者这是否完全由 Javascript 的同源策略处理?

最佳答案

is this definitely, completely taken care of by Javascript's Same Origin Policy?

是的。这就是同源策略的要点。

要变得脆弱,您需要:

  • 使用 JSONP 或 CORS 等方式在 SOP 中打洞
  • 不执行用户身份验证,以便他们无需经过身份验证的用户浏览器作为中间人即可访问数据

关于javascript - GET 请求的 CSRF 保护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31614666/

相关文章:

javascript - SCORM: SecurityError: Blocked a frame with origin from access a cross-origin frame FOR SAME ORIGIN

javascript - 为什么我的 JavaScript 代码会收到 "No ' Access-Control-Allow-Origin' header is present on the requested resource”错误,而 Postman 却没有?

javascript - 控制来自不同主机的内容的图像宽度

javascript - 一个输入的值正在影响另一个输入

node.js - 我必须在 React SPA 中使用 csrf 保护吗?

javascript - 使用多个 JSON 过滤键值? (地理编码)

java - 重命名 Spring csrf token 变量

javascript - Angular,HTTP Get 有效,Post 收到 CORS 错误

javascript - 使用 JQM,为什么子 div 不覆盖 parent 的宽度和高度

javascript - Primefaces commandButton onClick Javascript 调用