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

Vulnerabilidades

Con el objetivo de informar, advertir y ayudar a los profesionales sobre las ultimas vulnerabilidades de seguridad en sistemas tecnológicos, ponemos a disposición de los usuarios interesados en esta información una base de datos con información en castellano sobre cada una de las ultimas vulnerabilidades documentadas y conocidas.

Este repositorio con más de 75.000 registros esta basado en la información de NVD (National Vulnerability Database) – en función de un acuerdo de colaboración – por el cual desde INCIBE realizamos la traducción al castellano de la información incluida. En ocasiones este listado mostrará vulnerabilidades que aún no han sido traducidas debido a que se recogen en el transcurso del tiempo en el que el equipo de INCIBE realiza el proceso de traducción.

Se emplea el estándar de nomenclatura de vulnerabilidades CVE (Common Vulnerabilities and Exposures), con el fin de facilitar el intercambio de información entre diferentes bases de datos y herramientas. Cada una de las vulnerabilidades recogidas enlaza a diversas fuentes de información así como a parches disponibles o soluciones aportadas por los fabricantes y desarrolladores. Es posible realizar búsquedas avanzadas teniendo la opción de seleccionar diferentes criterios como el tipo de vulnerabilidad, fabricante, tipo de impacto entre otros, con el fin de acortar los resultados.

Mediante suscripción RSS o Boletines podemos estar informados diariamente de las ultimas vulnerabilidades incorporadas al repositorio.

