Nixpkgs security tracker

Login with GitHub
⚠️ You are using a production deployment that is still only suitable for demo purposes. Any work done in this might be wiped later without notice.

Dismissed suggestions

These automatic suggestions were dismissed after initial triaging.

to select a suggestion for revision.

View:
Compact
Detailed
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
ntfs: add bounds check before accessing EA entries

In the Linux kernel, the following vulnerability has been resolved: ntfs: add bounds check before accessing EA entries in ntfs_ea_lookup and ntfs_listxattr, this verifies that there is enough space in the EA entry before accessing the next_entry_offset field of the EA entry.

Affected products

Linux
  • =<*
  • <7.1.5
  • <937282f7d15b593d0be765fa2ced164130ec87f7
  • =<7.1.*
  • <d9d9925de1d8f233cc60d3dc356e12f232f97c15
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
i2c: imx: Cancel hrtimer before clearing slave pointer

In the Linux kernel, the following vulnerability has been resolved: i2c: imx: Cancel hrtimer before clearing slave pointer In i2c_imx_unreg_slave(), the slave pointer is set to NULL after disabling interrupts. However, a pending interrupt might already have started the hrtimer (i2c_imx_slave_timeout) before the pointer was cleared. If the hrtimer fires after i2c_imx->slave is set to NULL, the timer callback i2c_imx_slave_finish_op() will call i2c_imx_slave_event() with a NULL slave pointer, which results in a use-after-free / NULL pointer dereference. Fix by canceling the hrtimer and waiting for it to complete after disabling interrupts, before clearing the slave pointer.

Affected products

Linux
  • <dab4762ee7f3fd0a01980d5407ba48d0261d3bff
  • <5.11
  • =<6.6.*
  • =<*
  • ==5.11
  • <a8a1f9ac3d763e721586f15479ef9140b216ddf3
  • =<6.18.*
  • =<6.12.*
  • <6ac7702b6cc2b94aaed9ef2d95bfbefcdc90061f
  • <753060f2b77ff2f386addbd3ecadb95b9f90cddd
  • =<7.1.*
  • <affd62f5719a78135b7441aa49c8cab3c3b5e838
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
ipv6: mcast: Fix potential UAF in MLD delayed work

In the Linux kernel, the following vulnerability has been resolved: ipv6: mcast: Fix potential UAF in MLD delayed work A race condition exists between device teardown and incoming MLD query processing, leading to a Use-After-Free in the MLD delayed work. During device destruction, the primary reference to inet6_dev is dropped, which can drop its refcount to 0. The actual freeing of inet6_dev memory is deferred via RCU. Concurrently, the packet receive path runs under RCU read lock and obtains the inet6_dev pointer. Because the memory is RCU-protected, CPU-0 can safely dereference inet6_dev even if its refcount has hit 0. However, if CPU-0 calls igmp6_event_query() and schedules delayed work, it attempts to acquire a reference using in6_dev_hold(). This increments the refcount from 0 to 1, triggering a "refcount_t: addition on 0" warning. Since the inet6_dev memory is still scheduled to be freed after the RCU grace period, the device is freed while the work is still scheduled. When the work runs, it accesses the freed memory, causing a kernel panic. Fix this by using refcount_inc_not_zero() (via a new helper in6_dev_hold_safe()) to prevent acquiring a reference if the device is already being destroyed. If the refcount is 0, we do not schedule the work.

Affected products

Linux
  • <0458ba1cda830ba4ccfcd9e19c0891438bcdbe4e
  • =<5.10.*
  • <f12b63ef26a035c5a29b3ef56401e38199010d4a
  • <9b26518b6896a16b809b1e42986f4ebac7bccc1e
  • =<6.6.*
  • =<*
  • =<6.1.*
  • <9ce741c22df4fd9546e30306317ac7df3607e48f
  • =<6.18.*
  • =<6.12.*
  • <2.6.12
  • <f03b0a45535d49bdab7e502efaacee205b2a7865
  • =<5.15.*
  • ==2.6.12
  • =<7.1.*
  • <0401d6cf7877c9be36652385dfcbf7f891b8b590
  • <ebbebf6cee950d7f1c81990256c0eae9e62572ae
  • <9815e834f5ff8b39e0ea9f0dbd532f4a3b8f0785
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
riscv: cacheinfo: Fix node reference leak in populate_cache_leaves

