内容安全策略中的空 http 和 https 声明

Empty http and https declarations in Content Security Policy

我正在使用 nginx 设置 CSP header。

我经常在例子中看到这个:

default-src 'self' http: https: data: blob: 'unsafe-inline' 'unsafe-eval' https://*.foo.com;

我知道 https://*.foo.com 允许从 foo.com 域加载。

但是 "empty" http:https: 声明的含义是什么?

这意味着允许来自该协议上所有站点的内容。例如:

  1. https://example.com
  2. https://www.example.com
  3. https://www.google.com
  4. http://www.google.com
  5. http://evilhacker.com

目前的政策基本上允许一切,毫无意义!