Inspecteur de normalisation

Présentation de l’inspecteur de normalisation

Type

Inspecteur (paquet)

Usage

Contexte

Type d’instance

Réseau

Autres inspecteurs requis

Aucun

Activé

vrai

L’inspecteur normalizer détecte et supprime les anomalies de protocole dans les paquets. L’inspecteur normalizer peut réduire au minimum les risques que des agresseurs créent des paquets pour échapper à la détection dans le cadre des déploiements en ligne.


Remarque


Avant d’envoyer du trafic à partir de votre réseau, vous devez déployer les configurations appropriées sur les appareils gérés à l’aide d’interfaces routées, commutées ou transparentes, ou de paires d’interfaces en ligne.


Vous pouvez spécifier la normalisation de n’importe quelle combinaison de protocoles IPv4, IPv6, ICMPv4, ICMPv6 et TCP dans les paquets. L’inspecteur normalizer effectue les normalisations paquet par paquet et gère la plupart des normalisations. L’inspecteur stream_tcp gère les normalisations de paquets et de flux liées à l’état TCP, y compris la normalisation de la charge utile TCP.

La normalisation en ligne se déroule juste après le décodage et avant le traitement par d’autres inspecteurs. La normalisation se poursuit des couches de paquets internes vers les couches externes.

L’inspecteur normalizer ne génère pas d’événements. L’inspecteur normalizer prépare les paquets en vue de leur utilisation par d’autres inspecteurs et dans le cadre de déploiements en ligne. L’inspecteur permet également de s’assurer que les paquets traités par le système sont les mêmes que ceux reçus par les hôtes de votre réseau.

Paramètres de l’inspecteur de normalisation

Localisez la portée de normalizer dans votre configuration pour définir les paramètres de l’inspecteur normalizer.

ip6

Efface l’indicateur Reserved (réservé) dans le trafic IPv6.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

icmp4

Efface l’indicateur Reserved (réservé) dans le trafic ICMPv4.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

icmp6

Efface l’indicateur Reserved (réservé) dans le trafic ICMPv6.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

ip4.base

Efface le sous-champ d’un seul bit Reserved (réservé) du champ d’en-tête IPv4 Flags (indicateurs IPv4) ainsi que le remplissage des paramètres. Résout les problèmes urgents de pointeur/indicateur. Nous vous recommandons d’activer ip4.base.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

ip4.df

Efface le sous-champ d’un seul bit Don’t Fragment (ne pas fragmenter) du champ d’en-tête IPv4 Flags (indicateurs IPv4). Activez ip4.df pour permettre à un routeur en aval de fragmenter les paquets au lieu de les abandonner. Le paramètre ip4.df permet d’éviter les évasions qui créent des paquets à abandonner.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

ip4.rf

Effacez les bits Reserved (réservé) sur les paquets entrants.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

ip4.tos

Efface le champ d’un octet Differentiated Services (services différenciés), anciennement appelé Type of Service (type de service).

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

ip4.trim

Tronque les paquets avec une charge utile excédentaire à la longueur de datagramme spécifiée dans l’en-tête IP plus l’en-tête de couche 2 (par exemple, Ethernet), mais ne les tronque pas en dessous de la longueur de trame minimale.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.base

Efface le sous-champ d’un seul bit Reserved (réservé) de l’en-tête TCP ainsi que les octets de remplissage des options. Résout les problèmes urgents de pointeur ou d’indicateur.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.block

Indique si les paquets doivent être abandonnés lors de la normalisation TCP.

Lorsque ce paramètre est activé, Snort bloque les paquets TCP anormaux qui, s’ils étaient normalisés, seraient non valides et seraient probablement bloqués par l’hôte destinataire. Par exemple, Snort bloque tout paquet SYN transmis après une session établie.

Snort abandonne tout paquet qui correspond à l’une des règles de l’inspecteur de flux TCP suivantes, que ces règles soient activées ou non :

  • 129:1

  • 129:3

  • 129:4

  • 129:6

  • 129:8

  • 129:11

  • 129:14 à 129:19

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.ecn