In the Linux kernel, the following vulnerability has been resolved: riscv: cacheinfo: Fix node reference leak in populate_cache_leaves Currently, the while loop drops the reference to prev in each iteration. If the loop terminates early due to a break, the final of_node_put(np) correctly drops the reference to the current node. However, if the loop terminates naturally because np == NULL, calling of_node_put(np) is a no-op. This leaves the last valid node stored in prev without its reference dropped, resulting in a node reference leak. Fix this by changing the final `of_node_put(np)` to `of_node_put(prev)`.

Affected products

Linux
  • <36e4843fe39ea2f17f4de6d59fba26271916c184
  • <f322955d9a1c344ed943752f05aacea7bc22e025
  • <51afb7da697b698996351740b4f39fb05ce2afd4
  • <2560c97f63bb99b26d9f19b23a4f66ea24c9dc14
  • =<6.6.*
  • =<*
  • ==5.0
  • <bf4a195f063b0a0805c1417f6aad1dd32ea48f0f
  • <880ac50b0bfae06d7ab5f1843253adfb86aa173a
  • <5.0
  • =<6.18.*
  • =<6.12.*
  • =<7.1.*
  • =<6.1.*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
fs: refuse O_TMPFILE creation with an unmapped fsuid or fsgid

In the Linux kernel, the following vulnerability has been resolved: fs: refuse O_TMPFILE creation with an unmapped fsuid or fsgid vfs_tmpfile() never checked that the caller's fsuid and fsgid map into the filesystem. On an idmapped mount whose idmapping does not cover the caller's fs{u,g}id, the ->tmpfile() instance initializes the new inode through inode_init_owner(), where mapped_fsuid()/mapped_fsgid() return INVALID_UID/INVALID_GID, and the tmpfile ends up owned by (uid_t)-1. Every other creation path already refuses this: may_o_create() (O_CREAT) and may_create_dentry() (mkdir, mknod, symlink, link) bail out with -EOVERFLOW via fsuidgid_has_mapping() precisely so that an object cannot be created with an owner the filesystem cannot represent. An O_TMPFILE is no exception: it is created I_LINKABLE and linkat(2) can splice it into the namespace afterwards, so the same guarantee must hold. Add the missing fsuidgid_has_mapping() check to vfs_tmpfile(). On a non-idmapped mount the caller's fs{u,g}id always map in the superblock's user namespace, so this is a no-op there and only takes effect on an idmapped mount that does not map the caller. It applies to every filesystem that sets FS_ALLOW_IDMAP and implements ->tmpfile() (tmpfs, ext4, btrfs, xfs, f2fs, ...), and to overlayfs, whose upper-layer tmpfile creation funnels through vfs_tmpfile() via backing_tmpfile_open().

Affected products

Linux
  • <503d0568a525b168d9aa5ca046ec72fc5477df84
  • =<6.6.*
  • =<*
  • <47e434da476b5a8bcd1e6e52ab03c5ee7764ee78
  • ==5.13
  • =<6.18.*
  • <a2038514e69371eb493083a6a897ed20fcbb8acb
  • =<6.12.*
  • =<7.1.*
  • <5.13
  • <539dce1144651f7976fa418e618b0b574bf15eeb
  • <bac8fb0d60254846f3b56957435dcd870ae12948
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
ntfs: validate index block header more strictly

In the Linux kernel, the following vulnerability has been resolved: ntfs: validate index block header more strictly Modify ntfs_index_block_inconsisent() to perform stricter validation of INDEX_HEADER geometry in INDX blocks, and update ntfs_lookup_inode_by_name() to use that function to validate INDX blocks.