Vulnerabilidad en kernel de Linux (CVE-2021-47563)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se resolvió la siguiente vulnerabilidad: ice: evitar el subdesbordamiento de refcount de bpf_prog El controlador Ice tiene rutinas para administrar los recursos XDP que se comparten entre la operación ndo_bpf y el flujo de reconstrucción VSI. Esto último ocurre, por ejemplo, cuando el usuario cambia el recuento de cola en una interfaz a través de set_channels() de ethtool. Hay un problema relacionado con el recuento de bpf_prog cuando se reconstruye VSI: dado que se llama a ice_prepare_xdp_rings() con vsi->xdp_prog como argumento que ice_vsi_assign_bpf_prog() usa más adelante, los mismos punteros de bpf_prog se intercambian entre sí. Luego también se interpreta como un 'old_prog' que a su vez hace que llamemos a bpf_prog_put, lo que disminuirá su recuento. El siguiente símbolo se puede interpretar de una manera que, debido al recuento cero de un bpf_prog, se elimina del sistema mientras el kernel todavía intenta hacer referencia a él: [481.069429] ERROR: no se puede manejar el error de página para la dirección: ffffc9000640f038 [481.077390] # PF: acceso de lectura de supervisor en modo kernel [ 481.083335] #PF: error_code(0x0000) - página no presente [ 481.089276] PGD 100000067 P4D 100000067 PUD 1001cb067 PMD 106d2b067 PTE 0 [ 481.097141] : 0000 [#1] ANTICIPACIÓN SMP PTI [ 481.101980] CPU: 12 PID: 3339 Comm: sudo Tainted: G OE 5.15.0-rc5+ #1 [ 481.110840] Nombre de hardware: Intel Corp. GRANTLEY/GRANTLEY, BIOS GRRFCRB1.86B.0276.D07.1605190235 19/05/2016 [ 481.122021] RIP: 0010:dev_xdp_prog_id+0x25/0x40 [ 481.127265] Código: 80 00 00 00 00 0f 1f 44 00 00 89 f6 48 c1 e6 04 48 01 fe 48 8b 86 98 08 00 00 48 85 c0 74 13 48 8b 50 18 31 c0 48 85 d2 74 07 <48> 8b 42 38 8b 40 20 c3 48 8b 96 90 08 00 00 eb e8 66 2e 0f 1f 84 [ 481.148991] RSP: ffffc90007b638 68 EFLAGS: 00010286 [481.155034] RAX: 0000000000000000 RBX: ffff889080824000 RCX: 0000000000000000 [ 481.163278] RDX: ffffc9000640f000 RSI: ffff889080824010 RDI: ffff889080824000 [ 481.171527] ffff888107af7d00 R08: 0000000000000000 R09: ffff88810db5f6e0 [ 481.179776] R10: 00000000000000000 R11: ffff8890885b9988 R12: ffff88810db5f4bc [ 481.188026] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000 [ 481.196276] FS: 00007f5466d5bec0(0000) GS:ffff88903fb00000(0000) knlGS:0000000000000000 [ 48 1.205633] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 481.212279] CR2: ffffc9000640f038 CR3: 000000014429c006 CR4: 00000000003706e0 [ 481.220530] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 481.228771] DR3: 00000000000000000 DR6: 00000000ffe0ff0 7: 0000000000000400 [481.237029] Seguimiento de llamadas: [481.239856] rtnl_fill_ifinfo+0x768/0x12e0 [481.244602] rtnl_dump_ifinfo+0x525/0x650 [481.249246] ? __alloc_skb+0xa5/0x280 [ 481.253484] netlink_dump+0x168/0x3c0 [ 481.257725] netlink_recvmsg+0x21e/0x3e0 [ 481.262263] ____sys_recvmsg+0x87/0x170 [ 481.2 66707] ? __might_fault+0x20/0x30 [ 481.271046] ? _copia_de_usuario+0x66/0xa0 [481.275591] ? iovec_from_user+0xf6/0x1c0 [ 481.280226] ___sys_recvmsg+0x82/0x100 [ 481.284566] ? sock_sendmsg+0x5e/0x60 [481.288791]? __sys_sendto+0xee/0x150 [ 481.293129] __sys_recvmsg+0x56/0xa0 [ 481.297267] do_syscall_64+0x3b/0xc0 [ 481.301395] Entry_SYSCALL_64_after_hwframe+0x44/0xae [ 481.307238] RIP: 0033:0x7f5466f39617 [ 481.311373] Código: 0c 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb bd 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 2f 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 2 8 89 54 24 1c 48 89 74 24 10 [ 481.342944] RSP: 002b:00007ffedc7f4308 EFLAGS: 00000246 ORIG_RAX: 0000000000000002f [ 481.361783] RAX: ffffffffffffffda RBX: 00007ffedc7f5460 RCX: 00007f5466f39617 [ 481.380278] RDX: 0000000000000000 RSI: 00007ffedc7f5360 RDI: 000000000000003 [ 481.398500] R PA : 00007ffedc7f53f0 R08: 0000000000000000 R09: 000055d556f04d50 [ 481.416463] R10: 0000000000000077 R11: 0000000000000246 R12: ffedc7f5360 [ 481.434131] R13: 00007ffedc7f5350 R14: 00007ffedc7f5344 R15: 0000000000000e98 [ 481.451520] Módulos vinculados en: ice ---truncado---
Gravedad CVSS v3.1: MEDIA
Última modificación:
01/04/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47564)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se resolvió la siguiente vulnerabilidad: net: marvell: prestera: corrige el problema de doble liberación en la ruta de error corrige el manejo de la ruta de error en prestera_bridge_port_join() que hace que el controlador de prestera falle (ver más abajo). Seguimiento: Error interno: Ups: 96000044 [#1] Módulos SMP vinculados en: prestera_pci prestera uio_pdrv_genirq CPU: 1 PID: 881 Comm: ip Not tainted 5.15.0 #1 pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc: prestera_bridge_destroy+0x2c/0xb0 [prestera] lr: prestera_bridge_port_join+0x2cc/0x350 [prestera] sp: ffff800011a1b0f0... x2: ffff000109ca6c80 x1: dead000000000100 x0: dead00000 0000122 Rastreo de llamadas: prestera_bridge_destroy+0x2c/0xb0 [prestera] prestera_bridge_port_join+0x2cc/0x350 [prestera] prestera_netdev_port_event.constprop.0+0x3c4/0x450 [prestera] prestera_netdev_event_handler+0xf4/0x110 [prestera] raw_notifier_call_chain+0x54/0x80 call_netdevice_notifiers_info+0 x54/0xa0 __netdev_upper_dev_link+0x19c/0x380
Gravedad CVSS v3.1: ALTA
Última modificación:
06/01/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47565)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se resolvió la siguiente vulnerabilidad: scsi: mpt3sas: solucionó el pánico del kernel durante la prueba de ciclo de energía de la unidad. Mientras se recorre la lista sdev de shost, es posible que una de las unidades se esté eliminando y su objeto sas_target se libere pero su objeto sdev permanece intacta. En consecuencia, puede ocurrir un pánico en el kernel mientras el controlador intenta acceder al campo sas_address del objeto sas_target sin verificar también si el objeto sas_target es NULL.
Gravedad CVSS v3.1: ALTA
Última modificación:
18/09/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47566)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: proc/vmcore: corrige el borrado del búfer del usuario usando correctamente clear_user() Para borrar un búfer de usuario no podemos simplemente usar memset, tenemos que usar clear_user(). Con un dispositivo virtio-mem que registra un vmcore_cb y tiene algo de memoria lógicamente desconectada dentro de un bloque de memoria de Linux agregado, puedo desencadenar fácilmente un ERROR copiando el vmcore a través de "cp": systemd[1]: Iniciando el servicio Kdump Vmcore Save. . kdump[420]: Kdump está utilizando el nivel de registro predeterminado (3). kdump[453]: guardar en /sysroot/var/crash/127.0.0.1-2021-11-11-14:59:22/ kdump[458]: guardar vmcore-dmesg.txt en /sysroot/var/crash/127.0 .0.1-2021-11-11-14:59:22/ kdump[465]: guardar vmcore-dmesg.txt completo kdump[467]: guardar vmcore ERROR: no se puede manejar el error de página para la dirección: 00007f2374e01000 #PF: escritura del supervisor acceso en modo kernel #PF: error_code(0x0003) - violación de permisos PGD 7a523067 P4D 7a523067 PUD 7a528067 PMD 7a525067 PTE 800000007048f867 Ups: 0003 [#1] PREEMPT SMP NOPTI CPU: 0 PID: 468 Comm: p No contaminado 5.15.0+ # 6 Nombre del hardware: PC estándar QEMU (Q35 + ICH9, 2009), BIOS rel-1.14.0-27-g64f37cc530f1-prebuilt.qemu.org 01/04/2014 RIP: 0010:read_from_oldmem.part.0.cold+0x1d/ 0x86 Código: ff ff ff e8 05 ff fe ff e9 b9 e9 7f ff 48 89 de 48 c7 c7 38 3b 60 82 e8 f1 fe fe ff 83 fd 08 72 3c 49 8d 7d 08 4c 89 e9 89 e8 <49> c7 45 00 00 00 00 00 49 C7 44 05 F8 00 00 00 00 48 83 E7 F81 RSP: 0018: FFFFFC9000073BE08 EFLAGS: 00010212 RAX: 00000000000000001000 RBX: 000000002FD000 RCX: 00007F2374E RSI: 000000000000FFFFDFFF RDI: 00007F2374E01008 RBP: 000000000000001000 R08: 0000000000000000 R09: ffffc9000073bc50 R10: ffffc9000073bc48 R11: ffffffff829461a8 R12: 000000000000f000 R13: 00007f2374e01000 R14: 0000000000000000 R15: 88807bd421e8 FS: 00007f2374e12140(0000) GS:ffff88807f000000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2 : 00007f2374e01000 CR3: 000000007a4aa000 CR4: 0000000000350eb0 Seguimiento de llamadas: read_vmcore+0x236/0x2c0 proc_reg_read+0x55/0xa0 vfs_read+0x95/0x190 do_syscall_64+0x3b/0x90 Entry_SYSCALL_64_after_hwframe+0x44/0xae Algunas CPU x86-64 tienen una función de CPU llamada "Prevención de acceso en modo supervisor (SMAP)", que se utiliza para detectar accesos incorrectos desde el kernel a los búferes de usuario como este: SMAP desencadena una violación de permisos en caso de acceso incorrecto. En la variante x86-64 de clear_user(), SMAP se maneja correctamente mediante clac()+stac(). Para solucionarlo, utilice correctamente clear_user() cuando estemos tratando con un búfer de usuario.
Gravedad CVSS v3.1: ALTA
Última modificación:
18/09/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47567)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: powerpc/32: corrige el bloqueo físico en el desbordamiento de la pila de vmap Desde El commit c118c7303ad5 ("powerpc/32: corrige la pila de vmap - No activar MMU antes de leer la estructura de la tarea") un desbordamiento de la pila de vmap resulta en un bloqueo duro. Esto se debe a que Emergency_ctx todavía se aborda con su dirección virtual, aunque la MMU de datos ya no esté activa en ese momento. Solucionarlo utilizando una dirección física en su lugar.
Gravedad CVSS v3.1: MEDIA
Última modificación:
18/09/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47552)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: blk-mq: cancela el trabajo de envío de blk-mq tanto en blk_cleanup_queue como en disk_release() Para evitar ralentizar la destrucción de la cola, no llamamos a blk_mq_quiesce_queue() en blk_cleanup_queue(). en lugar de retrasar la cancelación del trabajo de envío en blk_release_queue(). Sin embargo, esta forma ha provocado errores en el kernel[1], según informó Changhui. El registro muestra que scsi_device se puede liberar antes de ejecutar blk_release_queue(), lo cual también se espera ya que scsi_device se libera después de que se cierra el disco scsi y se elimina scsi_device. Soluciona el problema cancelando el trabajo de envío de blk-mq tanto en blk_cleanup_queue() como en disk_release(): 1) cuando se ejecuta disk_release(), el disco se ha cerrado y se han realizado todas las actividades de envío de sincronización, por lo que cancelar el trabajo de envío es suficiente para inmovilizar la actividad de envío de E/S del sistema de archivos. 2) en blk_cleanup_queue(), solo nos centramos en la solicitud de paso a través, y la persona que llama siempre asigna y libera explícitamente la solicitud de paso a través, por lo que una vez que la cola se congela, se ha realizado toda la actividad de envío de sincronización para la solicitud de paso a través, entonces es suficiente con simplemente cancelar el trabajo de despacho para evitar cualquier actividad de despacho. [1] registro de pánico del kernel [12622.769416] ERROR: desreferencia del puntero NULL del kernel, dirección: 0000000000000300 [12622.777186] #PF: acceso de lectura del supervisor en modo kernel [12622.782918] #PF: código de error (0x0000) - página no presente [12622.788649] re 0 P4D 0 [12622.791474] Ups: 0000 [#1] PREEMPT SMP PTI [12622.796138] CPU: 10 PID: 744 Comm: kworker/10:1H Kdump: cargado No contaminado 5.15.0+ #1 [12622.804877] Nombre de hardware: Dell Inc. PowerEdge R730/0H21J3, BIOS 1.5.4 10/002/2015 [12622.813321] Cola de trabajo: kblockd blk_mq_run_work_fn [12622.818572] RIP: 0010:sbitmap_get+0x75/0x190 [12622.823336] Código: 85 80 00 00 00 41 8b 57 08 85 d2 0f 84 b1 00 00 00 45 31 e4 48 63 cd 48 8d 1c 49 48 c1 e3 06 49 03 5f 10 4c 8d 6b 40 83 f0 01 <48> 8b 33 44 89 f2 4c 89 ef 0f b6 c8 e 8 fa f3 ff ff 83 f8 ff 75 58 [12622.844290] RSP: 0018:ffffb00a446dbd40 EFLAGS: 00010202 [12622.850120] RAX: 00000000000000001 RBX: 0000000000000300 0000000000000004 [12622.858082] RDX: 0000000000000006 RSI: 0000000000000082 RDI: ffffa0b7a2dfe030 [12622.866042] RBP: 0000000000000004 8: 0000000000000001 R09: ffffa0b742721334 [12622.874003] R10: 0000000000000008 R11: 0000000000000008 R12: 00000000000000000 [12622.881964] R13: 0000340 R14: 0000000000000000 R15: ffffa0b7a2dfe030 [12622.889926] FS: 0000000000000000(0000) GS:ffffa0baafb40000(0000) knlGS:000000000000000 00 [12622.898956] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [12622.905367] CR2: 0000000000000300 CR3: 0000000641210001 CR4: 00000000001706e0 [12622.913 328] Seguimiento de llamadas: [12622.916055] [12622.918394] scsi_mq_get_budget+0x1a/0x110 [12622.922969] __blk_mq_do_dispatch_sched+0x1d4/0x320 [12622.928404] ? pick_next_task_fair+0x39/0x390 [12622.933268] __blk_mq_sched_dispatch_requests+0xf4/0x140 [12622.939194] blk_mq_sched_dispatch_requests+0x30/0x60 [12622.944829] q_run_hw_queue+0x30/0xa0 [12622.949593] proceso_one_work+0x1e8/0x3c0 [12622.954059] trabajador_thread+0x50/0x3b0 [12622.958144] ? hilo_rescate+0x370/0x370 [12622.962616] kthread+0x158/0x180 [12622.966218] ? set_kthread_struct+0x40/0x40 [12622.970884] ret_from_fork+0x22/0x30 [12622.974875] [12622.977309] Módulos vinculados en: scsi_debug rpcsec_gss_krb5 auth_rpcgss nfsv4 solucionador nfs lockd gracia fscache netfs sunrpc dm_multipath intel_rapl_msr intel_rapl_common dell_wmi_descriptor sb_edac rfkill video x86_pkg_temp_thermal intel_powerclamp dcdbas coretemp kvm_intel kvm mgag200 irqbypass i2c_algo_bit rapl drm_kms_helper ipmi_ssif intel_cstate intel_uncore syscopyarea ---truncado---
Gravedad CVSS v3.1: MEDIA
Última modificación:
06/01/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47553)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se resolvió la siguiente vulnerabilidad: sched/scs: restablecer el estado de la pila de tareas en Bringup_cpu() Para desconectar en caliente una CPU, la tarea inactiva en esa CPU llama a algunas capas de código C antes de abandonar finalmente el kernel. Cuando KASAN está en uso, se deja una sombra envenenada para cada uno de los marcos de pila activos y cuando las pilas de llamadas de sombra están en uso. Cuando se utilizan pilas de llamadas ocultas (SCS), el SCS SP guardado de la tarea se deja apuntando a un punto arbitrario dentro de la pila de llamadas ocultas de la tarea. Cuando una CPU está desconectada y luego conectada nuevamente al kernel, este estado obsoleto puede afectar negativamente la ejecución. La sombra de KASAN obsoleta puede generar alias en nuevos marcos de pila y generar advertencias de KASAN falsas. Un SCS SP obsoleto es efectivamente una pérdida de memoria e impide que se utilice una parte de la pila de llamadas ocultas. Después de varios ciclos de conexión en caliente, toda la pila de llamadas ocultas de la tarea inactiva puede quedar inutilizable. Anteriormente solucionamos el problema de KASAN en el commit: e1b77c92981a5222 ("sched/kasan: eliminar el veneno de KASAN obsoleto después de la conexión en caliente")... eliminando cualquier veneno de pila de KASAN obsoleto inmediatamente antes de conectar una CPU. Posteriormente, en El commit: f1a0a376ca0c4ef1 ("sched/core: Inicialice la tarea inactiva con la preferencia deshabilitada")... la refactorización dejó la limpieza de KASAN y SCS en un código de inicialización de subproceso inactivo de una sola vez en lugar de algo invocado antes de que cada CPU se conectara. rompiendo ambos como arriba. Arreglamos SCS (pero no KASAN) en El commit: 63acd42c0d4942f7 ("sched/scs: restablecer la pila de sombra cuando idle_task_exit")... pero como esto se ejecuta en el contexto de la tarea inactiva que está fuera de línea, es potencialmente frágil. Para solucionar estos problemas de manera consistente y más sólida, restablezca la sombra SCS SP y KASAN de la tarea inactiva de una CPU inmediatamente antes de conectar esa CPU en Bringup_cpu(). Esto garantiza que la tarea inactiva siempre tenga un estado consistente cuando se está ejecutando y elimina la necesidad de tenerlo al salir de una tarea inactiva. Siempre que se crea un subproceso, dup_task_struct() le dará a la tarea una pila que está libre de sombra KASAN e inicializará el SP SCS de la tarea, por lo que no hay necesidad de inicializar especialmente ninguno de los subprocesos inactivos dentro de init_idle(), ya que esto solo era necesario para manejar ciclos de conexión en caliente. Probé esto en arm64 con: * gcc 11.1.0, defconfig +KASAN_INLINE, KASAN_STACK * clang 12.0.0, defconfig +KASAN_INLINE, KASAN_STACK, SHADOW_CALL_STACK ... offlining and onlining CPUS with: | while true; do | for C in /sys/devices/system/cpu/cpu*/online; do | echo 0 > $C; | echo 1 > $C; | done | done
Gravedad CVSS v3.1: ALTA
Última modificación:
18/09/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47554)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux se ha solucionado la siguiente vulnerabilidad: vdpa_sim: evitar poner un iova_domain no inicializado El sistema se bloqueará si ponemos un iova_domain no inicializado, esto podría pasar cuando ocurre un error antes de inicializar el iova_domain en vdpasim_create(). ERROR: desreferencia del puntero NULL del kernel, dirección: 0000000000000000... RIP: 0010:__cpuhp_state_remove_instance+0x96/0x1c0... Seguimiento de llamadas: put_iova_domain+0x29/0x220 vdpasim_free+0xd1/0x120 [vdpa_release_] desarrollo+0x21/0x40 [ vdpa] device_release+0x33/0x90 kobject_release+0x63/0x160 vdpasim_create+0x127/0x2a0 [vdpa_sim] vdpasim_net_dev_add+0x7d/0xfe [vdpa_sim_net] vdpa_nl_cmd_dev_add_set_doit+0xe1/0x1a0 [ vdpa] genl_family_rcv_msg_doit+0x112/0x140 genl_rcv_msg+0xdf/0x1d0 ... Entonces debemos asegurarnos de que iova_domain ya esté inicializado antes de colocarlo. Además, es posible que recibamos la siguiente advertencia en este caso: ADVERTENCIA: ... drivers/iommu/iova.c:344 iova_cache_put+0x58/0x70 Por lo tanto, debemos asegurarnos de que iova_cache_put() se invoque solo si iova_cache_get() es ya invocado. Arreglemoslo juntos.
Gravedad CVSS v3.1: MEDIA
Última modificación:
15/01/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47555)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net: vlan: corrige el desbordamiento insuficiente para real_dev refcnt Inyecte el error antes de dev_hold(real_dev) en Register_vlan_dev() y ejecute el siguiente caso de prueba: ip link add dev dummy1 tipo dummy ip link add nombre dummy1.100 link dummy1 tipo vlan id 100 ip link del dev dummy1 Cuando se elimina el dispositivo de red ficticio, recibiremos una ADVERTENCIA como la siguiente: ===================== ==================================================== = refcount_t: decremento hit 0; pérdida de memoria. ADVERTENCIA: CPU: 2 PID: 0 en lib/refcount.c:31 refcount_warn_saturate+0xbf/0x1e0 y un bucle sin fin de: ======================== ================================================= unregister_netdevice: esperando que el dummy1 quede libre. Recuento de uso = -1073741824 Esto se debe a que dev_put(real_dev) en vlan_dev_free() se llama sin dev_hold(real_dev) en Register_vlan_dev(). Hace que el refcnt de real_dev se desborde. Mueva dev_hold(real_dev) a vlan_dev_init() que es la devolución de llamada de ndo_init(). Eso hace que dev_hold() y dev_put() para real_dev de vlan sean simétricos.
Gravedad CVSS v3.1: MEDIA
Última modificación:
18/09/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47556)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se resolvió la siguiente vulnerabilidad: ethtool: ioctl: corrige un posible deref NULL en ethtool_set_coalesce() ethtool_set_coalesce() ahora usa las devoluciones de llamada .get_coalesce() y .set_coalesce(). Pero la verificación de su disponibilidad tiene errores, por lo que cambiar la configuración de fusión en un dispositivo donde el controlador proporciona solo _una_ de las devoluciones de llamada da como resultado una desreferencia del puntero NULL en lugar de un -EOPNOTSUPP. Corrija la condición para que se garantice la disponibilidad de ambas devoluciones de llamada. Esto también coincide con el código netlink. Tenga en cuenta que reproducir esto requiere algo de esfuerzo: solo afecta la ruta ioctl heredada y necesita una combinación específica de opciones de controlador: - tener .get_coalesce() y .coalesce_supported pero no .set_coalesce(), o - tener .set_coalesce() pero no .get_coalesce(). Aquí por ej. ethtool no causa el bloqueo ya que primero intenta llamar a ethtool_get_coalesce() y sale por error.
Gravedad CVSS v3.1: MEDIA
Última modificación:
10/06/2024

