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.

CVE-2025-68222

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> pinctrl: s32cc: fix uninitialized memory in s32_pinctrl_desc<br /> <br /> s32_pinctrl_desc is allocated with devm_kmalloc(), but not all of its<br /> fields are initialized. Notably, num_custom_params is used in<br /> pinconf_generic_parse_dt_config(), resulting in intermittent allocation<br /> errors, such as the following splat when probing i2c-imx:<br /> <br /> WARNING: CPU: 0 PID: 176 at mm/page_alloc.c:4795 __alloc_pages_noprof+0x290/0x300<br /> [...]<br /> Hardware name: NXP S32G3 Reference Design Board 3 (S32G-VNP-RDB3) (DT)<br /> [...]<br /> Call trace:<br /> __alloc_pages_noprof+0x290/0x300 (P)<br /> ___kmalloc_large_node+0x84/0x168<br /> __kmalloc_large_node_noprof+0x34/0x120<br /> __kmalloc_noprof+0x2ac/0x378<br /> pinconf_generic_parse_dt_config+0x68/0x1a0<br /> s32_dt_node_to_map+0x104/0x248<br /> dt_to_map_one_config+0x154/0x1d8<br /> pinctrl_dt_to_map+0x12c/0x280<br /> create_pinctrl+0x6c/0x270<br /> pinctrl_get+0xc0/0x170<br /> devm_pinctrl_get+0x50/0xa0<br /> pinctrl_bind_pins+0x60/0x2a0<br /> really_probe+0x60/0x3a0<br /> [...]<br /> __platform_driver_register+0x2c/0x40<br /> i2c_adap_imx_init+0x28/0xff8 [i2c_imx]<br /> [...]<br /> <br /> This results in later parse failures that can cause issues in dependent<br /> drivers:<br /> <br /> s32g-siul2-pinctrl 4009c240.pinctrl: /soc@0/pinctrl@4009c240/i2c0-pins/i2c0-grp0: could not parse node property<br /> s32g-siul2-pinctrl 4009c240.pinctrl: /soc@0/pinctrl@4009c240/i2c0-pins/i2c0-grp0: could not parse node property<br /> [...]<br /> pca953x 0-0022: failed writing register: -6<br /> i2c i2c-0: IMX I2C adapter registered<br /> s32g-siul2-pinctrl 4009c240.pinctrl: /soc@0/pinctrl@4009c240/i2c2-pins/i2c2-grp0: could not parse node property<br /> s32g-siul2-pinctrl 4009c240.pinctrl: /soc@0/pinctrl@4009c240/i2c2-pins/i2c2-grp0: could not parse node property<br /> i2c i2c-1: IMX I2C adapter registered<br /> s32g-siul2-pinctrl 4009c240.pinctrl: /soc@0/pinctrl@4009c240/i2c4-pins/i2c4-grp0: could not parse node property<br /> s32g-siul2-pinctrl 4009c240.pinctrl: /soc@0/pinctrl@4009c240/i2c4-pins/i2c4-grp0: could not parse node property<br /> i2c i2c-2: IMX I2C adapter registered<br /> <br /> Fix this by initializing s32_pinctrl_desc with devm_kzalloc() instead of<br /> devm_kmalloc() in s32_pinctrl_probe(), which sets the previously<br /> uninitialized fields to zero.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68223

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> drm/radeon: delete radeon_fence_process in is_signaled, no deadlock<br /> <br /> Delete the attempt to progress the queue when checking if fence is<br /> signaled. This avoids deadlock.<br /> <br /> dma-fence_ops::signaled can be called with the fence lock in unknown<br /> state. For radeon, the fence lock is also the wait queue lock. This can<br /> cause a self deadlock when signaled() tries to make forward progress on<br /> the wait queue. But advancing the queue is unneeded because incorrectly<br /> returning false from signaled() is perfectly acceptable.<br /> <br /> (cherry picked from commit 527ba26e50ec2ca2be9c7c82f3ad42998a75d0db)
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68224

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> scsi: core: Fix a regression triggered by scsi_host_busy()<br /> <br /> Commit 995412e23bb2 ("blk-mq: Replace tags-&gt;lock with SRCU for tag<br /> iterators") introduced the following regression:<br /> <br /> Call trace:<br /> __srcu_read_lock+0x30/0x80 (P)<br /> blk_mq_tagset_busy_iter+0x44/0x300<br /> scsi_host_busy+0x38/0x70<br /> ufshcd_print_host_state+0x34/0x1bc<br /> ufshcd_link_startup.constprop.0+0xe4/0x2e0<br /> ufshcd_init+0x944/0xf80<br /> ufshcd_pltfrm_init+0x504/0x820<br /> ufs_rockchip_probe+0x2c/0x88<br /> platform_probe+0x5c/0xa4<br /> really_probe+0xc0/0x38c<br /> __driver_probe_device+0x7c/0x150<br /> driver_probe_device+0x40/0x120<br /> __driver_attach+0xc8/0x1e0<br /> bus_for_each_dev+0x7c/0xdc<br /> driver_attach+0x24/0x30<br /> bus_add_driver+0x110/0x230<br /> driver_register+0x68/0x130<br /> __platform_driver_register+0x20/0x2c<br /> ufs_rockchip_pltform_init+0x1c/0x28<br /> do_one_initcall+0x60/0x1e0<br /> kernel_init_freeable+0x248/0x2c4<br /> kernel_init+0x20/0x140<br /> ret_from_fork+0x10/0x20<br /> <br /> Fix this regression by making scsi_host_busy() check whether the SCSI<br /> host tag set has already been initialized. tag_set-&gt;ops is set by<br /> scsi_mq_setup_tags() just before blk_mq_alloc_tag_set() is called. This<br /> fix is based on the assumption that scsi_host_busy() and<br /> scsi_mq_setup_tags() calls are serialized. This is the case in the UFS<br /> driver.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68225

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> lib/test_kho: check if KHO is enabled<br /> <br /> We must check whether KHO is enabled prior to issuing KHO commands,<br /> otherwise KHO internal data structures are not initialized.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68211

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> ksm: use range-walk function to jump over holes in scan_get_next_rmap_item<br /> <br /> Currently, scan_get_next_rmap_item() walks every page address in a VMA to<br /> locate mergeable pages. This becomes highly inefficient when scanning<br /> large virtual memory areas that contain mostly unmapped regions, causing<br /> ksmd to use large amount of cpu without deduplicating much pages.<br /> <br /> This patch replaces the per-address lookup with a range walk using<br /> walk_page_range(). The range walker allows KSM to skip over entire<br /> unmapped holes in a VMA, avoiding unnecessary lookups. This problem was<br /> previously discussed in [1].<br /> <br /> Consider the following test program which creates a 32 TiB mapping in the<br /> virtual address space but only populates a single page:<br /> <br /> #include <br /> #include <br /> #include <br /> <br /> /* 32 TiB */<br /> const size_t size = 32ul * 1024 * 1024 * 1024 * 1024;<br /> <br /> int main() {<br /> char *area = mmap(NULL, size, PROT_READ | PROT_WRITE,<br /> MAP_NORESERVE | MAP_PRIVATE | MAP_ANON, -1, 0);<br /> <br /> if (area == MAP_FAILED) {<br /> perror("mmap() failed\n");<br /> return -1;<br /> }<br /> <br /> /* Populate a single page such that we get an anon_vma. */<br /> *area = 0;<br /> <br /> /* Enable KSM. */<br /> madvise(area, size, MADV_MERGEABLE);<br /> pause();<br /> return 0;<br /> }<br /> <br /> $ ./ksm-sparse &amp;<br /> $ echo 1 &gt; /sys/kernel/mm/ksm/run <br /> <br /> Without this patch ksmd uses 100% of the cpu for a long time (more then 1<br /> hour in my test machine) scanning all the 32 TiB virtual address space<br /> that contain only one mapped page. This makes ksmd essentially deadlocked<br /> not able to deduplicate anything of value. With this patch ksmd walks<br /> only the one mapped page and skips the rest of the 32 TiB virtual address<br /> space, making the scan fast using little cpu.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68212

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> fs: Fix uninitialized &amp;#39;offp&amp;#39; in statmount_string()<br /> <br /> In statmount_string(), most flags assign an output offset pointer (offp)<br /> which is later updated with the string offset. However, the<br /> STATMOUNT_MNT_UIDMAP and STATMOUNT_MNT_GIDMAP cases directly set the<br /> struct fields instead of using offp. This leaves offp uninitialized,<br /> leading to a possible uninitialized dereference when *offp is updated.<br /> <br /> Fix it by assigning offp for UIDMAP and GIDMAP as well, keeping the code<br /> path consistent.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68213

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> idpf: fix possible vport_config NULL pointer deref in remove<br /> <br /> Attempting to remove the driver will cause a crash in cases where<br /> the vport failed to initialize. Following trace is from an instance where<br /> the driver failed during an attempt to create a VF:<br /> [ 1661.543624] idpf 0000:84:00.7: Device HW Reset initiated<br /> [ 1722.923726] idpf 0000:84:00.7: Transaction timed-out (op:1 cookie:2900 vc_op:1 salt:29 timeout:60000ms)<br /> [ 1723.353263] BUG: kernel NULL pointer dereference, address: 0000000000000028<br /> ...<br /> [ 1723.358472] RIP: 0010:idpf_remove+0x11c/0x200 [idpf]<br /> ...<br /> [ 1723.364973] Call Trace:<br /> [ 1723.365475] <br /> [ 1723.365972] pci_device_remove+0x42/0xb0<br /> [ 1723.366481] device_release_driver_internal+0x1a9/0x210<br /> [ 1723.366987] pci_stop_bus_device+0x6d/0x90<br /> [ 1723.367488] pci_stop_and_remove_bus_device+0x12/0x20<br /> [ 1723.367971] pci_iov_remove_virtfn+0xbd/0x120<br /> [ 1723.368309] sriov_disable+0x34/0xe0<br /> [ 1723.368643] idpf_sriov_configure+0x58/0x140 [idpf]<br /> [ 1723.368982] sriov_numvfs_store+0xda/0x1c0<br /> <br /> Avoid the NULL pointer dereference by adding NULL pointer check for<br /> vport_config[i], before freeing user_config.q_coalesce.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68214

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> timers: Fix NULL function pointer race in timer_shutdown_sync()<br /> <br /> There is a race condition between timer_shutdown_sync() and timer<br /> expiration that can lead to hitting a WARN_ON in expire_timers().<br /> <br /> The issue occurs when timer_shutdown_sync() clears the timer function<br /> to NULL while the timer is still running on another CPU. The race<br /> scenario looks like this:<br /> <br /> CPU0 CPU1<br /> <br /> lock_timer_base()<br /> expire_timers()<br /> base-&gt;running_timer = timer;<br /> unlock_timer_base()<br /> [call_timer_fn enter]<br /> mod_timer()<br /> ...<br /> timer_shutdown_sync()<br /> lock_timer_base()<br /> // For now, will not detach the timer but only clear its function to NULL<br /> if (base-&gt;running_timer != timer)<br /> ret = detach_if_pending(timer, base, true);<br /> if (shutdown)<br /> timer-&gt;function = NULL;<br /> unlock_timer_base()<br /> [call_timer_fn exit]<br /> lock_timer_base()<br /> base-&gt;running_timer = NULL;<br /> unlock_timer_base()<br /> ...<br /> // Now timer is pending while its function set to NULL.<br /> // next timer trigger<br /> <br /> expire_timers()<br /> WARN_ON_ONCE(!fn) // hit<br /> ...<br /> lock_timer_base()<br /> // Now timer will detach<br /> if (base-&gt;running_timer != timer)<br /> ret = detach_if_pending(timer, base, true);<br /> if (shutdown)<br /> timer-&gt;function = NULL;<br /> unlock_timer_base()<br /> <br /> The problem is that timer_shutdown_sync() clears the timer function<br /> regardless of whether the timer is currently running. This can leave a<br /> pending timer with a NULL function pointer, which triggers the<br /> WARN_ON_ONCE(!fn) check in expire_timers().<br /> <br /> Fix this by only clearing the timer function when actually detaching the<br /> timer. If the timer is running, leave the function pointer intact, which is<br /> safe because the timer will be properly detached when it finishes running.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68215

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> ice: fix PTP cleanup on driver removal in error path<br /> <br /> Improve the cleanup on releasing PTP resources in error path.<br /> The error case might happen either at the driver probe and PTP<br /> feature initialization or on PTP restart (errors in reset handling, NVM<br /> update etc). In both cases, calls to PF PTP cleanup (ice_ptp_cleanup_pf<br /> function) and &amp;#39;ps_lock&amp;#39; mutex deinitialization were missed.<br /> Additionally, ptp clock was not unregistered in the latter case.<br /> <br /> Keep PTP state as &amp;#39;uninitialized&amp;#39; on init to distinguish between error<br /> scenarios and to avoid resource release duplication at driver removal.<br /> <br /> The consequence of missing ice_ptp_cleanup_pf call is the following call<br /> trace dumped when ice_adapter object is freed (port list is not empty,<br /> as it is required at this stage):<br /> <br /> [ T93022] ------------[ cut here ]------------<br /> [ T93022] WARNING: CPU: 10 PID: 93022 at<br /> ice/ice_adapter.c:67 ice_adapter_put+0xef/0x100 [ice]<br /> ...<br /> [ T93022] RIP: 0010:ice_adapter_put+0xef/0x100 [ice]<br /> ...<br /> [ T93022] Call Trace:<br /> [ T93022] <br /> [ T93022] ? ice_adapter_put+0xef/0x100 [ice<br /> 33d2647ad4f6d866d41eefff1806df37c68aef0c]<br /> [ T93022] ? __warn.cold+0xb0/0x10e<br /> [ T93022] ? ice_adapter_put+0xef/0x100 [ice<br /> 33d2647ad4f6d866d41eefff1806df37c68aef0c]<br /> [ T93022] ? report_bug+0xd8/0x150<br /> [ T93022] ? handle_bug+0xe9/0x110<br /> [ T93022] ? exc_invalid_op+0x17/0x70<br /> [ T93022] ? asm_exc_invalid_op+0x1a/0x20<br /> [ T93022] ? ice_adapter_put+0xef/0x100 [ice<br /> 33d2647ad4f6d866d41eefff1806df37c68aef0c]<br /> [ T93022] pci_device_remove+0x42/0xb0<br /> [ T93022] device_release_driver_internal+0x19f/0x200<br /> [ T93022] driver_detach+0x48/0x90<br /> [ T93022] bus_remove_driver+0x70/0xf0<br /> [ T93022] pci_unregister_driver+0x42/0xb0<br /> [ T93022] ice_module_exit+0x10/0xdb0 [ice<br /> 33d2647ad4f6d866d41eefff1806df37c68aef0c]<br /> ...<br /> [ T93022] ---[ end trace 0000000000000000 ]---<br /> [ T93022] ice: module unloaded
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68216

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> LoongArch: BPF: Disable trampoline for kernel module function trace<br /> <br /> The current LoongArch BPF trampoline implementation is incompatible<br /> with tracing functions in kernel modules. This causes several severe<br /> and user-visible problems:<br /> <br /> * The `bpf_selftests/module_attach` test fails consistently.<br /> * Kernel lockup when a BPF program is attached to a module function [1].<br /> * Critical kernel modules like WireGuard experience traffic disruption<br /> when their functions are traced with fentry [2].<br /> <br /> Given the severity and the potential for other unknown side-effects, it<br /> is safest to disable the feature entirely for now. This patch prevents<br /> the BPF subsystem from allowing trampoline attachments to kernel module<br /> functions on LoongArch.<br /> <br /> This is a temporary mitigation until the core issues in the trampoline<br /> code for kernel module handling can be identified and fixed.<br /> <br /> [root@fedora bpf]# ./test_progs -a module_attach -v<br /> bpf_testmod.ko is already unloaded.<br /> Loading bpf_testmod.ko...<br /> Successfully loaded bpf_testmod.ko.<br /> test_module_attach:PASS:skel_open 0 nsec<br /> test_module_attach:PASS:set_attach_target 0 nsec<br /> test_module_attach:PASS:set_attach_target_explicit 0 nsec<br /> test_module_attach:PASS:skel_load 0 nsec<br /> libbpf: prog &amp;#39;handle_fentry&amp;#39;: failed to attach: -ENOTSUPP<br /> libbpf: prog &amp;#39;handle_fentry&amp;#39;: failed to auto-attach: -ENOTSUPP<br /> test_module_attach:FAIL:skel_attach skeleton attach failed: -524<br /> Summary: 0/0 PASSED, 0 SKIPPED, 1 FAILED<br /> Successfully unloaded bpf_testmod.ko.<br /> <br /> [1]: https://lore.kernel.org/loongarch/CAK3+h2wDmpC-hP4u4pJY8T-yfKyk4yRzpu2LMO+C13FMT58oqQ@mail.gmail.com/<br /> [2]: https://lore.kernel.org/loongarch/CAK3+h2wYcpc+OwdLDUBvg2rF9rvvyc5amfHT-KcFaK93uoELPg@mail.gmail.com/
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68217

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> Input: pegasus-notetaker - fix potential out-of-bounds access<br /> <br /> In the pegasus_notetaker driver, the pegasus_probe() function allocates<br /> the URB transfer buffer using the wMaxPacketSize value from<br /> the endpoint descriptor. An attacker can use a malicious USB descriptor<br /> to force the allocation of a very small buffer.<br /> <br /> Subsequently, if the device sends an interrupt packet with a specific<br /> pattern (e.g., where the first byte is 0x80 or 0x42),<br /> the pegasus_parse_packet() function parses the packet without checking<br /> the allocated buffer size. This leads to an out-of-bounds memory access.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025

CVE-2025-68218

Fecha de publicación:
16/12/2025
Idioma:
Inglés
*** Pendiente de traducción *** In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> nvme-multipath: fix lockdep WARN due to partition scan work<br /> <br /> Blktests test cases nvme/014, 057 and 058 fail occasionally due to a<br /> lockdep WARN. As reported in the Closes tag URL, the WARN indicates that<br /> a deadlock can happen due to the dependency among disk-&gt;open_mutex,<br /> kblockd workqueue completion and partition_scan_work completion.<br /> <br /> To avoid the lockdep WARN and the potential deadlock, cut the dependency<br /> by running the partition_scan_work not by kblockd workqueue but by<br /> nvme_wq.
Gravedad: Pendiente de análisis
Última modificación:
16/12/2025