Affected products

Linux
  • =<*
  • <7.1.5
  • =<7.1.*
  • <34a49b3e94a50f45b62c6e6f574f676a079ba23e
  • <14bc34fe948523dc2b0174691f9af9e74eb4f3fd
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Bluetooth: hci_sync: Fix advertising data UAFs

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_sync: Fix advertising data UAFs hci_find_adv_instance() returns an adv_info pointer that is valid only while hdev->lock is held. The advertising command-sync paths perform instance lookups without that lock and, in some cases, retain the pointer while waiting for a controller response. An advertising termination event can therefore interleave as follows: hci_cmd_sync_work hci_rx_work hci_find_adv_instance() __hci_cmd_sync_status() wait for controller reply hci_dev_lock() hci_remove_adv_instance() kfree(adv) adv->scan_rsp_changed = false KASAN reported: BUG: KASAN: slab-use-after-free in hci_set_ext_scan_rsp_data_sync+0x2e1/0x300 Write of size 1 at addr ffff88810a45d21d by task kworker/u17:0/88 Workqueue: hci0 hci_cmd_sync_work Call Trace: hci_set_ext_scan_rsp_data_sync+0x2e1/0x300 hci_schedule_adv_instance_sync+0x390/0x4c0 hci_cmd_sync_work+0x173/0x300 Allocated by task 87: hci_add_adv_instance+0x538/0xac0 add_advertising+0x885/0x1160 Freed by task 89: kfree+0x131/0x3c0 hci_remove_adv_instance+0x1d8/0x3b0 hci_le_ext_adv_term_evt+0x17b/0x730 Protect the instance lookup and payload construction in the extended advertising, scan response, and periodic advertising data paths. Snapshot the advertising parameters under hdev->lock, but release the lock before waiting for the controller. Clear advertising-data dirty bits before issuing their commands and restore them after a failure using a fresh lookup. Likewise, update the reported transmit power through a fresh lookup after the parameter command completes. No adv_info pointer then survives an HCI command wait.

Affected products

Linux
  • ==42fe380baaaccbe635c34ca07b29d19b9ec2498d
  • <5.17
  • =<*
  • ==5.17
  • <95cdcd8c82a501931fd3ae9b3811b0b6da167e94
  • =<6.18.*
  • <cdc36db204ffd97b947d64374cf23a210dc74777
  • <5.16
  • =<6.12.*
  • =<7.1.*
  • <eb1d8318764de7216e6dbba29a24d69f7ce51348
  • <b16ebdbebd2d37f4cdc590bc3e9db71fe90350a3
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net: enetc: check the number of BDs needed for xdp_frame

In the Linux kernel, the following vulnerability has been resolved: net: enetc: check the number of BDs needed for xdp_frame The size of xdp_redirect_arr array is ENETC_MAX_SKB_FRAGS. However, the number of fragments contained in xdp_frame may be greater than or equal to ENETC_MAX_SKB_FRAGS, which will cause the access to xdp_redirect_arr to be out of bounds.

Affected products

Linux
  • =<*
  • =<6.6.*
  • ==5.13
  • <f55276160ffad3e235b657ee4b7304eb99b90e5c
  • <1681cc7974a6123f5d5740b03bc11e4784bd2542
  • =<6.12.*
  • =<6.18.*
  • <cfbc6e9b84dcc0aa2d65c84ea4745af327763209
  • <5.13
  • =<6.1.*
  • <555c5475e787802eeae0d2b91c2f66c330db2767
  • =<7.1.*
  • <d22829101ab675607ad6c3d420fb3ab875f46bbb
  • <1ecb199b0e6d12ab6c26c0b7edf1a8f4472d9aed
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
KVM: x86: Cancel delayed I/O APIC EOI handling before destroying vCPUs