Vulnerabilidad en kernel de Linux (CVE-2021-47557)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: net/sched: sch_ets: no mire las clases más allá de 'nbands' cuando el número de clases DRR disminuye, la lista activa por turnos puede contener elementos que ya han sido liberados en ets_qdisc_change(). Como consecuencia, es posible ver un bloqueo de desreferencia NULL, causado por el intento de llamar a cl->qdisc->ops->peek(cl->qdisc) cuando cl->qdisc es NULL: ERROR: desreferencia del puntero NULL del kernel, dirección: 0000000000000018 #PF: acceso de lectura del supervisor en modo kernel #PF: error_code(0x0000) - página no presente PGD 0 P4D 0 Ups: 0000 [#1] PREEMPT SMP NOPTI CPU: 1 PID: 910 Comm: mausezahn Not tainted 5.16 .0-rc1+ #475 Nombre de hardware: Red Hat KVM, BIOS 1.11.1-4.module+el8.1.0+4066+0f1aadab 01/04/2014 RIP: 0010:ets_qdisc_dequeue+0x129/0x2c0 [sch_ets] Código: c5 01 41 39 ad e4 02 00 00 0f 87 18 ff ff ff 49 8b 85 c0 02 00 00 49 39 c4 0f 84 ba 00 00 00 49 8b ad c0 02 00 00 48 8b 7d 10 <48> 8b 47 48 8b 40 38 0f ae e8 ff d0 48 89 c3 48 85 c0 0f 84 9d RSP: 0000:ffffbb36c0b5fdd8 EFLAGS: 00010287 RAX: ffff956678efed30 RBX: 0000000000000000 RCX: 00000000000 00000 RDX: 0000000000000002 RSI: ffffffff9b938dc9 RDI: 0000000000000000 RBP: ffff956678efed30 R08: e2f3207fe360129c R09: 000000000000000000000 R10 : 0000000000000001 R11: 0000000000000001 R12: ffff956678efeac0 R13: ffff956678efe800 R14: ffff956611545000 R15: ffff95667ac8f100 FS: a9120740(0000) GS:ffff95667b800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000000018 CR3: 0000011070c000 CR4: 0000000000350ee0 Seguimiento de llamadas: qdisc_peek_dequeued+0x29/0x70 [sch_ets] tbf_dequeue+0x22/0x260 [sch_tbf] __qdisc_run+0x7f/0x630 net_tx_action+0x290/0x4c0 ee/0x4f8 irq_exit_rcu+0xf4/0x130 sysvec_apic_timer_interrupt+0x52/0xc0 asm_sysvec_apic_timer_interrupt+0x12/0x20 RIP: 0033:0x7f2aa7fc9ad4 Código: b9 ff ff 48 8b 54 24 18 48 83 c4 08 48 89 ee 48 89 df 5b 5d e9 ed fc ff ff 0f 1f 0 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa <53> 48 83 ec 10 48 8b 05 10 64 33 00 48 8b 00 48 85 c0 0f 85 84 00 RSP: 002b:00007ffe5d33fab8 EFLAGS: 00000202 RAX: 0000002 RBX: 0000561f72c31460 RCX: 0000561f72c31720 RDX: 0000000000000002 RSI: 0000561f72c31722 RDI: 0000561f72c31720 RBP: 000000000000002a R08: 00007ffe5d33fa40 R09: 00000000000000014 R10: 0000000000000000 R11: 000000000000246 R12: 0000561f7187e380 R13: 0000000000000000 R14: 0000000000000000 R15: 0000561f72c31460 Módulos vinculados en: sch_ets sch_tbf dummy matar iTCO_wdt intel_rapl_msr iTCO_vendor_support intel_rapl_common joydev virtio_balloon lpc_ich i2c_i801 i2c_smbus pcspkr ip_tables xfs libcrc32c crct10dif_pclmul crc32_pclmul crc32c_intel ahci libahci ghash_clmulni_intel serio_raw libata virtio_blk virtio_console virtio_net net_failover failover sunrpc dm_mirror dm_region_hash dm _log dm_mod CR2: 0000000000000018 Asegurarse de que 'alist' nunca se pusiera a cero [1] no fue suficiente, debemos eliminarlo de la lista activa aquellos elementos que ya no son PS ni RRD. [1] https://lore.kernel.org/netdev/60d274838bf09777f0371253416e8af71360bc08.1633609148.git.dcaratti@redhat.com/ v3: corrige la ejecución entre ets_qdisc_change() y ets_qdisc_dequeue() eliminando las clases de DRR más allá de 'nbands' en c_cambio() con el bloqueo qdisc adquirido, gracias a Cong Wang. v2: cuando se encuentra una qdisc NULL en la lista activa de DRR, intente sacar de la cola a skb del siguiente elemento de la lista.
Gravedad CVSS v3.1: MEDIA
Última modificación:
06/01/2025

