Nixpkgs security tracker

Login with GitHub

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 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
ksmbd: track the connection owning a byte-range lock

In the Linux kernel, the following vulnerability has been resolved: ksmbd: track the connection owning a byte-range lock SMB2_LOCK adds each granted byte-range lock to both the file lock list and the lock list of the connection which handled the request. The final close and durable handle paths, however, remove the connection list entry while holding fp->conn->llist_lock. With SMB3 multichannel, the connection handling the LOCK request can be different from the connection which opened the file. The entry can therefore be removed under a different spinlock from the one protecting the list it belongs to. A concurrent traversal can then access freed struct ksmbd_lock and struct file_lock objects. Record the connection owning each lock's clist entry and hold a reference to it while the entry is linked. Use that connection and its llist_lock for unlock, rollback, close, and durable preserve. Durable reconnect assigns the new connection as the owner when publishing the locks again.

Affected products

Linux
  • <ea5c9bf99f626a15cc59f645dc895f2b3f01992e
  • <22d38cf75b556c20b039743bdf3654d535b858be
  • <5fecc15a30cb9ebd310f7b52c1ab607edcea78f6
  • =<6.18.*
  • <5.15
  • =<6.12.*
  • =<7.1.*
  • <66eb3643164e5e1029907793926c132f8b5c6148
  • <427faaa52b0b399940c1a88065a5c310d10dad15
  • <c1016dd1d8b2bcd1158bbaabe94a31bb7e7431fb
  • ==5.15
  • =<6.1.*
  • =<6.6.*
  • =<5.15.*
  • =<*
  • <fe20d492a69a6f79e637f438072b212e21ed3b78
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
smb: client: fix query directory replay double-free

In the Linux kernel, the following vulnerability has been resolved: smb: client: fix query directory replay double-free A response-bearing attempt can return a replayable error and free its response buffer. If SMB2_query_directory_init() fails before the next send, cleanup retains the previous buffer type and frees that response again. Reset response bookkeeping before each attempt to prevent the stale free.

Affected products

Linux
  • <3317a5d015fca976475aa71df224056777316fde
  • <9647492b5e41954be59d5157eddbcd4cdc1656f7
  • <6.8
  • =<6.18.*
  • <1665f25b1dea30bf2d02e16245d203a944c9d994
  • =<6.12.*
  • <6.6.145
  • =<7.1.*
  • ==6.8
  • =<6.6.*
  • =<*
  • <3409aedf3c81a810243da94164f6621c9d205c98
  • <00b0fa425941438b664950a8ee65dfba2def4336
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
USB: legousbtower: fix use-after-free on disconnect race

In the Linux kernel, the following vulnerability has been resolved: USB: legousbtower: fix use-after-free on disconnect race mutex_unlock() may access the mutex structure after releasing the lock and therefore cannot be used to manage lifetime of objects directly (unlike spinlocks and refcounts). [1][2] Use a kref to release the driver data to avoid use-after-free in mutex_unlock() when release() races with disconnect(). [1] a51749ab34d9 ("locking/mutex: Document that mutex_unlock() is non-atomic") [2] 2b9d9e0a9ba0 ("locking/mutex: Clarify that mutex_unlock(), and most other sleeping locks, can still use the lock object after it's unlocked")

Affected products

Linux
  • <b4222c05066b252b451f9c8c4730b5b60824ea66
  • =<5.10.*
  • <ab2bfd7bec4f134b377ec42f513e90c35db94160
  • =<6.18.*
  • <2.6.25
  • <766738ecf2b819e54d38763c8d1c8ae6cff14b39
  • =<5.15.*
  • =<6.12.*
  • =<7.1.*
  • =<6.1.*
  • =<*
  • <62fc8eb1b1481051f7bab4aa93d79809053dd09f
  • ==2.6.25
  • <9ba62966461a8e3cc593b62c56ec62eb2d80436d
  • <0b57e5ddbd89df3bc367463de3d2ca66f99a1a5e
  • =<6.6.*
  • <6462de75d2e370c7e74dcfb7b4ae79eb5a6a55ee
  • <11d069f85851997b4ea0adf242ed9672dc749b8f
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
crypto: qat - fix VF2PF work teardown race in adf_disable_sriov()

