CVE-2025-21922 in Linuxinformación

Resumen

por VulDB • 2026-06-19

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:

ppp: Corregir la advertencia KMSAN uninit-value con bpf

Syzbot detectó una advertencia "KMSAN: uninit-value" [1], causada por que el controlador ppp no inicializa una cabecera de 2 bytes al utilizar un filtro de socket.

El siguiente código puede generar un programa BPF para filtros PPP: ''' struct bpf_program fp; pcap_t *handle; handle = pcap_open_dead(DLT_PPP_PPPD, 65535); pcap_compile(handle, &fp, "ip and outbound", 0, 0); bpf_dump(&fp, 1); '''

Su salida es: ''' (000) ldh [2]
(001) jeq #0x21 jt 2 jf 5 (002) ldb [0]
(003) jeq #0x1 jt 4 jf 5 (004) ret #65535 (005) ret #0 '''

Se puede encontrar código similar en el siguiente enlace: https://github.com/ppp-project/ppp/blob/master/pppd/options.c#L1680 El mantenedor de este repositorio de código es también el mantenedor original del controlador ppp.

Como se puede ver, el programa BPF omite 2 bytes de datos y luego lee el campo 'Protocol' para determinar si se trata de un paquete IP. A continuación, lee el primer byte de los primeros 2 bytes para determinar la dirección.

El problema es que solo el primer byte que indica la dirección está inicializado en el código actual del controlador ppp, mientras que el segundo byte no lo está.

Para programas BPF normales generados por libpcap, los datos sin inicializar no se utilizarán, por lo que no constituye un problema. Sin embargo, para programas BPP cuidadosamente elaborados (crafted), como aquellos generados por syzkaller [2], que comienzan a leer desde el desplazamiento 0, se utilizarán los datos sin inicializar y serán detectados por KMSAN.

[1] https://syzkaller.appspot.com/bug?extid=853242d9c9917165d791
[2] https://syzkaller.appspot.com/text?tag=ReproC&x=11994913980000

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsable

Linux

Reservar

2024-12-29

Divulgación

2025-04-01

Moderación

aceptado

Artículo

VDB-302643

CPE

listo

EPSS

0.00200

KEV

no

Actividades

muy bajo

Fuentes

Do you know our Splunk app?

Download it now for free!