p PatchFirst

PatchFirst · Vulnérabilités récentes

Vulnérabilités de linux · Page n° 103

Vulnérabilités publiées pour linux au cours des 30 derniers jours : 837. Présentes dans le catalogue KEV : 0.

Filtrer les vulnérabilités
Effacer les filtres

Vulnérabilités : 18281

  1. CVE-2026-89756

    Faible · CVSS 2EPSS 0,2%Correctif disponible

    mm/migrate: report RCU-tasks quiescent states in migrate_pages_batch()

    In the Linux kernel, the following vulnerability has been resolved: mm/migrate: report RCU-tasks quiescent states in migrate_pages_batch() migrate_pages_batch() unmaps each folio before moving it, and every unmap runs the mmu_notifier invalidate callbacks. On KVM hosts try_to_migrate() ends up in kvm_mmu_notifier_invalidate_range_start() -> tdp_mmu_zap_leafs(), which is expensive, so unmapping a large batch keeps the CPU busy for a long time. The loop already calls cond_resched(), but on PREEMPTION kernels that is a no-op, and involuntary preemption is not a Tasks-RCU quiescent state. A long batch therefore never reports a quiescent stat

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  2. CVE-2026-89755

    Élevée · CVSS 7.8EPSS 0,16%Correctif disponible

    mm/migrate_device: clear stale mapping after freeing swapcache

    In the Linux kernel, the following vulnerability has been resolved: mm/migrate_device: clear stale mapping after freeing swapcache __migrate_device_pages() reads the folio mapping before calling folio_free_swap(). When folio_free_swap() succeeds, the folio is removed from the swap cache, but the saved mapping still points to swap_space. Passing the stale mapping to folio_migrate_mapping() makes it use the mapped-folio path for a folio that is no longer in swapcache. It can then operate on swap_space.i_pages with invalid reference accounting, eventually triggering a folio reference count BUG. After a successful split, nr still contains t

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  3. CVE-2026-89753

    Non évaluéeEPSS 0,18%Correctif disponible

    mm/vmscan: report RCU-tasks quiescent states in shrink_lruvec()

    In the Linux kernel, the following vulnerability has been resolved: mm/vmscan: report RCU-tasks quiescent states in shrink_lruvec() I am seeing some rcu_tasks stalls in the Meta fleet during reclaim. INFO: rcu_tasks detected stalls on tasks: 0000000088620d09: .. nvcsw: 6735/6735 holdout: 1 idle_cpu: -1/8 task:GlobalCPUThread state:R running task pid:2552016 tgid:2524552 Call Trace: shrink_lruvec mem_cgroup_iter shrink_node do_try_to_free_pages try_to_free_pages __alloc_frozen_pages_noprof alloc_pages_noprof pte_alloc_one __pte_alloc handle_mm_fault Nothing promises direct reclaim returns in bounded ti

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  4. CVE-2026-89752

    Non évaluéeEPSS 0,18%Correctif disponible

    mm: memcg: stop reclaim when a limit update is superseded

    In the Linux kernel, the following vulnerability has been resolved: mm: memcg: stop reclaim when a limit update is superseded kernfs serializes file operations only per open file, so separate open files can update the same memory.high or memory.max file concurrently. Both handlers store the new limit before synchronous reclaim, but continue to use the writer's local target in the reclaim loop. If another writer raises or removes the limit, the first writer can continue reclaiming toward a stale target. For memory.max, this can leave the writer looping indefinitely once reclaim retries are exhausted. The OOM path sees sufficient margin u

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  5. CVE-2026-89751

    Non évaluéeEPSS 0,17%Correctif disponible

    x86/tdx: Fix off-by-one in port I/O handling

    In the Linux kernel, the following vulnerability has been resolved: x86/tdx: Fix off-by-one in port I/O handling handle_in() and handle_out() in arch/x86/coco/tdx/tdx.c use: u64 mask = GENMASK(BITS_PER_BYTE * size, 0); GENMASK(h, l) includes bit h. For size=1 (INB), this produces GENMASK(8, 0) = 0x1FF (9 bits) instead of GENMASK(7, 0) = 0xFF (8 bits). The mask is one bit too wide for all I/O sizes. Fix the mask calculation.

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  6. CVE-2026-89750

    Élevée · CVSS 7.8EPSS 0,16%Correctif disponible

    tracing/user_events: Clear copied tracing state before fork duplication

    In the Linux kernel, the following vulnerability has been resolved: tracing/user_events: Clear copied tracing state before fork duplication dup_task_struct() copies user_event_mm from the parent into the child, without grabbing a reference to it. user_event_mm_dup() should replace it, but it leaves that copied pointer unmodified if user_event_mm_alloc() fails. When the child exits, user_event_mm_remove() decrements a reference the child never owned, which ultimately frees user_event_mm, while the parent still as a stale pointer to it. This creates a UAF, which KASAN reports as: BUG: KASAN: slab-use-after-free in current_user_event

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  7. CVE-2026-89749

    Non évaluéeEPSS 0,22%Correctif disponible

    tracing: Fix crash passing ERR_PTR to kthread_stop()

    In the Linux kernel, the following vulnerability has been resolved: tracing: Fix crash passing ERR_PTR to kthread_stop() event_test_stuff() calls kthread_run() and unconditionally passes the returned task_struct pointer to kthread_stop(). kthread_run() returns an error pointer such as ERR_PTR(-ENOMEM) when kthread creation fails, for example under memory pressure during the boot-time event self-test. kthread_stop() then dereferences the invalid pointer, crashing the kernel. Check the result of kthread_run() before passing it to kthread_stop(). Use WARN_ON() so that a failure to create the self-test thread does not go unnoticed, matching th

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  8. CVE-2026-89747

    Élevée · CVSS 7.8EPSS 0,16%Correctif disponible

    tracing: Fix use-after-free in trace_pipe read on sub-buffer order change

    In the Linux kernel, the following vulnerability has been resolved: tracing: Fix use-after-free in trace_pipe read on sub-buffer order change Writing to buffer_subbuf_size_kb calls ring_buffer_subbuf_order_set(), which frees every sub-buffer of the ring buffer, including the reader page, and replaces them with newly allocated ones. Readers of trace_pipe hold pointers into those pages. ring_buffer_peek() looks up an event under cpu_buffer->reader_lock but returns the event pointer after dropping the lock, and peek_next_entry() then calls ring_buffer_event_length() and ring_buffer_event_data() on it. If the sub-buffer order is changed in tha

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  9. CVE-2026-89746

    Élevée · CVSS 7.8EPSS 0,16%Correctif disponible

    tracing: Fix use-after-free with same-name named triggers

    In the Linux kernel, the following vulnerability has been resolved: tracing: Fix use-after-free with same-name named triggers When two hist triggers on different events are registered with the same name=, the second one reuses the first as named_data. Both are added to tr->hist_vars by save_hist_vars() during event_hist_trigger_parse(), because save_hist_vars() is called before event_trigger_register() while the named reuse is only detected later, in hist_register_trigger(). In the named-data branch hist_register_trigger() then frees the second histogram's hist_data via destroy_hist_data(), but never removes its tr->hist_vars list entry,

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  10. CVE-2026-89744

    Élevée · CVSS 8.4EPSS 0,14%Correctif disponible

    device property: fix infinite loop in fwnode_for_each_child_node()

    In the Linux kernel, the following vulnerability has been resolved: device property: fix infinite loop in fwnode_for_each_child_node() When iterate over children of a fwnode that has a secondary fwnode, fwnode_get_next_child_node() can enter an infinite loop if the secondary fwnode has more than one child. Parent Child (Primary fwnode) FWa: {FWa1, FWa2, FWa3} (Secondary fwnode) FWb: {FWb1, FWb2} In this case: ┌─> fwnode_get_next_child_node(FWa, FWa1) │ - fwnode_call_ptr_op(FWa, get_next_child_node, FWa1) returns FWa2 │ │ ... │ │ fwnode_get_next_child_node(FWa, FWa3) │ - fwn

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  11. CVE-2026-89743

    Élevée · CVSS 7.7EPSS 0,14%Correctif disponible

    misc: nsm: bound the device-reported response length

    In the Linux kernel, the following vulnerability has been resolved: misc: nsm: bound the device-reported response length nsm_sendrecv_msg_locked() stores the virtqueue used-ring length reported by the NSM device into msg->resp.len without bounding it to the response buffer. A malicious or buggy backend can report a length larger than the response buffer; parse_resp_raw() then copies that many bytes out of the fixed buffer to user space, disclosing adjacent kernel heap (an out-of-bounds read). The request path already floors its length in fill_req_raw(); the response path lacks the symmetric check. Clamp the stored length to the size of the

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  12. CVE-2026-89742

    Élevée · CVSS 7.8EPSS 0,16%Correctif disponible

    rapidio: mport_cdev: fix use-after-free in dma_req_free()

    In the Linux kernel, the following vulnerability has been resolved: rapidio: mport_cdev: fix use-after-free in dma_req_free() dma_req_free() acquires buf_mutex through req->map, drops the mapping reference with kref_put(), and then dereferences req->map again to unlock the mutex. If kref_put() drops the last reference, mport_release_mapping() frees the mapping, and the subsequent mutex_unlock() dereferences a freed object. This is a use-after-free. Fix this by caching map and md before kref_put(), clearing req->map while holding buf_mutex, and using the cached md for mutex unlocking. The bug is reachable from userspace via the RapidIO m

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  13. CVE-2026-89741

    Élevée · CVSS 7.8EPSS 0,17%Correctif disponible

    Revert "media: v4l2-dev: fix error handling in __video_register_device()"

    In the Linux kernel, the following vulnerability has been resolved: Revert "media: v4l2-dev: fix error handling in __video_register_device()" This reverts commit 2a934fdb01db6458288fc9386d3d8ceba6dd551a. The intentions of that patch were good, but it doesn't work. The idea is that if device_register fails, you have to do a put_device to let the ref counter release resources. However, the V4L2 API says that if video_register_device() fails, then you have to call video_device_release(), which kfree()s the video_device struct. But the put_device() will already have freed the struct, so you end up in a double-free scenario. There is not re

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  14. CVE-2026-89740

    Non évaluéeEPSS 0,21%Correctif disponible

    serial: imx: serialize imx_uart_ports[] lifetime

    In the Linux kernel, the following vulnerability has been resolved: serial: imx: serialize imx_uart_ports[] lifetime imx_uart_probe() publishes its devm-allocated port in imx_uart_ports[] before uart_add_one_port() because console setup uses the table. The entry is not cleared when adding the port fails or after removal, leaving a dangling pointer. A sibling probe can register the shared console through that stale entry. This was reproduced under KASAN on QEMU mcimx6ul-evk by unbinding a sibling UART, unbinding the console UART and rebinding the sibling. Keep the entry valid through uart_remove_one_port(), then clear it. Protect port addi

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  15. CVE-2026-89738

    Élevée · CVSS 7.8EPSS 0,19%Correctif disponible

    usb: gadget: at91_udc: drain polled-VBUS timer/work before udc is freed

    In the Linux kernel, the following vulnerability has been resolved: usb: gadget: at91_udc: drain polled-VBUS timer/work before udc is freed In polled-VBUS mode (board.vbus_pin && board.vbus_polled), probe arms a self-restarting cycle: at91_vbus_timer() schedules vbus_timer_work, and at91_vbus_timer_work() calls at91_vbus_update() and re-arms the timer via mod_timer(). Both recover the same udc through container_of and dereference it on every iteration. Neither teardown path cancels this cycle. udc is devm-allocated, so it is freed after at91udc_remove() returns, and is likewise freed when probe fails and devres runs. A timer callback or wo

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  16. CVE-2026-89736

    Élevée · CVSS 7.8EPSS 0,13%Correctif disponible

    usb: gadget: u_audio: Fix use-after-free on sound card disconnect

    In the Linux kernel, the following vulnerability has been resolved: usb: gadget: u_audio: Fix use-after-free on sound card disconnect g_audio_cleanup() invokes snd_card_free_when_closed() to initiate sound card teardown and immediately frees the underlying struct snd_uac_chip context. However, snd_card_free_when_closed() returns asynchronously while ALSA control elements (kctls) remain open in userspace. When userspace control applications access or close these open file descriptors, kctl callbacks attempt to dereference kctl->private_data pointing to &uac->c_prm or &uac->p_prm within the freed uac structure, resulting in a use-after-free

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  17. CVE-2026-89735

    Non évaluéeEPSS 0,17%Correctif disponible

    usb: gadget: midi2: remove default configfs groups on teardown

    In the Linux kernel, the following vulnerability has been resolved: usb: gadget: midi2: remove default configfs groups on teardown f_midi2_alloc_inst() creates default configfs child groups for the default endpoint and default block using configfs_add_default_group(), setting their internal refcount to 1. However, during function teardown in f_midi2_free_inst() or EP cleanup in f_midi2_ep_opts_release(), configfs_remove_default_groups() is never called, therefore never dropping the refcount and leaking struct f_midi2_ep_opts and f_midi2_block_opts. Add the missing configfs_remove_default_groups() in the afformentioned functions to free th

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  18. CVE-2026-89733

    Élevée · CVSS 7.8EPSS 0,17%Correctif disponible

    usb: gadget: uvc: fix dangling pointers in uvc_function_bind() and uvc_function_unbind()

    In the Linux kernel, the following vulnerability has been resolved: usb: gadget: uvc: fix dangling pointers in uvc_function_bind() and uvc_function_unbind() In uvc_function_bind() error path, we use usb_ep_free_request which uses uvc->control_req but does not set it to NULL afterwards. Thus, uvc->control_req is a dangling pointer causing a UAF. Also we do not set the uvc->control_buf pointer to NULL after freeing it, which is another dangling pointer. Fix it by setting uvc->control_req to NULL after we run usb_ep_free_request() and uvc->control_buf to NULL after kfree. Do the same for uvc_function_unbind().

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  19. CVE-2026-89732

    Non évaluéeEPSS 0,23%Correctif disponible

    usb: gadget: f_fs: Prevent deadlock during ep0 read loop

    In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_fs: Prevent deadlock during ep0 read loop Currently, ffs_ep0_read() holds ffs->mutex when it prepares to go to sleep waiting for an event. When no setup events are pending, it calls wait_event_interruptible_exclusive_locked_irq() with the mutex still held. The wait macro deliberately drops the waitqueue spinlock before sleeping but does not drop the mutex. If a userspace daemon is polling ep0 via read() and the gadget is asynchronously torn down via configfs (e.g., echo "" > UDC), a deadlock can occur: 1. The configfs teardown calls functionfs_unbind(), whi

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour
  20. CVE-2026-89731

    Élevée · CVSS 7.1EPSS 0,16%Correctif disponible

    cxl/ras: Fix cxl_rch_get_aer_info() out-of-bounds AER register read

    In the Linux kernel, the following vulnerability has been resolved: cxl/ras: Fix cxl_rch_get_aer_info() out-of-bounds AER register read cxl_rch_get_aer_info() copies the RCH Downstream Port AER capability from the RCRB MMIO block using a readl() loop bounded by sizeof(struct aer_capability_regs). This struct is a software layout and its embedded struct pcie_tlp_log is larger than the on-wire AER capability. As a result the loop reads past the mapped AER register block. The over-read also populates the software-only tail fields including header_log.header_len. An out-of-range header_len passed to pcie_print_tlp_log() can then loop past the

    • Mettez à jour vers 6.12.111-1
    Publication Mise à jour

Vérifiez votre serveur

Comparez votre pile et les versions installées aux bases de vulnérabilités actuelles.

Vérifiez votre serveur →