p PatchFirst

PatchFirst · Свежие уязвимости

Уязвимости linux · Страница 104

За последние 30 дней в linux опубликовано уязвимостей: 858; в каталоге KEV: 0.

Фильтры уязвимостей
Сбросить фильтры

Уязвимостей: 18304

  1. CVE-2026-89757

    Средний · CVSS 5.8EPSS 0,21%Есть исправление

    mm/mglru: fix and remove redundant unevictable folio handling

    In the Linux kernel, the following vulnerability has been resolved: mm/mglru: fix and remove redundant unevictable folio handling sort_folio() has a shortcut for moving folios that are no longer evictable but are still sitting on a generation list. However, this shortcut is buggy. It does not follow the PG_lru usage convention, and it has a more serious issue. Unevictable folios are not threaded on lists[LRU_UNEVICTABLE], so that folio->lru can be reused to hold folio->mlock_count (see the comment in lruvec_init()). Hence lruvec_add_folio() skips the list_add() for them, and every other place that turns a folio unevictable initialises m

    • Обновитесь до 6.12.115-2
    Опубликовано Обновлено
  2. CVE-2026-89756

    Низкий · CVSS 2EPSS 0,2%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  3. CVE-2026-89755

    Высокий · CVSS 7.8EPSS 0,16%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  4. CVE-2026-89753

    Без оценкиEPSS 0,18%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  5. CVE-2026-89752

    Без оценкиEPSS 0,18%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  6. CVE-2026-89751

    Без оценкиEPSS 0,17%Есть исправление

    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.

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  7. CVE-2026-89750

    Высокий · CVSS 7.8EPSS 0,16%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  8. CVE-2026-89749

    Без оценкиEPSS 0,22%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  9. CVE-2026-89747

    Высокий · CVSS 7.8EPSS 0,16%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  10. CVE-2026-89746

    Высокий · CVSS 7.8EPSS 0,16%Есть исправление

    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,

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  11. CVE-2026-89744

    Высокий · CVSS 8.4EPSS 0,14%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  12. CVE-2026-89743

    Высокий · CVSS 7.7EPSS 0,14%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  13. CVE-2026-89742

    Высокий · CVSS 7.8EPSS 0,16%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  14. CVE-2026-89741

    Высокий · CVSS 7.8EPSS 0,17%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  15. CVE-2026-89740

    Без оценкиEPSS 0,21%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  16. CVE-2026-89738

    Высокий · CVSS 7.8EPSS 0,19%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  17. CVE-2026-89736

    Высокий · CVSS 7.8EPSS 0,13%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  18. CVE-2026-89735

    Без оценкиEPSS 0,17%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  19. CVE-2026-89733

    Высокий · CVSS 7.8EPSS 0,17%Есть исправление

    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().

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено
  20. CVE-2026-89732

    Без оценкиEPSS 0,23%Есть исправление

    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

    • Обновитесь до 6.12.111-1
    Опубликовано Обновлено

Проверьте свой сервер

Сопоставьте установленный стек и версии со свежими базами уязвимостей.

Проверьте свой сервер →