게시된 날짜: Jan 13, 2023

Amazon CloudFront는 이제 “Cloudfront-viewer-header-order” 및 “Cloudfront-viewer-header-count” 헤더를 지원하여 고객이 각 요청과 함께 전송된 총 HTTP 헤더 수와 헤더가 전송된 순서를 추적할 수 있도록 합니다. 고객은 두 헤더를 사용하여 요청 패턴을 감지 및 식별하고 이를 예상되는 합법적인 패턴과 비교할 수 있습니다. 이를 다른 액세스 제어 규칙과 함께 사용하면 고객이 스푸핑 요청 시도를 감지하고 차단하는 데 도움이 될 수 있습니다.

"Cloudfront-viewer-header-order" 헤더에는 지정된 순서대로 콜론으로 구분된 요청 헤더 목록이 포함되어 있습니다. 예: "Cloudfront-viewer-header-order: Host:User-Agent:Accept:Accept-Encoding" "Cloudfront-viewer-header-count" 헤더는 총 요청 헤더 수를 저장합니다. 예: "Cloudfront-viewer-header-count: 4" 고객은 AWS WAF 액세스 제어 규칙(ACL)을 사용해 왔으며, "Cloudfront-viewer-ja3-fingerprint" 및 "CloudFront-viewer-tls" 헤더와 같은 CloudFront 헤더를 사용하여 요청의 지문을 감지하기 위한 자체 액세스 제어 조치를 구축해 왔습니다. 오늘 새 헤더가 출시됨에 따라 고객은 요청 메타데이터의 추가 차원을 확인하여 액세스 제어 조치를 더욱 강화할 수 있습니다. 예를 들어, 동일한 HTTP 프로토콜 버전을 사용하는 브라우저는 일반적으로 특정한 순서에 따라 HTTP 헤더를 전송합니다. 사용자 에이전트 헤더에 표시된 브라우저 유형이 요청 헤더의 순서와 일치하지 않는 경우 요청은 요청된 소스에서 온 것이 아닐 수도 있습니다. 또한 헤더 수 헤더의 값이 헤더 순서 헤더의 헤더 수와 일치하지 않는 경우 고객은 추가적인 조사를 통해 요청이 스푸핑된 소스에서 온 것인지 확인할 수 있습니다. 고객은 오리진 요청 정책에 이 두 헤더를 추가할 수 있습니다. 그런 다음 이러한 헤더를 사용하여 CloudFront Functions와 Lambda@Edge를 사용하는 오리진 서버 또는 엣지에서 사용자 지정 로직을 구성할 수 있습니다.

"Cloudfront-viewer-header-order" 및 "Cloudfront-viewer-header-count" 헤더는 모든 CloudFront 엣지 로케이션에서 즉시 사용할 수 있습니다. CloudFront 콘솔에서 또는AWS SDK를 사용하여 활성화할 수 있으며, 이러한 헤더 사용에 대한 추가 비용은 없습니다. 자세한 내용은 CloudFront 개발자 가이드를 참조하세요.