Utilisation des conditions de contrainte de taille - AWS WAF, AWS Firewall Manager, et AWS Shield Advanced

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utilisation des conditions de contrainte de taille

Note

Il s'agit d'une documentation AWS WAF classique. Vous ne devez utiliser cette version que si vous avez créé AWS WAF des ressources, telles que des règles et des ACL Web, AWS WAF avant novembre 2019, et que vous ne les avez pas encore migrées vers la dernière version. Pour migrer vos ressources, veuillez consulter Migration de vos ressources AWS WAF classiques vers AWS WAF.

Pour la dernière version de AWS WAF, voirAWS WAF.

Si vous souhaitez autoriser ou bloquer des requêtes web en fonction de la longueur de parties spécifiées de requêtes, créez une ou plusieurs conditions de contrainte de taille. Une condition de contrainte de taille identifie la partie des requêtes Web que AWS WAF Classic doit examiner, le nombre d'octets que AWS WAF Classic doit rechercher et un opérateur, tel que supérieur à (>) ou inférieur à (<). Par exemple, vous pouvez utiliser une condition de contrainte de taille pour rechercher des chaînes de requête supérieures à 100 octets. Ultérieurement dans le processus, lorsque vous créez une liste ACL web, vous spécifiez s'il convient d'autoriser ou de bloquer les requêtes en fonction de ces paramètres.

Notez que si vous configurez AWS WAF Classic pour inspecter le corps de la demande, par exemple en recherchant dans le corps une chaîne spécifiée, AWS WAF Classic inspecte uniquement les 8 192 premiers octets (8 Ko). Si le corps de la requête pour vos requêtes web ne dépasse jamais 8 192 octets, vous pouvez créer une condition de contrainte de taille et bloquer les requêtes dont le corps est supérieur à 8 192 octets.

Création de conditions de contrainte de taille

Lorsque vous créez des conditions de contrainte de taille, vous spécifiez des filtres qui identifient la partie des requêtes Web dont vous souhaitez que AWS WAF Classic évalue la longueur. Vous pouvez ajouter plus d'un filtre à une condition de contrainte de taille ou vous pouvez créer une condition distincte pour chaque filtre. Voici comment chaque configuration affecte le comportement AWS WAF classique :

  • Un filtre par condition de contrainte de taille : lorsque vous ajoutez des conditions de contrainte de taille distinctes à une règle et que vous ajoutez la règle à une ACL Web, les requêtes Web doivent répondre à toutes les conditions pour que AWS WAF Classic autorise ou bloque les demandes en fonction de ces conditions.

    Par exemple, supposons que vous créez deux conditions. Une correspond aux requêtes web dont les chaînes de requête sont supérieures à 100 octets. L'autre correspond aux requêtes web dont la taille du corps est supérieure à 1 024 octets. Lorsque vous ajoutez les deux conditions à la même règle et que vous ajoutez la règle à une ACL Web, AWS WAF Classic autorise ou bloque les demandes uniquement lorsque les deux conditions sont vraies.

  • Plusieurs filtres par condition de contrainte de taille : lorsque vous ajoutez une condition de contrainte de taille contenant plusieurs filtres à une règle et que vous ajoutez la règle à une ACL Web, il suffit qu'une demande Web corresponde à l'un des filtres de la condition de contrainte de taille pour que AWS WAF Classic autorise ou bloque la demande en fonction de cette condition.

    Supposons que vous créiez une condition au lieu de deux et que celle-ci contienne les deux mêmes filtres que dans l'exemple précédent. AWS WAF Classic autorise ou bloque les demandes si la chaîne de requête est supérieure à 100 octets ou si le corps de la demande est supérieur à 1024 octets.

Note

Lorsque vous ajoutez une condition de contrainte de taille à une règle, vous pouvez également configurer AWS WAF Classic pour autoriser ou bloquer les requêtes Web qui ne correspondent pas aux valeurs de la condition.

Pour créer une condition de contrainte de taille
  1. Connectez-vous à la AWS WAF console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/wafv2/.

    Si le bouton Passer à la AWS WAF version classique apparaît dans le volet de navigation, sélectionnez-le.

  2. Dans le volet de navigation, sélectionnez Size constraints.

  3. Choisissez Create condition.

  4. Indiquez les paramètres de filtre applicables. Pour plus d’informations, consultez Valeurs que vous spécifiez lorsque vous créez ou modifiez des conditions de contrainte de taille.

  5. Choisissez Add another filter.

  6. Si vous souhaitez ajouter un autre filtre, répétez les étapes 4 et 5.

  7. Lorsque vous avez fini d'ajouter des filtres, sélectionnez Create size constraint condition.

Valeurs que vous spécifiez lorsque vous créez ou modifiez des conditions de contrainte de taille

Lorsque vous créez ou mettez à jour une condition de contrainte de taille, vous spécifiez les valeurs suivantes :

