【问题标题】:Content Security Policy with Paypal button带有 Paypal 按钮的内容安全策略
【发布时间】:2016-11-12 23:31:20
【问题描述】:

我想将内容安全策略 (CSP) 设置到我的 with 页面,该页面有一个 paypal 按钮,它有来自https://www.paypalobjects.com 的 gif 图像服务,我将它包含在我的 img-src 白名单中。

     <input type="image" src="https://www.paypalobjects.com/en_GB/SG/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal – The safer, easier way to pay online.">

但图像随后会暂时重定向到https://akamai.mathtag.comhttps://ak1s.abmr.net等随机域

我应该如何设置 CSP 以使 img-src 也包含重定向域。我不知道所有重定向域。

【问题讨论】:

  • 为什么不将图像复制到您的服务器并从那里提供它?
  • 好点。我认为出于安全原因需要它们。

标签: security paypal content-security-policy


【解决方案1】:

请注意,Paypal 声明您应该只对结帐按钮进行热链接,而不要将其保存在其他任何地方:

PayPal 要求您使用 PayPal 结帐按钮和托管在安全 PayPal 服务器上的 PayPal 标记图像。

Obtaining an Express Checkout Button and PayPal Mark

目前尚不清楚这是如何执行的。

【讨论】:

    【解决方案2】:

    CSP 要求您了解引用内容的域,这是它的弱点之一。

    为了解决这个问题,您可以做一些事情:

    1. 从 CSP 中完全删除 img-src 白名单。这听起来不太理想,但除非有人能够直接破坏您的服务器(在这种情况下他们可以修改 CSP 标头),或者他们能够利用您网站上的跨站点脚本攻击,否则 img-src 是不是一个大问题。我会更担心 script-src 部分,如果实施得当,它可能会阻止未经授权的图像被加载。
    2. 为 CSP 目的创建基于白名单的代理。基本上,浏览器从您的服务器请求图像,然后您的服务器在后端检索图像,通过重定向、缓存图像并将其返回给用户。
    3. 正如 SilverlightFox 所说,您也可以将图像直接存储在您的服务器上。如果您需要访问不符合如此严格的 CSP 的其他图像,这可能会出现问题。此外,如果购买按钮图像发生变化而您不知道/没有更新它,这可能会引起在其他地方看到新购买按钮的潜在客户的怀疑。

    希望有帮助!

    【讨论】:

      猜你喜欢
      • 2016-10-10
      • 1970-01-01
      • 1970-01-01
      • 2021-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-28
      • 2017-09-07
      相关资源
      最近更新 更多