新版Chrome可能导致CDN访问失败

安全 安全 · best · 于 4年前 发布 · 2141 次阅读

问题现象

新版Chrome 80浏览器可能会导致CDN访问失败。

可能原因

新版 Chrome 80 版本默认屏蔽所有第三方 Cookie,即默认为所有 Cookie 加上 SameSite=Lax属性,详情请参见公告。这样可以从源头屏蔽掉大量的 CSRF 漏洞,但由于第三方 Cookie 丢失,可能会导致页面不可访问的问题。

目前一些厂商已经开始改造,例如:

解决方案

排查您网站的页面。 打开SameSite by default cookiesCookies without SameSite must be secure两个Flag。 分别开启这两个开关。 开启后,您可以提前试验屏蔽第三方 Cookie 的效果。 注意部分浏览器不能加SameSite=none的情况: IOS 12 的 Safari 以及一些老版本的 Chrome的浏览器 。由于这些浏览器会把 SameSite=none 识别成 SameSite=Strict(比 Lax 还要严格的一种模式),所以服务端必须在下发 Set-Cookie 响应头时进行 User-Agent 检测,对这些浏览器不下发 SameSite=none 属性,详见公告。 仅仅只有跨站的情况。技术人员对跨域更了解,跨站没有跨域那么严格,例如 a.a.com和 b.a.com就是只跨域而不跨站的,也就是说这两个是同一个网站,因此不需要加SameSite=none 属性。

说明 请您不要为所有 Cookie 添加 SameSite=none。 我们建议您更有针对性的为真正的第三方 Cookie 添加 SameSite=none 属性,如果连第一方 Cookie 也加上,网站安全性会和以前一样,没有提升。

共收到 0 条回复
没有找到数据。
添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册