In the Linux kernel, the following vulnerability has been resolved: crypto: qat - fix VF2PF work teardown race in adf_disable_sriov() The VF2PF interrupt handler queues PF-side response work that stores a raw pointer to per-VF state (struct adf_accel_vf_info). Currently, adf_disable_sriov() destroys per-VF mutexes and frees vf_info without stopping new VF2PF work or waiting for in-flight workers to complete. A concurrently scheduled or already queued worker can then dereference freed memory. This manifests as a use-after-free when KASAN is enabled: BUG: KASAN: null-ptr-deref in mutex_lock+0x76/0xe0 Write of size 8 at addr 0000000000000260 by task kworker/24:2/... Workqueue: qat_pf2vf_resp_wq adf_iov_send_resp [intel_qat] Call Trace: kasan_report+0x119/0x140 mutex_lock+0x76/0xe0 adf_gen4_pfvf_send+0xd4/0x1f0 [intel_qat] adf_recv_and_handle_vf2pf_msg+0x290/0x360 [intel_qat] adf_iov_send_resp+0x8c/0xe0 [intel_qat] process_one_work+0x6ac/0xfd0 worker_thread+0x4dd/0xd30 kthread+0x326/0x410 ret_from_fork+0x33b/0x670 Add a PF-local flag, vf2pf_disabled, that gates work queueing, worker processing, and interrupt re-enabling during teardown. Set this flag atomically with the hardware interrupt mask inside adf_disable_all_vf2pf_interrupts(). After masking, synchronize the AE cluster MSI-X interrupt and flush the PF response workqueue before tearing down per-VF locks and state so all in-flight work completes before vf_info is destroyed. Introduce adf_enable_all_vf2pf_interrupts() to clear the flag and unmask all VF2PF interrupts under the same lock when SR-IOV is re-enabled. This ensures the software flag and hardware state transition atomically on both the enable and disable paths.

Affected products

Linux
  • <5d916c1eae1933511a69bffe243b4ee5d7da399c
  • <4.3
  • =<6.18.*
  • <6e92b28cd74fa433658efeadf21b9d4b01023d7d
  • ==4.3
  • <f344a369d0380d54c8d6c8d24734a78dd5a89817
  • =<6.12.*
  • <51144032248cc4ea22917370565650670b8b4e9b
  • =<7.1.*
  • <446b4d77599cf1a168573f7fb32a4a6aa4f09219
  • <277281c10c63791067d24d421f7c43a15faa9096
  • <218c2836b3987f3fa1d9eac505462cded0821e4c
  • =<6.1.*
  • =<6.6.*
  • =<*
  • =<5.15.*
  • <49cd5ac6de8de39a14ead609bb552d372d5602cd
  • =<5.10.*
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net/mlx5e: Fix eswitch mode block underflow on IPsec acquire SA

In the Linux kernel, the following vulnerability has been resolved: net/mlx5e: Fix eswitch mode block underflow on IPsec acquire SA mlx5e_xfrm_add_state() handles acquire-flow temporary SAs by allocating software state and skipping hardware offload setup. That path jumps to the common success label before taking the eswitch mode block. After tunnel-mode validation was moved earlier, the common success label unconditionally calls mlx5_eswitch_unblock_mode(). For acquire SAs, this decrements esw->offloads.num_block_mode without a matching increment. Return directly after installing the acquire SA offload handle, so only the paths that successfully called mlx5_eswitch_block_mode() call the matching unblock.

Affected products

Linux
  • <6.18
  • <ecafd8284e527666e83261e6e57a7c7341d591cb
  • <6.18
  • ==993c4ba71596c30418ba5a0ddcf4f9c2f431466a
  • =<6.18.*
  • =<7.0.*
  • ==6.18
  • <b5bd4249e430f5963d559708ee96a671716d2400
  • =<*
  • <abe003b33223ff33552f291644bf35d9c2f992fb
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
USB: ulpi: fix memory leak on registration failure

In the Linux kernel, the following vulnerability has been resolved: USB: ulpi: fix memory leak on registration failure The allocated device name is never freed on early ULPI device registration failures. Fix this by initialising the device structure earlier and releasing the initial reference whenever registration fails.

Affected products

