Cookie 보안 옵션

BlackBean·2024년 11월 9일

web

목록 보기
5/5

httpOnly

자바스크립트 같은 클라이언트 측 스크립트가 쿠키를 사용할 수 없게 합니다. document.cookie를 통해 쿠키를 볼 수도 없고 조작할 수도 없습니다.

secure

HTTPS로 통신하는 경우에만 쿠키가 전송됩니다.

SameSite

samesite 옵션은 크로스 사이트 요청 위조(cross-site request forgery, XSRF) 공격을 막기 위해 만들어진 옵션

  • samesite=strict
    • 사용자가 사이트 외부에서 요청을 보낼 때, samesite=strict 옵션이 있는 쿠키는 절대로 전송되지 않습니다.
    • 만약 사용자가 메모장 등에 bank.com에 요청을 보낼 수 있는 링크를 기록해 놓았다가 이 링크를 클릭해 접속하면 bank.com이 사용자를 인식하지 못하는 상황이 발생하기 때문입니다. 실제로 이런 경우 samesite=strict 옵션이 설정된 쿠키는 전송되지 않습니다.
  • samesite=lax
    • strict와 마찬가지로 lax도 사이트 외부에서 요청을 보낼 때 브라우저가 쿠키를 보내는 걸 막아줍니다. 하지만 예외사항이 존재합니다.
      • “안전한” HTTP 메서드인 경우(예: GET 방식. POST 방식은 해당하지 않음).
      • 작업이 최상위 레벨 탐색에서 이루어질 때(브라우저 주소창에서 URL을 변경하는 경우).
    • • 오래된 브라우저(2017년 이전 버전)에선 samesite 옵션을 지원하지 않습니다.
    reference:
    https://ko.javascript.info/cookie
profile
React, React-native, Web developer

0개의 댓글