← Toutes les règles
SOCLE-CLD-KRN-012// Kernel command linefaibleruntime effectif

Configurer le niveau de confiance dans le TPM pour l'entropie

Exige le paramètre de démarrage noyau rng_core.default_quality=500 afin que le noyau crédite une quantité modérée d'entropie issue des RNG matériels (par ex. un TPM) pour éviter la pénurie d'entropie au démarrage.

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 22.04CIS 3.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

Au début du démarrage, un système peut manquer d'entropie, bloquant les opérations cryptographiques (génération de clés, TLS, getrandom()) jusqu'à ce que le pool aléatoire soit alimenté. rng_core.default_quality=500 indique au noyau de créditer l'entropie issue des RNG matériels (tel qu'un TPM) à un niveau de confiance modéré, aidant à remplir le pool plus vite afin que le système atteigne plus tôt un état cryptographique exploitable. Une valeur non nulle inférieure au maximum équilibre disponibilité et confiance partielle envers une source matérielle unique.

Ce que vérifie Pavois

Pavois lit la ligne de commande noyau active depuis /proc/cmdline et vérifie la présence de rng_core.default_quality=500. C'est la ligne de boot analysée par le noyau, et non /etc/default/grub, une modification de fichier jamais régénérée passerait à tort alors que le noyau en cours crédite encore zéro entropie matérielle. La valeur d'exécution est exposée dans /sys/module/rng_core/parameters/default_quality.

describe command('cat /proc/cmdline') do
  its('stdout') { should match(/(^| )rng_core\.default_quality=500( |$)/) }
end
describe command("grep -hwsF 'rng_core\.default_quality=500' /etc/default/grub /etc/kernel/cmdline /boot/grub/grub.cfg /boot/grub2/grub.cfg /boot/efi/EFI/*/grub.cfg 2>/dev/null") do
  its('stdout') { should match(/\S/) }
end

Comment vérifier qu’elle est appliquée

Lancez cat /proc/cmdline et confirmez la présence de rng_core.default_quality=500. Recoupez la valeur d'exécution avec :

cat /sys/module/rng_core/parameters/default_quality

La sortie attendue est 500.

Inspecter et investiguer

L'activité du RNG matériel est journalisée au démarrage, dmesg | grep -i 'hwrng\|rng' ou journalctl -k | grep -i rng. L'état de remplissage du pool d'entropie s'observe via cat /proc/sys/kernel/random/entropy_avail.

Remédiation

pavois harden apply utilise la ressource kernel_cmdline pour ajouter rng_core.default_quality=500 à la configuration du bootloader et la régénérer, afin que l'option soit présente au prochain démarrage. Un redémarrage est requis pour qu'il prenne effet.

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

paramrng_core.default_quality=500
reboot_requiredtrue
resourcekernel_cmdline
pavois harden plan local

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

Impact & précautions

Ce paramètre est à faible risque et améliore généralement la fiabilité du démarrage pour les services dépendant de la cryptographie. Précautions :

  • Il crédite l'entropie depuis le RNG matériel / TPM ; sur les hôtes sans source matérielle de confiance, la qualité créditée est une hypothèse de confiance, gardez une valeur modérée (500/1000) plutôt que le maximum.
  • Aucun impact applicatif ; il n'affecte que la rapidité de mise à disposition du pool aléatoire.
  • S'applique uniquement après redémarrage, planifiez une fenêtre de maintenance.

Mapping des normes

NormeRéférenceTypeVersionConfiance
ANSSI BP-028R8direct2.0haute

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