在测试单页应用程序时,我发现 REST 端点返回允许跨域访问的 CORS 标头:
access-control-allow-credentials: true
access-control-allow-methods: GET, POST, DELETE, PUT
access-control-allow-origin: *
这些端点处理机密数据,所以我对此的最初反应是提出一个高风险漏洞。
然而,当我试图利用这个问题时,我发现我做不到。该站点在授权标头中使用不记名令牌而不是会话 cookie。虽然可以进行跨域请求,但无法附加所需的标头。
这种模式有什么风险?这是一种明智的做事方式吗?