Active la normalisation par paquet ou par flux des indicateurs Explicit Congestion Notification (ECN).

  • Spécifiez packet pour effacer les indicateurs ECN paquet par paquet, quelle que soit la négociation.

  • Spécifiez stream pour effacer les indicateurs ECN flux par flux si l’utilisation d’ECN n’a pas été négociée. Si vous spécifiez stream, vous devez activer tcp.require_3whs dans l’inspecteur de flux TCP pour que la normalisation ait lieu.

  • Spécifiez off pour désactiver le paramètre tcp.ecn.

Type : énumération

Valeurs valides : off, packet, stream

Valeur par défaut : off

tcp.ips

Active la normalisation du champ de données TCP pour assurer la cohérence des données retransmises. Tout segment qui ne peut pas être réassemblé correctement est abandonné.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : true

tcp.opts

Indique si des options TCP spécifiques que vous autorisez dans le trafic doivent être normalisées. Snort ne normalise pas les options que vous autorisez explicitement. Le système normalise les options que vous n’autorisez pas explicitement.

Snort autorise toujours les options TCP suivantes, car elles sont couramment utilisées pour optimiser les performances TCP :

  • Taille de segment maximum (MSS)

  • Échelle de la fenêtre

  • Horodatage TCP

Snort n’autorise pas automatiquement d’autres options moins couramment utilisées.

Lorsque tcp.opts est activé, les normalisations du trafic TCP incluent les actions suivantes :

  • Tous les octets d’option sont définis sur No Operation (aucune opération; option 1 de TCP), à l’exception de MSS, de la mise à l’échelle de fenêtre, de l’horodatage et de toutes les options explicitement autorisées.

  • Les octets de l’horodatage sont définis sur No Operation (aucune opération) si l’horodatage est présent mais non valide, ou valide mais non négocié.

  • Le paquet est bloqué si l’horodatage est négocié, mais absent.

  • Le champ d’option de réponse Time Stamp Echo Reply (TSecr) (écho d’horodatage (TSecr)) est effacé si le bit de contrôle d’accusé de réception (ACK) n’est pas activé.

  • Les options MSS et Window Scale (mise à l’échelle de fenêtre) sont définies sur No Operation (aucune opération; TCP option 1) si le bit de contrôle SYN n’est pas activé.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.pad

Efface tous les octets de remplissage d’option.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.req_pay

Efface le champ Urgent Pointer (pointeur urgent) de l’en-tête TCP et le bit de contrôle urgent (URG) en l’absence de charge utile.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.req_urg

Efface le champ Urgent Pointer (pointeur urgent) de l’en-tête TCP 16 bits si le bit de contrôle urgent (URG) n’est pas défini.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.req_urp

Efface le bit de contrôle urgent (URG) si le champ Urgent Pointer (pointeur urgent) de l’en-tête TCP n’est pas défini.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.resv

Efface les bits Reserved (réservés) dans l’en-tête TCP.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.trim_mss

Réduit le champ TCP Data (données) à la taille de segment maximum (MSS) si la charge utile est plus longue que MSS.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.trim_rst

Efface les données du paquet RST.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.trim_syn

Supprime les données des paquets de synchronisation TCP (SYN).

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.trim_win

Réduit le champ TCP Data (données) à la taille spécifiée dans le champ Window (fenêtre).

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

tcp.urp

Définit le champ Urgent Pointer (pointeur urgent) de l’en-tête TCP à deux octets sur la longueur de la charge utile si le pointeur est supérieur à la longueur de la charge utile.

Type : booléen

Valeurs valides : true, false

Valeur par défaut : false

Règles de l’inspecteur de normalisation

Aucune règle n’est associée à l’inspecteur normalizer.

Options des règles de prévention des intrusions de l’inspecteur de normalisation

L’inspecteur normalizer ne comporte aucune option pour les règles de prévention des intrusions.