无法理解这种无源允许的CORS漏洞如何使网站易受攻击

我正在开发一个授权API,我的公司希望在内部和某些客户的外部API中使用该API。我们希望不必将请求可能来自的每个域都列入白名单,但这似乎是XHR的withCredentials选项为true时Web浏览器旨在强制执行的默认行为。

我们可以通过让我们的API返回请求的Origin标头所包含的内容作为API响应的access-control-allow-origin标头的值来解决此问题,但这显然是很危险的,所以我不确定我们应该这样做。也许在我们的情况下,这是完全安全的,但我还不能说出潜在攻击的性质。

根据本文:

https://portswigger.net/research/exploiting-cors-misconfigurations-for-bitcoins-and-bounties

...这种CORS行为可被利用,足以使作者很容易从比特币交易所盗窃其他人的比特币。

但是如何?对我来说,这篇文章不清楚。

除了CORS问题外,是否还有其他漏洞需要?通过查看示例,随文章附带的幻灯片演示文稿的PDF,以及在http://ejj.io/misconfigured-cors/上被引用的文章,我还不完全了解对其他用户信息或凭据的访问在图片中的位置。>

无法理解这种无源允许的CORS漏洞如何使网站易受攻击

在上图中,在我看来,“ evil.com”将不得不以某种方式欺骗用户,在CORS进入图片之前,并且如果evil.com可以这样做,则先诱使用户为evil.com提供其比特币交换凭据。那已经足够了,CORS问题不会只会使本来非常糟糕的情况变得更糟吗?

我敢肯定这不是那么简单,或者没有人会提出关于全面开放原产地政策的警报,但是我无法弄清楚这里缺少什么。

是否存在某种情况,例如,只有一个浏览器页面打开到evil.com,而用户也在访问其比特币交易所时,该数据是否允许将cookie数据传递给evil.com?似乎这也将是一个大问题,CORS或没有CORS。

fuyesunwang123 回答:无法理解这种无源允许的CORS漏洞如何使网站易受攻击

我终于弄清楚了风险在哪里,我不得不自己解决。也许所有解释这种CORS漏洞的人都认为,在这种情况下,他们的读者会自动知道Cookie的状况,甚至不值得一提。

但是,如果他们提到它肯定会对我有所帮助!

我现在明白的是:

  1. 您在myservice.com上设置了一个允许CORS访问的API,该API允许来自任何域的任何人进入,并响应XHR请求,其中withCredentialstrue,并且主机的来源反映在Access-Control-Accept-Origin标头,而不是发回*
  2. mylegitapicustomer.com上的用户合法使用myservice.com,登录到您的API,并获取属于myservice.com域的会话cookie。
  3. 该用户使用相同的网络浏览器,然后访问evilhacker.com。
  4. 如果evilhacker.com的网页向myservice.com发出了XHR请求,则所有属于myservice.com域的cookie都会顺其自然!
  5. 您的网站myservice.com上看到了它发送给通过mylegitapicustomer.com访问过的合法用户的会话cookie,并通过对用户帐户进行任何请求的更改来愉快地响应上述请求,或以有关用户要求。
  6. evilhacker.com现在可以接收通过mylegitapicustomer.com进行合法访问所允许的任何此类信息,和/或执行任何API动作。
本文链接:https://www.f2er.com/3164220.html

大家都在问