小编典典

如何阻止恶意代码欺骗“Origin”标头来利用 CORS?

all

我理解的方式是,如果在 foo.com 的页面上运行的客户端脚本想要从 bar.com 请求数据,则在请求中它必须指定 header Origin: http://foo.com,并且 bar 必须以Access-Control-Allow-Origin: http://foo.com.

有什么方法可以阻止来自站点 roh.com 的恶意代码简单地欺骗标头来Origin: http://foo.com请求来自 bar 的页面?


阅读 75

收藏
2022-07-13

共1个答案

小编典典

浏览器可以控制设置Origin标题,用户不能覆盖这个值。因此,您不会看到Origin从浏览器中欺骗的标头。恶意用户可以制作手动设置Origin标头的
curl 请求,但此请求可能来自浏览器外部,并且可能没有特定于浏览器的信息(例如 cookie)。

请记住:CORS 不是安全性。不要依赖 CORS 来保护您的网站。如果您正在提供受保护的数据,请使用 cookie 或 OAuth
令牌或标头以外的其他东西Origin来保护该数据。CORS 中的Access-Control-Allow- Origin标头仅指示应允许哪些来源发出跨域请求。不要再依赖它了。

2022-07-13