Nom

Saisissez un nom pour la condition de contrainte de taille.

Le nom ne peut contenir que des caractères alphanumériques (A-Z, a-z, 0-9) ou les caractères spéciaux suivants : _-!"#`+*},./. Vous ne pouvez pas modifier la nom d'une condition après l'avoir créée.

Partie de la requête à filtrer

Choisissez la partie de chaque requête Web dont vous souhaitez que AWS WAF Classic évalue la longueur :

En-tête

Un en-tête de requête spécifié, par exemple, l'en-tête User-Agent ou Referer. Si vous choisissez Header, précisez le nom de l'en-tête dans le champs Header.

Méthode HTTP

La méthode HTTP, qui indique le type d'opération que la demande demande à l'origine d'effectuer. CloudFront prend en charge les méthodes suivantes : DELETEGET,HEAD,OPTIONS,PATCH,POST, etPUT.

Chaîne de requête

La partie d'une URL qui s'affiche après un caractère ?, le cas échéant.

URI

Le chemin URI de la demande, qui identifie la ressource, par exemple,/images/daily-ad.jpg. Cela n'inclut pas la chaîne de requête ou les composants du fragment de l'URI. Pour plus d'informations, voir Uniform Resource Identifier (URI) : syntaxe générique.

À moins qu'une transformation ne soit spécifiée, un URI n'est pas normalisé et est inspecté au moment AWS où il est reçu du client dans le cadre de la demande. Une Transformation reformate l'URI comme spécifié.

Corps de texte

La partie d'une requête qui contient les données supplémentaires que vous souhaitez envoyer à votre serveur web en tant que corps de la requête HTTP, telles que les données d'un formulaire.

Paramètre de requête unique (valeur uniquement)

Tous les paramètres que vous avez définis dans le cadre de la chaîne de requête. Par exemple, si l'URL est « www.xyz.com ? UserName =abc& SalesRegion =seattle », vous pouvez ajouter un filtre au paramètre or. UserNameSalesRegion

Si vous choisissez Single query parameter (value only) (Paramètre de requête unique (valeur uniquement)), vous spécifierez également un Query parameter name (Nom du paramètre de requête). Il s'agit du paramètre de la chaîne de requête que vous allez inspecter, tel que UserName. La longueur maximale de Query parameter name (Nom du paramètre de requête) est de 30 caractères. Query parameter name (Nom du paramètre de requête) n'est pas sensible à la casse. Par exemple, si vous spécifiez le UserNamenom du paramètre Query, celui-ci correspondra à toutes les variantes de UserName, telles que username et UserName.

Tous les paramètres de requête (valeurs uniquement)

Semblable au paramètre de requête unique (valeur uniquement), mais plutôt que d'inspecter la valeur d'un seul paramètre, AWS WAF Classic inspecte les valeurs de tous les paramètres de la chaîne de requête pour détecter la contrainte de taille. Par exemple, si l'URL est « www.xyz.com ? UserName =abc& SalesRegion =seattle » et que vous choisissez Tous les paramètres de requête (valeurs uniquement), AWS WAF Classic déclenchera une correspondance dont la valeur est égale ou supérieure à la taille spécifiée. UserNameSalesRegion

En-tête (uniquement lorsque « Part of the request to filter on » est défini sur « Header »)

Si vous avez choisi En-tête pour une partie de la demande à filtrer, choisissez un en-tête dans la liste des en-têtes courants ou tapez le nom d'un en-tête dont vous souhaitez que AWS WAF Classic évalue la longueur.

Opérateur de comparaison

Choisissez la manière dont vous souhaitez que AWS WAF Classic évalue la longueur de la chaîne de requête dans les requêtes Web par rapport à la valeur que vous spécifiez pour Size.

Par exemple, si vous choisissez Is superior than pour l'opérateur de comparaison et tapez 100 pour Size, AWS WAF Classic évalue les demandes Web pour une chaîne de requête de plus de 100 octets.

Size

Entrez la longueur, en octets, que vous souhaitez que AWS WAF Classic surveille dans les chaînes de requête.

Note

Si vous choisissez URI comme valeur de Part of the request to filter on, / dans l'URI est comptabilisé comme un caractère. Par exemple, le chemin /logo.jpg de l'URI comporte neuf caractères.

Transformation

Une transformation reformate une requête Web avant que AWS WAF Classic n'évalue la longueur de la partie spécifiée de la demande. Cela élimine une partie du formatage inhabituel utilisé par les attaquants dans les requêtes Web dans le but de contourner AWS WAF Classic.

Note

Si vous choisissez Body for Part of the request à filtrer, vous ne pouvez pas configurer AWS WAF Classic pour effectuer une transformation car seuls les 8192 premiers octets sont transférés pour inspection. Cependant, vous pouvez toujours filtrer votre trafic en fonction de la taille du corps de la requête HTTP et spécifier une transformation égale à None. (AWS WAF Classic obtient la longueur du corps à partir des en-têtes de requête.)