Vulnerabilidad en kernel de Linux (CVE-2021-47558)

Fecha de publicación:
24/05/2024
Idioma:
Español
En el kernel de Linux, se resolvió la siguiente vulnerabilidad: net: stmmac: Deshabilitar las colas de Tx al reconfigurar la interfaz Las colas de Tx no se deshabilitaron en situaciones en las que el controlador necesitaba detener la interfaz para aplicar una nueva configuración. Esto podría provocar un pánico en el kernel al realizar cualquiera de las 3 acciones siguientes: * reconfigurar el número de colas (ethtool -L) * reconfigurar el tamaño de los búferes circulares (ethtool -G) * instalar/eliminar un programa XDP (ip l set dev ethX xdp) Evite el pánico asegurándose de que se llame a netif_tx_disable al detener una interfaz. Sin este parche, se puede observar el siguiente pánico del kernel al realizar cualquiera de las acciones anteriores: No se puede manejar la solicitud de paginación del kernel en la dirección virtual ffff80001238d040 [....] Seguimiento de llamadas: dwmac4_set_addr+0x8/0x10 dev_hard_start_xmit+0xe4/0x1ac sch_direct_xmit+ 0xe8/0x39c __dev_queue_xmit+0x3ec/0xaf0 dev_queue_xmit+0x14/0x20 [...] [fin de seguimiento 0000000000000002]---
Gravedad CVSS v3.1: MEDIA
Última modificación:
18/09/2025