【问题标题】:SameSite warning in Chrome ExtensionsChrome 扩展程序中的 SameSite 警告
【发布时间】:2020-04-23 05:48:45
【问题描述】:

我们正在开发 Chrome 扩展程序

  1. 从没有设置 SameSite 属性的域中读取 cookie
  2. 将 cookie 写入没有 SameSite 属性的域

我们在 manifest.json

中添加了对两个域的权限

我们在 Chrome 浏览器中启用了以下标志,

  • SameSite 默认 cookie
  • 启用删除 SameSite=None cookie
  • 没有 SameSite 的 Cookie 必须是安全的

问题

  1. 即使在启用标志之后,我们也能够从其他域读取使用以下值设置的 cookie。这是预期的吗?如果是,为什么?

    • 没有SameSite属性
    • SameSite=strict
  2. 假设一个扩展在域 X.com 的站点中设置了没有 SameSite 属性的 cookie。当网站 (X.com) 出现时会发生什么

    • 通过 iframe 被另一个扩展程序使用
    • 由域为 Y.com 的另一个站点通过 iframe 使用。 在这两种情况下,cookie 会与响应一起呈现吗??
  3. 来自扩展的请求是否被视为跨站点请求?

  4. 域中的扩展设置的 cookie 的行为如何?这是否类似于来自不同域的网站设置 cookie 时发生的情况??

  5. manifest.json 中的域具有权限的扩展是否能够从其他域读取 cookie,而与 SameSite 值无关??

【问题讨论】:

  • 好问题,我也在研究这个问题,但还不清楚。我今天遇到了这个可能会有所帮助:stackoverflow.com/a/58706403/6089612
  • 感谢您的回复。该线程似乎正在讨论旧版本中所做的更改。我想知道 Chrome 版本 80 将发布的 SameSite 更改如何影响扩展。
  • 即将发生的变化是没有 SameSite 的 cookie 将默认为 SameSite=Lax。根据该问题/答案,Chrome 78 及更高版本将发送 SameSite=Lax cookie。我认为这就是您 Q1 的答案。
  • 是的,扩展似乎受制于有关 SameSite cookie 的特殊规则。参考groups.google.com/a/chromium.org/forum/m/#!msg/blink-dev/…

标签: google-chrome cookies samesite


【解决方案1】:

你好,我很确定这不会起作用,因为 chrome 扩展在 cookie 存储之外运行的方式。它将无法读取/写入这些值..

【讨论】:

  • 感谢您的回复。你能详细说明一下吗?启用这些标志后,我们能够从扩展中读取没有设置 SameSite 值的 cookie。它在没有任何警告的情况下工作。如果您能告诉我们更多有关您所谈论的行为的信息,将会很有帮助。
  • 我不是 100% 清楚您的用例——您应该解释业务流程或产品,或者用户从流程中得到什么。您所描述的扩展程序也可用于构建一个做不正当事情的广告欺诈扩展程序,因此澄清这一点很重要。 Google 有一个支持文档@@developer.chrome.com/extensions/xhr 对此进行了说明,并标记了如何安全地执行此操作以及一些潜在问题。基本上,有些事情“可以完成”,但并不安全,最终会从扩展商店中删除。很高兴尝试澄清或提供详细信息,祝你好运。
  • 我们有一些扩展,可以从其他域中读取少量未设置 SameSite 属性的 cookie。它还设置了一些没有 SameSite cookie 的 cookie。我想知道将从版本 80 发布的与 SameSite 相关的更改如何影响扩展的行为。此外,我们通过 iframe 加载网站。从版本 80 开始,这些 cookie 会在浏览器中呈现吗??
猜你喜欢
  • 2020-02-04
  • 1970-01-01
  • 1970-01-01
  • 2019-01-14
  • 2020-02-01
  • 2016-11-25
  • 1970-01-01
相关资源
最近更新 更多