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

Désactiver le module noyau Bluetooth

Garantit que le module noyau bluetooth n'est pas chargé et est mis en liste noire afin que la pile sans fil Bluetooth ne puisse être activée.

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

Bluetooth est une pile sans fil à courte portée rarement utile sur les serveurs. Son module noyau expose une surface d'attaque sans fil accessible à toute personne à portée radio, et Bluetooth a un long historique de vulnérabilités distantes (par ex. BlueBorne). Sur un système où Bluetooth n'est pas requis, la mise en liste noire du module offre une protection supplémentaire contre une activation accidentelle ou malveillante.

Ce que vérifie Pavois

Pavois utilise kernel_module('bluetooth') pour vérifier que le module n'est pas chargé et qu'il est désactivé dans la politique modprobe effective. Lire le noyau vivant et la config modprobe résolue (et non un seul .conf) détecte le cas où Bluetooth est en liste noire dans un fichier mais encore chargé, ou réactivé par un override.

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

Comment vérifier qu’elle est appliquée

Exécutez lsmod | grep bluetooth (aucune sortie = non chargé) et modprobe -n -v bluetooth (attendu : install /bin/true ou /bin/false). Confirmez aussi l'arrêt du service avec systemctl is-enabled bluetooth (attendu : disabled/masked).

Inspecter et investiguer

Les tentatives de chargement bloquées et le sous-système Bluetooth se journalisent dans le tampon noyau : journalctl -k | grep -i bluetooth ou dmesg | grep -i bluetooth. lsmod indique si le module est résident ; modprobe --showconfig montre la politique.

Remédiation

pavois harden apply utilise la ressource kernel_module pour mettre bluetooth en liste noire : il écrit une règle modprobe (install bluetooth /bin/false plus une entrée blacklist) empêchant le chargement automatique, et le décharge s'il est résident. reboot_required est vrai pour garantir le retrait complet de la pile de modules dépendants.

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

actionblacklist
namebluetooth
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

Un échec signifie qu'une surface d'attaque sans fil utilisable subsiste. Précaution : sur les postes de travail ou portables dépendant du Bluetooth (clavier, souris, casque, audio), la mise en liste noire désactivera ces périphériques, à appliquer uniquement aux serveurs ou hôtes sans besoin Bluetooth. Vérifiez avec lsusb/hciconfig qu'aucun périphérique Bluetooth n'est utilisé ; un redémarrage est requis pour décharger une pile active.

Mapping des normes

NormeRéférenceTypeVersionConfiance
NIST3.1.16support800-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