
Modulo del kernel che utilizza ftrace per bloccare le richieste AF_ALG/AEAD, mitigando CVE-2026-31431 senza richiedere LSM BPF. Fornisce registrazione e compilazione semplice per Oracle Linux UEK.
Le soluzioni ebpf disponibili per mitigare cve-2026-31431 richiedono lsm=bpf al momento dell'avvio,
che di solito non è impostato per impostazione predefinita. Per OracleLinux questo è stato abilitato per impostazione predefinita in
UEKr7u3 e in UEKr8u1 dopo dicembre 2025.
Per verificare se puoi utilizzare ebpf-lsm per mitigare copyfail, controlla
/sys/kernel/security/lsm per bpf.
Poiché un paio delle nostre macchine esegue un kernel leggermente più vecchio (per $reasons)
ho cercato altri modi per mitigare questo problema di sicurezza, bloccando AF_ALG/AEAD
o AF_ALG tutto in una volta.
Ho pensato a un modulo del kernel che intercetta __sock_create e blocca AF_ALG oppure
intercetta aead_bind e blocca tutte le richieste.
L'idea era di farlo con ftrace.
Per compilare i moduli, prova quanto segue:
git clone this_repository
cd this_repository
make
Per Oracle Linux con UEK assicurati di installare e utilizzare i pacchetti corretti prima di eseguire make:
. /etc/os-release
releasever=${VERSION/.*}
uek=7 # o 8, qualunque cosa tu usi
dnf -y --enablerepo=ol${releasever}_UEKR${uek} install kernel-uek-devel make gcc kernel-headers
# potresti aver bisogno di uno dei seguenti:
# per oel9/uekr8
. /opt/rh/gcc-toolset-14/enable
# per oel8/uekr7
. /opt/rh/gcc-toolset-11/enable
Quindi carica il modulo:
# blocca AF_ALG tutto in una volta
insmod /path/to/af_alg_block.ko
# oppure blocca solo AF_ALG/AEAD
insmod /path/to/af_alg_aead_block.ko
Ora tutte le richieste per AF_ALG o tutti i binding AEAD (a seconda del modulo caricato) dovrebbero essere bloccati e tutti i tentativi dovrebbero essere registrati nei log.
Non sono uno sviluppatore di kernel. Ho studiato la documentazione di ftrace e ho costruito questo modulo per tentativi ed errori
finché tutte le richieste AF_ALG non sono state bloccate, senza influenzare altre famiglie di indirizzi.
L'ho testato su alcune macchine e per me sembra stabile. Non do alcuna garanzia che funzioni per te, altri vettori di attacco potrebbero aggirare questo modulo, oppure il modulo potrebbe rendere la tua macchina instabile.
Tuttavia, è una soluzione rapida per colmare il tempo finché le macchine non potranno finalmente essere riavviate.