보안 관련 문제
쿠키는 사용자 경험과 광고를 향상시키기도 하지만, CSRF(크로스 사이트 요청 위조) 공격과 같은 보안 취약성을 발생시킬 수도 있습니다. 예를 들어 사용자가 뱅킹 사이트에 로그인하여 신용카드 대금을 결제한 후, 로그아웃을 하지 않고 사이트를 나간 다음 동일한 세션 내에 악성 사이트로 이동하면 CSRF 공격이 발생할 수 있습니다. 악성 사이트에는 페이지가 로드될 때 실행되어 뱅킹 사이트로 요청을 하는 코드가 포함될 수 있습니다. 사용자가 여전히 뱅킹 사이트에 인증되어 있으므로, 세션 쿠키는 CSRF 공격을 실행하여 사용자의 은행 계좌에서 자금 이체 이벤트를 시작하는 데 사용할 수 있습니다. 이는 사용자가 사이트를 방문할 때마다 모든 쿠키가 HTTP 요청에 연결되기 때문입니다. 또한 이러한 보안 관련 문제로 인해 Google은 이를 완화하고자 노력하고 있습니다.
Target은 쿠키를 어떻게 사용합니까?
이 모든 내용을 고려하여 Target에서 쿠키를 사용하는 방법을 살펴보겠습니다. 우선 Target을 사용하려면 귀하의 사이트에 Target JavaScript 라이브러리를 설치해야 합니다. 이렇게 하면 귀하의 사이트에 방문하는 사용자의 브라우저에 자사 쿠키를 배치할 수 있습니다. 사용자가 웹 사이트와 상호 작용할 때 JavaScript 라이브러리를 통해 사용자의 행동 및 관심 데이터를 Target에 전달할 수 있습니다. Target JavaScript 라이브러리는 자사 쿠키를 사용하여 사용자의 행동 및 관심 데이터에 매핑할 사용자 식별 정보를 추출합니다. 그런 다음 Target은 이 데이터를 사용하여 귀하의 개인 맞춤화 활동을 향상시킵니다.
Target은 (때때로) 서드파티 쿠키를 사용하기도 합니다. 서로 다른 도메인에 있는 여러 웹 사이트를 보유하고 있으며 이들 웹 사이트 간의 사용자 여정을 추적하고자 하는 경우, 도메인 간 추적을 활용하여 서드파티 쿠키를 사용할 수 있습니다. Target JavaScript 라이브러리에서 도메인 간 추적을 활성화함으로써 귀하의 계정은 서드파티 쿠키를 사용하게 됩니다. 사용자가 한 도메인에서 다른 도메인으로 이동할 때 브라우저는 Target의 백엔드 서버와 통신하며, 이 프로세스 내에서 서드파티 쿠키가 생성되고 사용자의 브라우저에 배치됩니다. Target은(는) 사용자의 브라우저에 있는 서드파티 쿠키를 통해 단일 사용자에게 서로 다른 도메인에 걸쳐 일관된 환경을 제공할 수 있습니다.
Google의 새로운 쿠키 레시피
사이트 간 쿠키가 전송될 때 사용자를 보호하기 위한 안전 장치를 제공하기 위해, Google은 SameSite라고 하는 IETF 표준에 대한 지원을 추가할 계획입니다. 이를 위해 웹 개발자는 쿠키 설정 헤더에서 SameSite 속성 구성 요소를 통해 쿠키를 관리해야 합니다.
SameSite 속성으로 전달할 수 있는 Strict, Lax 또는 None값이 있습니다.
값 | 설명 |
---|---|
Strict | 이 설정을 사용하는 쿠키는 처음에 설정된 도메인을 방문할 때만 액세스할 수 있습니다. 즉, Strict는 쿠키를 사이트 간에 사용할 수 없게 차단합니다. 이 옵션은 은행과 같이 높은 보안 수준이 필요한 응용 분야에 적합합니다. |
Lax | 이 설정을 사용하는 쿠키는 동일한 사이트 요청 또는 HTTP GET 과 같은 비특정 HTTP 요청을 통한 최상위 수준 탐색에 대해서만 전송됩니다. 따라서 이 옵션은 서드파티가 쿠키를 사용할 수 있지만 사용자가 CSRF 공격에 의해 피해를 받지 않도록 보호할 수 있는 추가 보안 이점을 동반하는 경우 사용됩니다. |
없음 | 이 설정을 사용하는 쿠키는 오늘날 쿠키가 작동하는 것과 같은 방식으로 작동합니다. |
Chrome 80은 사용자를 위한 2가지 독립 설정인 “SameSite를 기본 쿠키로 지정”과 “SameSite가 없는 쿠키를 보호해야 함”을 도입합니다. 이들 설정은 Chrome 80에서 기본적으로 활성화됩니다.
- SameSite를 기본 쿠키로 지정: 설정하면 SameSite 특성을 지정하지 않는 모든 쿠키가 자동으로
SameSite = Lax
을(를) 사용하게 됩니다. - SameSite가 없는 쿠키를 보호해야 함: 이 옵션으로 설정하면 SameSite 속성이 없거나
SameSite = None
이 있는 쿠키가 “보호” 상태여야 합니다. 이 컨텍스트에서 보호란 모든 브라우저 요청이 HTTPS 프로토콜을 따라야 한다는 것을 의미합니다. 이 요구 사항을 준수하지 않는 쿠키는 거부됩니다. 모든 웹 사이트는 이 요구 사항을 충족하기 위해 HTTPS를 사용해야 합니다.