Vous ne pouvez spécifier qu'un seul type de transformation de texte.

Les transformations peuvent effectuer les opérations suivantes :

Aucun

AWS WAF Classic n'effectue aucune transformation de texte sur la requête Web avant d'en vérifier la longueur.

Convertir en minuscules

AWS WAF Classic convertit les lettres majuscules (A-Z) en minuscules (a-z).

Décodage d'HTML

AWS WAF Classic remplace les caractères codés en HTML par des caractères non codés :

  • Remplace &quot; par &

  • Remplace &nbsp; par un espace insécable

  • Remplace &lt; par <

  • Remplace &gt; par >

  • Remplace les caractères qui sont représentées au format hexadécimal, &#xhhhh;, par les caractères correspondants

  • Remplace les caractères qui sont représentés au format décimal, &#nnnn;, par les caractères correspondants

Normalisation des espaces blancs

AWS WAF Classic remplace les caractères suivants par un espace (32 décimal) :

  • \f, saut de page, décimale 12

  • \t, tabulation, décimale 9

  • \n, nouvelle ligne, décimale 10

  • \r, retour chariot, décimale 13

  • \v, tabulation verticale, décimale 11

  • Espace insécable, décimale 160

En outre, cette option remplace plusieurs espaces par un seul.

Simplifier la ligne de commande

Pour les requêtes qui contiennent des commandes de ligne de commande du système d'exploitation, utilisez cette option pour effectuer les transformations suivantes :

  • Supprimer les caractères suivants : \ " ' ^

  • Supprimer les espaces avant les caractères suivants : / (

  • Remplacer les caractères suivants par un espace : , ;

  • Remplacer plusieurs espaces par un espace

  • Convertit les lettres majuscules (A-Z) en lettres minuscules (a-z)

Décodage d'URL

Décoder une requête encodée par URL.

Ajout et suppression de filtres dans une condition de contrainte de taille

Vous pouvez ajouter ou supprimer des filtres dans une condition de contrainte de taille. Pour modifier un filtre, ajoutez un nouveau filtre et supprimez l'ancien.

Pour ajouter ou supprimer des filtres d'une condition de contrainte de taille
  1. Connectez-vous à la AWS WAF console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/wafv2/.

    Si le bouton Passer à la AWS WAF version classique apparaît dans le volet de navigation, sélectionnez-le.

  2. Dans le volet de navigation, choisissez Size constraint.

  3. Sélectionnez la condition pour laquelle vous souhaitez ajouter ou supprimer des filtres.

  4. Pour ajouter des filtres, effectuez les opérations suivantes :

    1. Choisissez Add filter.

    2. Indiquez les paramètres de filtre applicables. Pour plus d’informations, consultez Valeurs que vous spécifiez lorsque vous créez ou modifiez des conditions de contrainte de taille.

    3. Choisissez Ajouter.

  5. Pour supprimer des filtres, effectuez les opérations suivantes :

    1. Sélectionnez le filtre à supprimer.

    2. Choisissez Delete filter.

Suppression des conditions de contrainte de taille

Si vous souhaitez supprimer une condition de contrainte de taille, vous devez d'abord supprimer tous les filtres de la condition, puis supprimer la condition de toutes les règles qui l'utilisent, comme décrit dans la procédure suivante.

Pour supprimer une condition de contrainte de taille
  1. Connectez-vous à la AWS WAF console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/wafv2/.

    Si le bouton Passer à la AWS WAF version classique apparaît dans le volet de navigation, sélectionnez-le.

  2. Dans le volet de navigation, sélectionnez Size constraints.

  3. Dans le volet Size constraint conditions, sélectionnez la condition de contrainte de taille que vous souhaitez supprimer.

  4. Dans le volet droit, choisissez l'onglet Associated rules.

    Si la liste des règles utilisant cette condition de contrainte de taille est vide, passez à l'étape 6. Si la liste contient une ou des règles, notez-les et passez à l'étape 5.

  5. Pour supprimer la condition de contrainte de taille des règles qui l'utilisent, effectuez les opérations suivantes :

    1. Dans le volet de navigation, choisissez Règles.

    2. Choisissez le nom d'une règle qui utilise la condition de contrainte de taille que vous souhaitez supprimer.

    3. Dans le volet droit, sélectionnez la condition de contrainte de taille que vous souhaitez supprimer de la règle, puis sélectionnez Remove selected condition.

    4. Répétez les étapes b et c pour toutes les autres règles qui utilisent la condition de contrainte de taille que vous souhaitez supprimer.

    5. Dans le volet de navigation, choisissez Size constraint.

    6. Dans le volet Size constraint conditions, sélectionnez la condition de contrainte de taille que vous souhaitez supprimer.

  6. Choisissez Delete pour supprimer la condition sélectionnée.