In the Linux kernel, the following vulnerability has been resolved: KVM: x86: Cancel delayed I/O APIC EOI handling before destroying vCPUs Cancel (and flush) the I/O APIC's delayed EOI handling work during the "pre VM destroy" phase, before vCPUs are destroyed, as processing the EOI broadcast will inject another IRQ if the line is asserted, i.e. will try to deliver an IRQ to the target vCPU(s). Canceling the work after vCPUs are destroyed leads to UAF if the delayed work is processed after vCPUs are destroyed. BUG: KASAN: slab-use-after-free in __kvm_irq_delivery_to_apic_fast+0x9bf/0xa20 arch/x86/kvm/lapic.c:1250 Read of size 8 at addr ffff8880499abea0 by task kworker/1:2/1218 CPU: 1 UID: 0 PID: 1218 Comm: kworker/1:2 Not tainted 7.1.0-rc7 #5 PREEMPT(lazy) Hardware name: QEMU Ubuntu 25.10 PC v2 (i440FX + PIIX, + 10.1 machine, 1996), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 Workqueue: events kvm_ioapic_eoi_inject_work Call Trace: <TASK> __dump_stack lib/dump_stack.c:94 dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 print_report+0x139/0x4ad mm/kasan/report.c:482 kasan_report+0xe4/0x1d0 mm/kasan/report.c:595 __kvm_irq_delivery_to_apic_fast+0x9bf/0xa20 arch/x86/kvm/lapic.c:1250 __kvm_irq_delivery_to_apic+0xd8/0xbf0 arch/x86/kvm/lapic.c:1345 kvm_irq_delivery_to_apic arch/x86/kvm/lapic.h:129 ioapic_service+0x308/0x590 arch/x86/kvm/ioapic.c:492 kvm_ioapic_eoi_inject_work+0x13c/0x190 arch/x86/kvm/ioapic.c:532 process_one_work+0xa59/0x19a0 kernel/workqueue.c:3314 process_scheduled_works kernel/workqueue.c:3397 worker_thread+0x5eb/0xe50 kernel/workqueue.c:3478 kthread+0x370/0x450 kernel/kthread.c:436 ret_from_fork+0x72b/0xd30 arch/x86/kernel/process.c:158 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 </TASK> Note, the VM is unreachable once kvm_destroy_vm() starts, and scheduling new work via kvm_ioapic_send_eoi() can only be done via KVM_RUN, i.e. requires a live vCPU. Alternatively, KVM could simply destroy the I/O APIC during the "pre" phase of VM destruction, but that gets more than a bit sketchy as KVM expects the I/O APIC to exist if ioapic_in_kernel() is true, and nested virtualization in particular has a bad habit of touching VM-scope state during vCPU destruction. E.g. attempting to free the PIC during the pre phase would lead to a NULL pointer dereference in kvm_cpu_has_extint(), and it's not hard to imagine the I/O APIC having a similar flaw.

Affected products

Linux
  • ==6.14
  • <9910e835580fef3bef53b70241dd00c4bffad693
  • =<*
  • <6.13
  • ==c60f5156e62d0be6c53373b623f16a9e37e2208e
  • <6.14
  • <ed56a6b58222f9c1f4115a0bd2788dd6ed6022e2
  • =<7.1.*
Dismissed
(max. allowed matches exceeded)
created 3 weeks, 4 days ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
liveupdate: fix TOCTOU race in luo_session_retrieve()

In the Linux kernel, the following vulnerability has been resolved: liveupdate: fix TOCTOU race in luo_session_retrieve() Extend the scope of the rwsem_read lock in luo_session_retrieve() to overlap with the acquisition of the session mutex. This prevents a concurrent thread from releasing and freeing the session between the lookup and the mutex lock.

Affected products

Linux
  • <d944170607b872a1f93713c555ad3f0efde3a9b8
  • =<*
  • ==6.19
  • =<7.1.*
  • <6.19
  • <d3ae9e7fddb4036f50003d7fa1ef52801fdb961b