Linux
  • ==4.2
  • <4.2
  • =<6.18.*
  • <d5b32f36c50894ac2df8fa184e6f35f3a6665ecd
  • <88187a43135c79d0e43573b4d8f880bbb919eceb
  • <e5493c9a98ffe083acf13ac064828ae598ba3c16
  • =<5.15.*
  • =<6.12.*
  • =<7.1.*
  • <8af6812795869a66e9b26044f455b13deecdb69c
  • =<6.1.*
  • =<*
  • =<6.6.*
  • <624c57147df1977e0d3da53f1da7117861b9cf19
  • <5c098f20f15db7f9126129686d1c6da2ce8bbeb0
  • <691e61e5d4cfc5a1b061e937f8cbf2126bfc19a0
  • =<5.10.*
  • <1967a7f0cd5c08eb479196daa5aaa4b7b7a7bd04
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
NTB: epf: Avoid calling pci_irq_vector() from hardirq context

In the Linux kernel, the following vulnerability has been resolved: NTB: epf: Avoid calling pci_irq_vector() from hardirq context ntb_epf_vec_isr() calls pci_irq_vector() in hardirq context to derive the vector number. pci_irq_vector() calls msi_get_virq() that takes a mutex and can therefore trigger "scheduling while atomic" splats: BUG: scheduling while atomic: kworker/u33:0/55/0x00010001 ... Call trace: ... schedule+0x38/0x110 schedule_preempt_disabled+0x28/0x50 __mutex_lock.constprop.0+0x848/0x908 __mutex_lock_slowpath+0x18/0x30 mutex_lock+0x4c/0x60 msi_domain_get_virq+0xe8/0x138 pci_irq_vector+0x2c/0x60 ntb_epf_vec_isr+0x28/0x120 [ntb_hw_epf] __handle_irq_event_percpu+0x70/0x3a8 handle_irq_event+0x48/0x100 handle_edge_irq+0x100/0x1c8 ... Cache the Linux IRQ number for vector 0 when vectors are allocated and use it as a base in the ISR. Running the ISR in a threaded IRQ handler would also avoid the problem, but that would be unnecessary here.

Affected products

Linux
  • <1dba8444ac0100133d72374634f6d7451fff1ccc
  • ==5.12
  • <174a97f21bf9c54fa37ec0f321692e862ea130a3
  • <5.12
  • =<6.18.*
  • <33bba331a4a5fee8b6026fe72eca13cceeec1b7b
  • =<6.12.*
  • <6350df503897d57c5634f71b0767d48c3b837583
  • <4dcddc1c794d1c65eda68f1f8dd04a0fecc0870f
  • =<7.1.*
  • =<6.1.*
  • =<*
  • =<6.6.*
  • =<5.15.*
  • <aff271b12a1eb8c8b3da19223ae1a6abe1e8168b
  • <f71e8d9875069fa73e335f63f02ec6e52e3aaa51
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
iio: accel: kxsd9: fix runtime PM imbalance on write_raw() error

In the Linux kernel, the following vulnerability has been resolved: iio: accel: kxsd9: fix runtime PM imbalance on write_raw() error kxsd9_write_raw() takes a runtime PM reference with pm_runtime_get_sync() but returns -EINVAL directly when a scale with a non-zero integer part is requested, skipping the matching pm_runtime_put_autosuspend(). This leaks a runtime PM usage-counter reference on every such write, after which the device can no longer autosuspend. Set the error code and fall through to the existing put instead of returning early.

Affected products

Linux
  • <191fcfeb729ededd8dd2a999c6bf351ddfa0cec7
  • =<6.18.*
  • <a93fd69c1ab0854ac4f5b8439c26dfadb25dfd20
  • <44a5fd874bb6873bdaec59f722c1d57832fbc9df
  • <13a91e8631cfeb68e5b7fd6687f194f5a86e83fe
  • <eeece4a85ece6f3837c75ef26a9b2bf5a1d0fcfc
  • =<5.15.*
  • <36154171385a8a2444a4b3c6eaa0c5294cb02478
  • =<6.12.*
  • =<7.1.*
  • <6293211d142605bec435229ef0aa3668b8964164
  • <4.9
  • =<6.1.*
  • ==4.9
  • =<6.6.*
  • <223703d6e8bed50b6a0b47e160877909518d94b9
  • =<*
  • =<5.10.*
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
cpufreq: Fix hotplug-suspend race during reboot

