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 correspondance de chaîne
Avertissement
AWS WAF Le support classique prendra fin le 30 septembre 2025.
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 du WebACLs, AWS WAF avant novembre 2019, et que vous ne les avez pas encore migrées vers la dernière version. Pour migrer votre site WebACLs, consultezMigration 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 des chaînes qui apparaissent dans les requêtes, créez une ou plusieurs conditions de correspondance de chaîne. Une condition de correspondance de chaîne identifie la chaîne que vous souhaitez rechercher et la partie des requêtes Web, telle qu'un en-tête spécifié ou la chaîne de requête, que AWS WAF Classic doit inspecter pour détecter la chaîne. Plus tard dans le processus, lorsque vous créez un site WebACL, vous spécifiez si vous souhaitez autoriser ou bloquer les demandes contenant la chaîne.
Rubriques
Création d'une condition de correspondance de chaîne
Lorsque vous créez des conditions de correspondance de chaîne, vous spécifiez des filtres qui identifient la chaîne que vous souhaitez rechercher et la partie des requêtes Web que AWS WAF Classic doit inspecter pour cette chaîne, telle que la chaîne URI ou la chaîne de requête. Vous pouvez ajouter plus d'un filtre à une condition de correspondance de chaîne ou vous pouvez créer une condition de correspondance de chaîne distincte pour chaque filtre. Voici comment chaque configuration affecte le comportement AWS WAF classique :
Un filtre par condition de correspondance de chaîne — Lorsque vous ajoutez des conditions de correspondance de chaîne distinctes à une règle et que vous ajoutez la règle à un site WebACL, 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 qui contiennent la valeur
BadBot
dans l'en-têteUser-Agent
. L'autre correspond aux requêtes web qui contiennent la valeurBadParameter
dans les chaînes de requête. Lorsque vous ajoutez les deux conditions à la même règle et que vous ajoutez la règle à un site WebACL, AWS WAF Classic autorise ou bloque les demandes uniquement lorsqu'elles contiennent les deux valeurs.Plusieurs filtres par condition de correspondance de chaîne : lorsque vous ajoutez une condition de correspondance de chaîne contenant plusieurs filtres à une règle et que vous ajoutez la règle à un site WebACL, il suffit qu'une demande Web corresponde à l'un des filtres de la condition de correspondance de chaîne pour que AWS WAF Classic autorise ou bloque la demande en fonction de cette seule 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 elles sont contenues
BadBot
dans l'User-Agent
en-tête ouBadParameter
dans la chaîne de requête.
Note
Lorsque vous ajoutez une condition de correspondance de chaîne à 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 correspondance de chaîne
Connectez-vous à la AWS WAF console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/wafv2/
. Si vous voyez Passer à la AWS WAF version classique dans le volet de navigation, sélectionnez-le.
Dans le volet de navigation, sélectionnez String and regex matching.
Choisissez Create condition.
Indiquez les paramètres de filtre applicables. Pour de plus amples informations, veuillez consulter Valeurs que vous spécifiez lorsque vous créez ou modifiez des conditions de correspondance de chaîne.
Choisissez Add filter.
Si vous souhaitez ajouter un autre filtre, répétez les étapes 4 et 5.
Lorsque vous avez fini d'ajouter les filtres, choisissez Create.
Valeurs que vous spécifiez lorsque vous créez ou modifiez des conditions de correspondance de chaîne
Lorsque vous créez ou mettez à jour une condition de correspondance de chaîne, vous spécifiez les valeurs suivantes :
- Nom
Saisissez un nom pour la condition de correspondance de chaîne. 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.
- Type
Choisissez String match.
- Partie de la requête à filtrer
Choisissez la partie de chaque requête Web que AWS WAF Classic doit inspecter pour trouver la chaîne que vous spécifiez dans Value to match :
- En-tête
Un en-tête de requête spécifié, par exemple, l'en-tête
User-Agent
ouReferer
. Si vous choisissez Header, précisez le nom de l'en-tête dans le champs Header.- HTTPméthode
HTTPMéthode, qui indique le type d'opération que la demande demande à l'origine d'effectuer. CloudFront prend en charge les méthodes suivantes :
DELETE
GET
,HEAD
,OPTIONS
,PATCH
,POST
, etPUT
.- Chaîne de requête
Partie d'un URL qui apparaît après un
?
personnage, le cas échéant.- URI
Le URI chemin de la demande, qui identifie la ressource, par exemple,
/images/daily-ad.jpg
. Cela n'inclut pas la chaîne de requête ni les composants du fragment duURI. Pour plus d'informations, voir Uniform Resource Identifier (URI) : syntaxe générique. À moins qu'une transformation ne soit spécifiée, a n'URIest pas normalisée et est inspectée au moment AWS où elle est reçue du client dans le cadre de la demande. Une transformation reformatera le URI comme indiqué.
- Corps de texte
Partie d'une demande qui contient des données supplémentaires que vous souhaitez envoyer à votre serveur Web en tant que corps de HTTP demande, telles que les données d'un formulaire.
Note
Si vous choisissez Body pour la valeur d'une partie de la demande à filtrer, AWS WAF Classic inspecte uniquement les 8 192 premiers octets (8 Ko). Pour autoriser ou bloquer les demandes dont le corps est supérieur à 8 192 octets, vous pouvez créer une condition de contrainte de taille. (AWS WAF Classic obtient la longueur du corps à partir des en-têtes de requête.) Pour de plus amples informations, veuillez consulter Utilisation des conditions de contrainte de taille.
- 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, s'il s'URLagit de « www.xyz.com ? UserName =abc& SalesRegion =seattle », vous pouvez ajouter un filtre au paramètre or. UserNameSalesRegion
Si les paramètres dupliqués apparaissent dans la chaîne de requête, les valeurs sont évaluées en tant que « OU ». Autrement dit, n'importe quelle valeur déclenchera une correspondance. Par exemple, dans URL « www.xyz.com ? SalesRegion =boston& SalesRegion =seattle », « boston » ou « seattle » dans Value to match déclenchera une correspondance.
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 UserNameou SalesRegion. 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 de requête, celui-ci correspondra à toutes les variantes de UserName, telles que le nom d'utilisateur et le sERNameU.
- 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 la valeur de tous les paramètres de la chaîne de requête pour trouver la valeur à correspondre. Par exemple, si URL c'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 si la valeur de l'un UserNameou l'autre SalesRegionest spécifiée comme valeur à correspondre.
- En-tête (uniquement lorsque « Part of the request to filter on » est défini sur « Header »)
Si vous avez choisi En-tête dans la partie de la demande à filtrer dans la liste, choisissez un en-tête dans la liste des en-têtes courants ou entrez le nom d'un en-tête que AWS WAF Classic doit inspecter.
- Type de correspondance
Dans la partie de la demande que AWS WAF Classic doit inspecter, choisissez l'endroit où la chaîne dans Value to match doit apparaître pour correspondre à ce filtre :
- Contains
La chaîne s'affiche n'importe où dans la partie spécifiée de la requête.
- Contient les mots
La partie spécifiée de la requête web doit inclure Value to match et Value to match doit uniquement contenir des caractères alphanumériques ou de soulignement (A-Z, a-z, 0-9, ou _). En outre, Value to match doit être un mot, ce qui implique l'une des déclarations suivantes :
Value to match correspond exactement à la valeur de la partie spécifiée de la requête web, telles que la valeur d'un en-tête.
Value to match est au début de la partie spécifiée de la requête web et est suivi par un caractère autre qu'un caractère alphanumérique ou de soulignement (_), par exemple,
BadBot;
.Value to match est à la fin de la partie spécifiée de la requête web et est précédé d'un caractère autre qu'un caractère alphanumérique ou de soulignement (_), par exemple,
;BadBot
.Value to match est au milieu de la partie spécifiée de la requête web et est précédé et suivi de caractères autre que des caractères alphanumériques ou de soulignement (_), par exemple,
-BadBot;
.
- Exactly matches
La chaîne et la valeur de la partie spécifiée de la requête sont identiques.
- Starts with
La chaîne s'affiche au début de la partie spécifiée de la requête.
- Se termine par
La chaîne s'affiche à la fin de la partie spécifiée de la requête.
- Transformation
Une transformation reformate une requête Web avant que AWS WAF Classic ne l'inspecte. Cela élimine une partie du formatage inhabituel utilisé par les attaquants dans les requêtes Web dans le but de contourner AWS WAF Classic.
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 de l'inspecter pour détecter la correspondance de la chaîne dans Value.
- Convertir en minuscules
AWS WAF Classic convertit les lettres majuscules (A-Z) en minuscules (a-z).
- HTMLdécoder
AWS WAF Classic remplace les caractères HTML codés par des caractères non codés :
Remplace
"
par&
Remplace
par un espace insécableRemplace
<
par<
Remplace
>
par>
Remplace les caractères qui sont représentées au format hexadécimal,
&#xhhhh;
, par les caractères correspondantsRemplace 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
Lorsque vous êtes préoccupé par le fait que des pirates puissent injecter une commande de ligne de commande du système d'exploitation et utilisent un formatage inhabituel pour masquer l'ensemble ou une partie de la commande, 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)
- URLdécoder
Décodez une demande URL codée.
- La valeur est codée en base64
Si la valeur de Value to match est codée en base64, cochez cette case. Utilisez l'encodage base64 pour spécifier des caractères non-imprimables, tel que des tabulations et des sauts de ligne, que les pirates incluent dans leurs requêtes.
- Value to match
Spécifiez la valeur que vous souhaitez que AWS WAF Classic recherche dans les requêtes Web. La longueur maximale est de 50 octets. Si vous affectez un encodage en base64 à la valeur, la longueur maximale de 50 octets s'applique à la valeur avant que vous ne l'encodiez.
Ajout et suppression de filtres dans une condition de correspondance de chaîne
Vous pouvez ajouter des filtres à une condition de correspondance de chaîne ou supprimer des filtres. Pour modifier un filtre, ajoutez un nouveau filtre et supprimez l'ancien.
Pour ajouter ou supprimer des filtres à une condition de correspondance de chaîne
Connectez-vous à la AWS WAF console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/wafv2/
. Si vous voyez Passer à la AWS WAF version classique dans le volet de navigation, sélectionnez-le.
Dans le volet de navigation, sélectionnez String and regex matching.
Sélectionnez la condition pour laquelle vous souhaitez ajouter ou supprimer des filtres.
Pour ajouter des filtres, effectuez les opérations suivantes :
Choisissez Add filter.
Indiquez les paramètres de filtre applicables. Pour de plus amples informations, veuillez consulter Valeurs que vous spécifiez lorsque vous créez ou modifiez des conditions de correspondance de chaîne.
Choisissez Ajouter.
Pour supprimer des filtres, effectuez les opérations suivantes :
Sélectionnez le filtre à supprimer.
Choisissez Delete Filter.
Suppression de conditions de correspondance de chaîne
Si vous souhaitez supprimer une condition de correspondance de chaîne, 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 correspondance de chaîne
Connectez-vous à la AWS WAF console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/wafv2/
. Si vous voyez Passer à la AWS WAF version classique dans le volet de navigation, sélectionnez-le.
Supprimez la condition de correspondance de chaîne des règles qui l'utilisent :
Dans le volet de navigation, choisissez Règles.
Choisissez le nom d'une règle qui utilise la condition de correspondance de chaîne que vous souhaitez supprimer.
Dans le volet droit, choisissez Edit rule.
Choisissez le X en regard de la condition que vous voulez supprimer.
Choisissez Mettre à jour.
Répétez les étapes pour toutes les autres règles qui utilisent la condition de correspondance de chaîne que vous souhaitez supprimer.
Supprimez les filtres de la condition que vous voulez supprimer :
Dans le volet de navigation, sélectionnez String and regex matching.
Choisissez le nom de la condition de correspondance de chaîne que vous souhaitez supprimer.
Dans le volet droit, cochez la case en regard de Filter pour sélectionner tous les filtres.
Choisissez Delete Filter.
Dans le volet de navigation, sélectionnez String and regex matching.
Dans le volet String and regex match conditions, sélectionnez la condition de correspondance de chaîne que vous voulez supprimer.
Choisissez Delete pour supprimer la condition sélectionnée.