← Toutes les règles
SOCLE-CLD-SSH-002// SSHmoyenneruntime effectif

Désactiver la compression SSH (ou la limiter à delayed)

Force le démon SSH à positionner Compression no afin que la compression de paquets ne soit pas négociée, en particulier avant l'authentification du client.

Vérifié sur l’état résolu en cours d’exécution (ex. sshd -T, sysctl, systemctl show), attrape les drop-ins et Include qu’une lecture de fichier raterait. Réserve : runtime ≠ persistance ; une valeur correcte maintenant peut ne pas survivre à un redémarrage.

Un PASS prouve✓ actif maintenant✓ sur disque✓ survit au rebootle verdict qualifié →
Debian 12CIS 1.1.0Debian 13CIS 1.0.0FedoraRHEL 10 / Rocky 10 / AlmaLinux 10RHEL 8 / Rocky 8 / AlmaLinux 8CIS 4.0.0RHEL 9 / Rocky 9 / AlmaLinux 9CIS 2.0.0Ubuntu 24.04CIS 1.0.0Ubuntu 26.04
Un seul check, mappé sur 1 norme

Pavois vérifie la configuration effective, l’état résolu et réellement appliqué, pas un fichier. Les scanners basés fichier (OVAL/SCAP, Lynis) ratent les Include, drop-ins et défauts runtime ; ce check voit ce qui est réellement en vigueur.

Un mapping est une référence croisée vers l’endroit où chaque norme situe cette exigence, ancrée et recoupée, pas une affirmation d’équivalence. Un check réussi est une preuve vers ces références, comment le lire.

Pourquoi cette règle

Lorsque la compression SSH est activée, le code de compression s'exécute avant l'authentification du client. Toute vulnérabilité dans la bibliothèque de compression (historiquement à l'origine de corruptions mémoire pré-auth) devient alors atteignable par un attaquant distant non authentifié, pouvant mener à l'exécution de code dans le processus privilégié sshd. Positionner Compression no supprime cette surface d'attaque pré-auth ; la valeur plus sûre delayed diffère au moins la compression jusqu'après l'authentification.

Ce que vérifie Pavois

Pavois lit la valeur effective via sshd -T, la configuration réellement résolue par sshd après analyse du fichier principal, de chaque Include, des drop-ins de /etc/ssh/sshd_config.d/ et des blocs Match. Se contenter de grep sur /etc/ssh/sshd_config raterait un Compression yes posé dans un drop-in ou un include de politique crypto.

describe command('sshd -T') do
  its('stdout') { should match(/^compression\s+no$/i) }
end

Comment vérifier qu’elle est appliquée

Exécutez sshd -T | grep -i '^compression'. La sortie attendue est compression no.

Inspecter et investiguer

Les événements de session et de démon SSH sont dans /var/log/auth.log (Debian/Ubuntu) ou via journalctl -u sshd (famille RHEL). Les erreurs de négociation/protocole à la connexion y apparaissent aussi avec LogLevel VERBOSE.

Remédiation

Le plan harden de Pavois écrit la directive sshd_setting Compression no (dans un drop-in géré), valide la configuration avec sshd -t avant de committer, puis recharge le service ssh pour que le changement prenne effet sans couper les sessions en cours. Appliquez-le avec pavois harden apply.

Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :

directivecompression
notifyaction: reload, service: ssh.service
resourcesshd_setting
valueno
verifysshd -t -f %{path}
pavois harden plan local

où la cible est local, un alias SSH user@hôte, ou un conteneur , Docs

Impact & précautions

Désactiver la compression n'a aucun impact fonctionnel sur les sessions interactives et un effet négligeable sur le débit des liens rapides modernes ; cela peut légèrement ralentir les transferts volumineux sur des liens très lents/à forte latence où la compression aidait. Aucun risque de verrouillage. Le plan harden recharge sshd au lieu de le redémarrer, donc les connexions existantes survivent ; gardez tout de même une seconde session ouverte par précaution lors de tout changement sshd.

Mapping des normes

NormeRéférenceTypeVersionConfiance
NIST3.1.12support800-53 Rev 5 · 800-171 Rev 2 (pinned)moyenne

Chaque référence est une référence croisée ancrée dans le benchmark amont et recoupée avec le SCAP Security Guide et ansible-lockdown, pas une affirmation d’équivalence. Direct = une exigence prescriptive au niveau de la ligne ; support = une famille de contrôle abstraite (NIST) vers laquelle le check apporte une preuve. Comment lire un mapping.

Sources & références