UGA Boxxx

つぶやきの延長のつもりで、知ったこと思ったこと書いてます

新しい Cookie 設定 SameSiteの準備を始める

Google Developers Japan: 新しい Cookie 設定 SameSite=None; Secure の準備を始めましょう

上の記事によると、2020年2月リリース予定の Chrome 80 からクッキーのデフォルト挙動が変わるようなので、新しい Cookie 設定 SameSiteの準備を始める

そもそも何が問題か

問題はCookie が「ドメインをまたぐリクエストにも自動で付与される」という挙動で、この挙動がCSRFやTiming Attack、Side Channel Attack(CRIME)などの攻撃に利用されてしまうこと

これを解決するための「この Cookie は他のサイトからのリクエストには 付与してはならない」ということを明示的にブラウザに知らせる設定が SameSite Cookie となる

SameSiteの設定

現在のところ、2 つの設定(SameSite=Lax または SameSite=Strict)がある

  • SameSite=Strict
    同じサイトからのみCookieが送信される厳格な設定
    この場合は別のサイトから遷移する場合もCookieが送信されないので注意が必要

  • SameSite=Lax
    トップレベルナビゲーションCookieを送信できるようにする緩い設定
    リンクなどを使った別サイトからの遷移でもCookieが送信される

SameSite=Strictは外部サイトのトップレベルナビゲーションからのリクエストもだめなので、例えばLPでCookieに応じてコンテンツの出しわけを行っている場合はSameSite=Strictに設定してはダメで、SameSite=Laxにしておかなければならないことがわかった

ただ、SameSite属性を設定していないCookie はSameSite=Laxとして扱われる予定とのこと

※他参考

SameSite cookies explained
https://tools.ietf.org/html/draft-ietf-httpbis-cookie-same-site-00#section-4.1.1
Cookie の性質を利用した攻撃と Same Site Cookie の効果 | blog.jxck.io