Inspecteur SSH

Présentation de l’inspecteur SSH

Type

Inspecteur (service)

Usage

Inspecter

Type d’instance

Multiton

Autres inspecteurs requis

Aucun

Activé

vrai

Le protocole SSH (Secure Shell) est un protocole réseau qui permet une communication sécurisée entre un client et un serveur sur un réseau non sécurisé. SSH prend en charge la tunnellisation et authentifie un hôte distant à l’aide de la cryptographie à clé publique.

Vous pouvez utiliser SSH pour transférer des fichiers en toute sécurité, ou vous connecter à un hôte distant et interagir avec la ligne de commande. Le protocole SSH utilise le port 22 sur TCP, UDP ou SCTP.

L’inspecteur ssh décode les paquets de flux et détecte les exploits SSH suivants :

  • Exploit de type dépassement du tampon défi-réponse

  • Exploit de type CRC32

  • Exploit de type dépassement du client SSH SecureCRT

  • Direction du message SSH incorrecte

Les attaques par dépassement du tampon défi-réponse et CRC-32 surviennent après l’authentification, lorsque la connexion réseau entre les hôtes est chiffrée. Les deux types d’attaques envoient une charge utile anormalement élevée de plus de 20 Ko au serveur immédiatement après la demande d’authentification.

L’inspecteur ssh détecte les attaques par dépassement du tampon défi-réponse et CRC-32 en comptant le nombre d’octets transmis au serveur. Si le nombre d’octets dépasse la limite définie dans un nombre prédéfini de paquets, l’inspecteur ssh génère une alerte. Les attaques CRC-32 s’appliquent uniquement à SSH version 1, tandis que les exploits de type dépassement du tampon défi-réponse s’appliquent uniquement à SSH version 2. L’inspecteur ssh lit la chaîne de version SSH au début de la session pour identifier le type d’attaque.

Les attaques par dépassement du tampon du client SSH SecureCRT et les attaques dues à une incompatibilité de protocole se produisent avant l'échange de clés, lorsque les hôtes tentent de sécuriser une connexion. L’attaque par dépassement du tampon du client SSH SecureCRT envoie une chaîne d’identifiant de protocole trop longue au client, ce qui provoque un dépassement de tampon. Une attaque due à une incompatibilité de protocole se produit lorsqu’une application cliente autre que SSH tente de se connecter à un serveur SSH sécurisé, ou lorsque les numéros de version du serveur et du client ne correspondent pas.


Remarque


L’inspecteur ssh ne gère pas les attaques par force brute.

Bonnes pratiques en matière de configuration de l’inspecteur SSH

Nous vous recommandons d’utiliser les paramètres de configuration par défaut de l’inspecteur ssh. Si vous dépassez le nombre maximal de paquets chiffrés pour une session, tel que défini dans le paramètre max_encrypted_packets, l’inspecteur ssh cesse de traiter le trafic de cette session afin d’améliorer les performances. L’inspecteur ssh ne détecte que les vulnérabilités SSH qui apparaissent au début de la session SSH.


Remarque


Si l’inspecteur ssh génère un faux-positif pour dépassement du tampon défi-réponse ou CRC 32, vous pouvez augmenter le nombre d’octets clients requis avec le paramètre max_client_bytes.


Paramètres de l’inspecteur SSH

Configuration du service SSH

L’inspecteur binder configure le service SSH. Pour obtenir plus d'informations, reportez-vous à la Présentation de l’inspecteur de binder.

Exemple :
[
    {
        "when": {
            "service": "ssh",
            "role": any
        },
        "use": {
            "type": "ssh"
        }
    }
]

max_encrypted_packets

Spécifie le nombre maximal de paquets chiffrés à examiner avant que l’inspecteur ssh n’ignore une session SSH. Si vous dépassez le nombre maximal de paquets chiffrés pour une session, l’inspecteur ssh cesse de traiter le trafic de cette session afin d’améliorer les performances.

Type : entier

Plage valide : de -1 à 65 535

Valeur par défaut : 25

max_client_bytes

Spécifie le nombre maximal d’octets sans réponse à transmettre au serveur avant que l’inspecteur ssh ne génère une alerte pour dépassement du tampon défi-réponse ou CRC 32. Si la limite max_client_bytes est dépassée avant l’envoi du nombre maximal de paquets chiffrés (max_encrypted_packets), l’inspecteur considère qu’une attaque a eu lieu et ignore le trafic.

Vous pouvez activer la règle 128:1 pour générer une alerte lorsque l’inspecteur détecte un dépassement du tampon défi-réponse ou la règle 128:2 pour générer une alerte lorsque l’inspecteur détecte un exploit CRC 32.

Pour chaque réponse valide que le client reçoit du serveur, l’inspecteur ssh réinitialise le nombre de paquets de max_client bytes.


Remarque


Nous vous déconseillons de définir la valeur de max_client_bytes sur 0 ou 1. Si vous définissez max_client_bytes sur 0 ou 1, l’inspecteur ssh génère toujours une alerte.

Type : entier

Plage valide : de 0 à 65 535

Valeur par défaut : 19 600

max_server_version_len

Spécifie la longueur maximale de la chaîne de version du serveur SSH. Si la longueur de la chaîne de version du serveur SSH dépasse la valeur de max_server_version_len, l’inspecteur ssh génère une alerte. Vous pouvez activer la règle 128:3 pour générer une alerte en cas de dépassement de la chaîne de version du serveur Secure CRT.

Type : entier

Plage valide : de 0 à 255

Valeur par défaut : 80


Remarque


La configuration par défaut de l’inspecteur ssh n’active aucune alerte.

Règles de l’inspecteur SSH

Activez les règles de l’inspecteur ssh pour générer des événements et, dans un déploiement en ligne, supprimer les paquets incriminés.

Tableau 1. Règles de l’inspecteur SSH

GID:SID

Message de règle

128:1

Exploit de type dépassement du tampon défi-réponse

128:2

Exploit de type SSH1 CRC32

128:3

Dépassement de la chaîne de version du serveur

128:5

Direction des messages incorrecte

128:6

Taille de la charge utile incorrecte pour la charge utile donnée

128:7

Échec de la détection de la chaîne de version SSH

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

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