In the Linux kernel, the following vulnerability has been resolved: cpufreq: Fix hotplug-suspend race during reboot During system reboot, cpufreq_suspend() is called via the kernel_restart() -> device_shutdown() path. Unlike the normal system suspend path, the reboot path does not call freeze_processes(), so userspace processes and kernel threads remain active. This allows CPU hotplug operations to run concurrently with cpufreq_suspend(). The original code has no synchronization with CPU hotplug, leading to a race condition where governor_data can be freed by the hotplug path while cpufreq_suspend() is still accessing it, resulting in a null pointer dereference: Unable to handle kernel NULL pointer dereference Call Trace: do_kernel_fault+0x28/0x3c cpufreq_suspend+0xdc/0x160 device_shutdown+0x18/0x200 kernel_restart+0x40/0x80 arm64_sys_reboot+0x1b0/0x200 Fix this by adding cpus_read_lock()/cpus_read_unlock() to cpufreq_suspend() to block CPU hotplug operations while suspend is in progress. [ rjw: Changelog edits ]

Affected products

Linux
  • <6d5dd354c37abaf4d60400c55c71f23ba2b33639
  • =<7.1.*
  • =<6.1.*
  • =<5.15.*
  • =<5.10.*
  • <a9029dd55696c651ee46912afa2a166fa456bb3e
  • <4.20
  • <73255d702c7560185fd5951aadcf7eb057c2f453
  • ==8bfa06ea6e81bf08d2132d7e70c2b5313b34caf8
  • <5.4
  • <cd4524ff6567fa4458a5bec4b017105e671d393e
  • <4.5
  • <5.4
  • ==cb4b4601f910c78d2b49f637a12ef98b41cb76a9
  • <9103078c7b3091a2fbb52af176f95982ee7dd7f8
  • ==5f466713989250938624afa79dc33bae20920700
  • ==89ab39da1452d272007acc5912d4008047b86706
  • <4.10
  • <4.15
  • <a0106b41f9a724868d390b8b3b4ea5ca0e04ea53
  • ==7ccf3b8b7a12dc9da158c2e699c36d04b2496944
  • =<6.6.*
  • =<6.18.*
  • ==5.4
  • =<6.12.*
  • <6e175c00c62dca3d91b987015808b5d52e8db2b4
  • =<*
  • <a0ef2fc89d28ca62923376c4b8ffaa57136a36be
Dismissed
(max. allowed matches exceeded)
created 20 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
usb: free iso schedules on failed submit

In the Linux kernel, the following vulnerability has been resolved: usb: free iso schedules on failed submit EHCI and FOTG210 isochronous submits build an ehci_iso_sched before linking the URB to the endpoint queue, and keep the staged schedule in urb->hcpriv until iso_stream_schedule() and the link helpers consume it. If the controller is no longer accessible, or usb_hcd_link_urb_to_ep() fails, submit jumps to done_not_linked before that handoff happens and leaks the staged schedule still attached to urb->hcpriv. Free the staged schedule from done_not_linked when submit fails before the URB is linked and clear urb->hcpriv after the free. The bug was first flagged by an experimental analysis tool we are developing for kernel memory-management bugs while analyzing v6.13-rc1. The tool is still under development and is not yet publicly available. Manual inspection confirms that the bug is still present in v7.1.1. An x86_64 allyesconfig build showed no new warnings. As we do not have an EHCI host controller with a USB isochronous device to test with, no runtime testing was able to be performed.

Affected products

Linux
  • <2.6.15
  • <8890699eea19027ef6e4f9cbcf27cba5e789793f
  • =<6.18.*
  • <4bb88aee6b868cbf73bf453f62497802f5fe4769
  • <6bc17a78a05671d303820224fb37ca339c1dc2cb
  • <b0d00d077f9738d215af9b50c74dffab7a1de19f
  • ==2.6.15
  • =<6.12.*
  • <b9399d25fbb34a05bbe76eeedd730f62ff2670e9
  • =<7.1.*
  • =<*
  • =<6.6.*
  • <be5004395dfd0b6ec310db359f887fa396fd0dd2
  • =<5.10.*