← Toutes les règles
SOCLE-CLD-MOD-003// Kernel modulesmoyenneruntime effectif

Désactiver la prise en charge CAN

Garantit que le module noyau can n'est pas chargé et est mis en liste noire afin que le protocole de bus CAN inutilisé ne puisse être activé.

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é →
FedoraRHEL 10 / Rocky 10 / AlmaLinux 10RHEL 8 / Rocky 8 / AlmaLinux 8CIS 4.0.0RHEL 9 / Rocky 9 / AlmaLinux 9CIS 2.0.0
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

CAN (Controller Area Network) est un protocole de bus automobile/industriel sans utilité sur un serveur généraliste. Son module noyau ajoute du code d'analyse de protocole à la surface d'attaque ; une faille pourrait y être exploitée pour une élévation de privilèges ou un déni de service. Désactiver ce module inutilisé supprime cette exposition.

Ce que vérifie Pavois

Pavois utilise kernel_module('can') pour vérifier que le module n'est pas chargé et qu'il est désactivé dans la politique modprobe effective. Interroger le noyau vivant plus la config modprobe résolue (au lieu d'un seul .conf) détecte un module en liste noire quelque part mais encore chargé, ou réactivé par un override.

describe kernel_module('can') do
  it { should_not be_loaded }
  it { should be_disabled }
end

Comment vérifier qu’elle est appliquée

Exécutez lsmod | grep '^can' (aucune sortie = non chargé) et modprobe -n -v can (attendu : install /bin/true ou /bin/false). modprobe --showconfig | grep can affiche les règles effectives.

Inspecter et investiguer

Les tentatives de chargement bloquées apparaissent dans le journal noyau : journalctl -k | grep -i can / dmesg | grep -i can. lsmod montre les modules résidents ; modprobe --showconfig montre la politique.

Remédiation

pavois harden apply utilise la ressource kernel_module pour mettre can en liste noire : il écrit une règle modprobe (install can /bin/false plus une entrée blacklist) afin que le module ne puisse se charger automatiquement, et le décharge s'il est résident. reboot_required est vrai pour garantir le retrait.

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

actionblacklist
namecan
reboot_requiredtrue
resourcekernel_module
pavois harden plan local

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

Impact & précautions

Sur un serveur standard, désactiver can n'a aucun impact fonctionnel. Précaution : les passerelles industrielles/automobiles/IoT communiquant avec un bus CAN perdraient cette capacité, confirmez qu'aucune interface can/vcan n'est configurée (ip link show type can) avant d'appliquer. Un redémarrage est nécessaire pour décharger un module déjà chargé.

Mapping des normes

NormeRéférenceTypeVersionConfiance
CIS3.2.2directper OS, see the benchmark tablehaute

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