Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en Linux (CVE-2023-54247)

Gravedad:
Pendiente de análisis
Tipo:
No Disponible / Otro tipo
Fecha de publicación:
30/12/2025
Última modificación:
31/12/2025

Descripción

En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:<br /> <br /> bpf: Silenciar una advertencia en btf_type_id_size()<br /> <br /> syzbot informó una advertencia en [1] con el siguiente stacktrace:<br /> WARNING: CPU: 0 PID: 5005 at kernel/bpf/btf.c:1988 btf_type_id_size+0x2d9/0x9d0 kernel/bpf/btf.c:1988<br /> ...<br /> RIP: 0010:btf_type_id_size+0x2d9/0x9d0 kernel/bpf/btf.c:1988<br /> ...<br /> Traza de Llamada:<br /> <br /> map_check_btf kernel/bpf/syscall.c:1024 [inline]<br /> map_create+0x1157/0x1860 kernel/bpf/syscall.c:1198<br /> __sys_bpf+0x127f/0x5420 kernel/bpf/syscall.c:5040<br /> __do_sys_bpf kernel/bpf/syscall.c:5162 [inline]<br /> __se_sys_bpf kernel/bpf/syscall.c:5160 [inline]<br /> __x64_sys_bpf+0x79/0xc0 kernel/bpf/syscall.c:5160<br /> do_syscall_x64 arch/x86/entry/common.c:50 [inline]<br /> do_syscall_64+0x39/0xb0 arch/x86/entry/common.c:80<br /> entry_SYSCALL_64_after_hwframe+0x63/0xcd<br /> <br /> Con el siguiente btf<br /> [1] DECL_TAG &amp;#39;a&amp;#39; type_id=4 component_idx=-1<br /> [2] PTR &amp;#39;(anon)&amp;#39; type_id=0<br /> [3] TYPE_TAG &amp;#39;a&amp;#39; type_id=2<br /> [4] VAR &amp;#39;a&amp;#39; type_id=3, linkage=static<br /> y cuando bpf_attr.btf_key_type_id = 1 (DECL_TAG),<br /> el siguiente WARN_ON_ONCE en btf_type_id_size() se activa:<br /> if (WARN_ON_ONCE(!btf_type_is_modifier(size_type) &amp;amp;&amp;amp;<br /> !btf_type_is_var(size_type)))<br /> return NULL;<br /> <br /> Tenga en cuenta que &amp;#39;return NULL&amp;#39; es el comportamiento correcto ya que no queremos<br /> que un tipo DECL_TAG sea usado como btf_{key,value}_type_id incluso<br /> para el caso como &amp;#39;DECL_TAG -&amp;gt; STRUCT&amp;#39;. Así que no hay<br /> ningún problema de corrección aquí, solo queremos silenciar la advertencia.<br /> <br /> Para silenciar la advertencia, agregué DECL_TAG como uno de los tipos en<br /> btf_type_nosize() lo que hará que btf_type_id_size() devuelva<br /> NULL antes sin la advertencia.<br /> <br /> [1] https://lore.kernel.org/bpf/000000000000e0df8d05fc75ba86@google.com/

Impacto