
Module kernel utilisant ftrace pour bloquer les requêtes AF_ALG/AEAD, atténuant CVE-2026-31431 sans nécessiter LSM BPF. Fournit une journalisation et une compilation facile pour Oracle Linux UEK.
Les solutions eBPF disponibles pour atténuer cve-2026-31431 nécessitent lsm=bpf au démarrage,
ce qui n'est généralement pas défini par défaut. Pour OracleLinux, cela a été activé par défaut dans
UEKr7u3 et dans UEKr8u1 après décembre 2025.
Pour vérifier si vous pouvez utiliser ebpf-lsm afin d'atténuer copyfail, consultez
/sys/kernel/security/lsm pour y trouver bpf.
Comme certaines de nos machines exécutent un noyau légèrement plus ancien (pour des raisons $reasons),
j'ai cherché d'autres moyens d'atténuer ce problème de sécurité, soit en bloquant AF_ALG/AEAD,
soit en bloquant AF_ALG directement.
J'ai pensé à un module noyau interceptant __sock_create et bloquant AF_ALG, ou
interceptant aead_bind et bloquant toutes les requêtes.
L'idée était de le faire avec .
ftracePour compiler les modules, essayez ce qui suit :
git clone this_repository
cd this_repository
make
Pour Oracle Linux avec UEK, assurez-vous d'installer et d'utiliser les bons paquets avant d'exécuter make :
. /etc/os-release
releasever=${VERSION/.*}
uek=7 # ou 8, selon ce que vous utilisez
dnf -y --enablerepo=ol${releasever}_UEKR${uek} install kernel-uek-devel make gcc kernel-headers
# vous pourriez avoir besoin de l'une des commandes suivantes :
# pour oel9/uekr8
. /opt/rh/gcc-toolset-14/enable
# pour oel8/uekr7
. /opt/rh/gcc-toolset-11/enable
Ensuite, chargez le module :
# bloquer AF_ALG directement
insmod /path/to/af_alg_block.ko
# ou bloquer uniquement AF_ALG/AEAD
insmod /path/to/af_alg_aead_block.ko
Désormais, toutes les requêtes pour AF_ALG ou toutes les liaisons AEAD (selon le module chargé) devraient être bloquées, et toutes les tentatives devraient être journalisées.
Je ne suis pas développeur noyau. J'ai étudié la documentation de ftrace et construit ce module par essais et erreurs
jusqu'à ce que toutes les requêtes AF_ALG soient bloquées, sans affecter les autres familles d'adresses.
J'ai testé cela sur certaines machines et cela me semble stable. Je ne garantis pas que cela fonctionnera pour vous, d'autres vecteurs d'attaque pourraient contourner ce module, ou le module pourrait rendre votre machine instable.
Cependant, c'est un correctif rapide pour combler le temps jusqu'à ce que les machines puissent enfin être redémarrées.