← Toutes les règles
SOCLE-CLD-SYS-036// Kernel & network (sysctl)moyenneruntime effectif

Désactiver le paramètre noyau d'acceptation des paquets à routage par la source sur les interfaces IPv4 par défaut

Force net.ipv4.conf.default.accept_source_route à 0 afin que chaque interface IPv4 nouvellement créée refuse par défaut les paquets à routage par la source.

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 3 normes

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

Les paquets à routage par la source transportent un chemin explicite choisi par l'émetteur, ordonnant aux routeurs de les acheminer par une route autre que celle qu'aurait choisie la table de routage. Les attaquants s'en servent pour contourner les pare-feu et les contrôles fondés sur le routage, atteindre des hôtes autrement injoignables et usurper les chemins de retour. Les usages légitimes se limitent essentiellement aux routeurs délibérés ; un hôte ordinaire doit définir le modèle default à 0 afin que chaque nouvelle interface refuse les paquets à routage par la source.

Ce que vérifie Pavois

Pavois lit la valeur d'exécution en direct de net.ipv4.conf.default.accept_source_route depuis le noyau (ressource InSpec kernel_parameter, équivalente à sysctl), et non un fichier /etc/sysctl.d/. La clé default définit le modèle des interfaces créées ultérieurement, donc seule la valeur en cours reflète la posture que les futures interfaces hériteront. Un drop-in pourrait déclarer 0 alors qu'un fichier ultérieur ou un sysctl -w l'a surchargé ; le paramètre effectif fait autorité.

describe kernel_parameter('net.ipv4.conf.default.accept_source_route') do
  its('value') { should cmp 0 }
end
describe command("grep -hsE '^[[:space:]]*net.ipv4.conf.default.accept_source_route[[:space:]]*=[[:space:]]*0([[:space:]]|$)' /etc/sysctl.conf /etc/sysctl.d/*.conf /run/sysctl.d/*.conf /usr/lib/sysctl.d/*.conf /lib/sysctl.d/*.conf 2>/dev/null") do
  its('stdout') { should match(/\S/) }
end

Comment vérifier qu’elle est appliquée

Exécutez sysctl net.ipv4.conf.default.accept_source_route. Sortie attendue :

  • net.ipv4.conf.default.accept_source_route = 0

Inspecter et investiguer

Aucun journal dédié n'existe. Avec log_martians activé, les paquets à routage par la source rejetés apparaissent via dmesg | grep -i martian et journalctl -k. Inspectez l'état avec sysctl net.ipv4.conf.default.accept_source_route et toutes les valeurs associées avec sysctl -a | grep accept_source_route.

Remédiation

Le plan de durcissement de Pavois utilise la ressource sysctl pour définir net.ipv4.conf.default.accept_source_route à 0, en l'appliquant au noyau en cours d'exécution et en le persistant dans un drop-in géré par Pavois sous /etc/sysctl.d/ afin qu'il survive au redémarrage. Appliquez-le avec pavois harden apply.

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

keynet.ipv4.conf.default.accept_source_route
resourcesysctl
value0
pavois harden plan local

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

Impact & précautions

Sûr pour la quasi-totalité des hôtes ; le routage par la source est obsolète et presque universellement indésirable. La seule exception légitime est un système fonctionnant comme routeur avec le transfert IPv4 activé qui doit honorer les paquets à routage par la source, un besoin très rare. C'est le modèle default ; associez-le à la règle all.accept_source_route pour une couverture complète. Définir cette valeur à 0 ne présente aucun risque de perte d'accès distant.

Mapping des normes

NormeRéférenceTypeVersionConfiance
ANSSI BP-028R12direct2.0haute
CIS3.3.8, 3.3.1.15directper OS, see the benchmark tablehaute
NIST3.1.20, CM-7(a), CM-7(b), SC-5, SC-7(a)support800-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