Publié le: Jan 13, 2023

Amazon CloudFront prend désormais en charge les en-têtes « CloudFront-Viewer-Header-Order » et « CloudFront-Viewer-Header-Count », ce qui permet aux clients de suivre le nombre total d'en-têtes HTTP envoyés avec chaque demande, ainsi que l'ordre dans lequel les en-têtes ont été envoyés. Les clients peuvent utiliser ces deux en-têtes pour détecter et identifier les modèles de demandes et les comparer aux modèles attendus et légitimes. Lorsqu'ils sont utilisés en association avec d'autres règles de contrôle des accès, ils peuvent aider les clients à détecter et à bloquer toute tentative d'usurpation d'identité.

L'en-tête « Cloudfront-viewer-header-order » contient une liste d'en-têtes de demande dans l'ordre indiqué séparés par des deux-points. Par exemple, « Cloudfront-viewer-header-order: Host:User-Agent:Accept:Accept-Encoding ». L'en-tête « Cloudfront-viewer-header-count » conserve le nombre total d'en-têtes de requête. Par exemple, « Cloudfront-viewer-header-count: 4 ». Les clients ont utilisé des règles de contrôle des accès (ACL) AWS WAF et créé leurs propres mesures de contrôle des accès pour détecter les empreintes des demandes à l'aide d'en-têtes CloudFront, comme les en-têtes « Cloudfront-viewer-ja3-fingerprint » et « CloudFront-viewer-tls ». Avec le lancement des nouveaux en-têtes aujourd'hui, les clients peuvent renforcer davantage leurs mesures de contrôle d'accès en vérifiant les dimensions supplémentaires des métadonnées des demandes. Par exemple, des navigateurs possédant la même version du protocole HTTP envoient généralement des en-têtes HTTP dans un certain ordre. Si le type de navigateur indiqué par l'en-tête user-agent ne correspond à pas à l'ordre des en-têtes de demande, alors la demande peut ne pas provenir de la source revendiquée. En outre, si la valeur de l'en-tête Nombre d'en-têtes ne correspond pas au nombre d'en-têtes dans l'en-tête Ordre des en-têtes, les clients peuvent effectuer des recherches plus approfondies pour vérifier si la requête provient d'une source dont l'identité a été usurpée. Les clients peuvent ajouter ces deux en-têtes à leur stratégie de demande d'origine. Il est ensuite possible d'utiliser ces en-têtes pour construire une logique personnalisée sur le serveur d'origine ou en périphérie en utilisant des fonctions CloudFront et Lambda@Edge.

Les en-têtes « Cloudfront-viewer-header-order » et « Cloudfront-viewer-header-count » sont immédiatement disponibles dans tous les emplacements périphériques CloudFront. Vous pouvez les activer dans la console CloudFront ou en utilisant l'AWS SDK. Aucuns frais supplémentaires ne sont facturés pour l'utilisation de ces en-têtes. Veuillez consulter le Guide du développeur CloudFront pour en savoir plus.