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 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
wifi: mt76: mt7921/mt7925: fix NULL dereference in CSA beacon

In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: mt7921/mt7925: fix NULL dereference in CSA beacon This patch is based on a BUG as reported by Bongani Hlope at https://lore.kernel.org/all/20260502125824.425d7159@bongani-mini.home.org.za/ When a channel-switch announcement (CSA) beacon is received, cfg80211 queues a wiphy work item that eventually calls mt7921_channel_switch_rx_beacon(). If the station disconnects (or the channel context is otherwise torn down) between the time the work is queued and the time it runs, the driver's dev->new_ctx pointer can already have been cleared to NULL. mt7921_channel_switch_rx_beacon() then dereferences new_ctx unconditionally, triggering a NULL pointer dereference at address 0x0: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: 0010:mt7921_channel_switch_rx_beacon+0x1f/0x100 [mt7921_common] The same missing guard exists in mt7925_channel_switch_rx_beacon(), which shares the same code pattern introduced by the same commit. Add an early-return NULL check for dev->new_ctx in both mt7921_channel_switch_rx_beacon() and mt7925_channel_switch_rx_beacon(). When new_ctx is NULL there is no pending channel switch to process, so returning immediately is the correct and safe action. Oops-Analysis: http://oops.fenrus.org/reports/lkml/20260502125824.425d7159@bongani-mini.home.org.za/report.html

Affected products

Linux
  • =<7.1.*
  • =<*
  • <6.14
  • ==6.14
  • <77e7b127472a191e086e1e0b1b051703f33b1801
  • <351dd7d2c80d23e56dcce6faa4e62bea5b0877c7
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
crypto: ccp - Do not initialize SNP for ioctl(SNP_CONFIG)

In the Linux kernel, the following vulnerability has been resolved: crypto: ccp - Do not initialize SNP for ioctl(SNP_CONFIG) Sashiko notes: > if SEV initialization fails and KVM is actively running normal VMs, could a > userspace process trigger this code path via /dev/sev ioctls (e.g., > SEV_PDH_GEN) and zero out MSR_VM_HSAVE_PA globally? Would the next VMRUN > execution for an active VM trigger a general protection fault and crash the > host? Refuse to re-try initialization if SNP is not already initialized for SNP_CONFIG. This is technically an ABI break: before if SNP initialization failed it could be transparently retriggered by this ioctl, and if no VMs were running, everything worked fine. Hopefully this is enough of a corner case that nobody will notice, but someone does, there are a few options: * do something like symbol_get() for kvm and refuse to initialize if KVM is loaded * check each cpu's HSAVE_PA for non-zero data before re-initializing * once initialization has failed, continue to refuse to initialize until the ccp module is unloaded

Affected products

Linux
  • <20f548cdac94860a164e5ebba4f7e4a01051cb06
  • <345a6e869b33687e9268044bcaeeefd7c61da675
  • <08f0e65e784c4b20e6e620dd4f68d8636073a3d2
  • =<6.18.*
  • ==6.16
  • <441ea32cf2755a0dc593557056b00b7caa0651f5
  • =<6.12.*
  • =<7.1.*
  • =<*
  • <6.12.97
  • <6.16
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
bpf: Keep dynamic inner array lookups nullable

In the Linux kernel, the following vulnerability has been resolved: bpf: Keep dynamic inner array lookups nullable An ARRAY_OF_MAPS can use an array created with BPF_F_INNER_MAP as its inner map template. A concrete inner array with a different max_entries value can then replace the template. After a successful outer map lookup, the verifier represents the resulting map pointer using the inner map template. Const-key lookup nullness elision consequently uses the template max_entries even though the runtime helper uses the concrete inner map max_entries. Do not elide lookup result nullness for maps marked with BPF_F_INNER_MAP, because the template max_entries does not prove that the key is in bounds for the concrete runtime map.

Affected products

Linux
  • <0b92ad64d6e4bde85e6b9888404f9a7a2b65d269
  • =<6.18.*
  • =<7.1.*
  • =<*
  • <53040a81ae57cdca8af8ac36fe4e661730cf7c6b
  • <d57db0d975053e01410c54e708a85b6d32ef2ebd
  • <6.14
  • ==6.14
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
crypto: ccp - Do not initialize SNP for ioctl(SNP_COMMIT)

In the Linux kernel, the following vulnerability has been resolved: crypto: ccp - Do not initialize SNP for ioctl(SNP_COMMIT) Sashiko notes: > if SEV initialization fails and KVM is actively running normal VMs, could a > userspace process trigger this code path via /dev/sev ioctls (e.g., > SEV_PDH_GEN) and zero out MSR_VM_HSAVE_PA globally? Would the next VMRUN > execution for an active VM trigger a general protection fault and crash the > host? The SNP_COMMIT command does not require the firmware to be in any particular state. Skip initializing it if it was previously uninitialized. The SEV-SNP firmware specification doc 56860 does not mention SNP_COMMIT in Table 5 as a command that is allowed in the UNINIT state, but it is in fact allowed and a future documentation update will reflect that.

Affected products

Linux
  • =<6.18.*
  • <74768f73854d647a6462f252dc8782ab8a835211
  • <6.12.96
  • <7a361c74bb12f3398c388905f1d325be642cd36e
  • <5a1364da2f04217a36e2fdfa2db4ee025b383a20
  • ==6.16
  • <67ed191b4c8bdf432a3f32d1eb302880b4795cd1
  • =<6.12.*
  • =<7.1.*
  • =<*
  • <6.16
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
vfio: Remove device debugfs before releasing devres

In the Linux kernel, the following vulnerability has been resolved: vfio: Remove device debugfs before releasing devres VFIO device debugfs files created with debugfs_create_devm_seqfile() store a devres allocated debugfs_devm_entry as inode private data. vfio_unregister_group_dev() currently calls vfio_device_del() before vfio_device_debugfs_exit(), but device_del() releases devres. This can leave debugfs entries visible with stale inode private data while unregister waits for userspace references to drain. Remove the per-device debugfs tree before vfio_device_del(). The debugfs view is diagnostic only, so losing it at the start of unregister is preferable to preserving entries whose backing storage may already have been released. Complete the teardown by clearing the per-device debugfs root after removal. This matches the global debugfs root cleanup and prevents future users from mistaking a removed dentry for a live debugfs tree during the remainder of unregister.

Affected products

Linux
  • <6.8
  • =<6.18.*
  • <dc7fe87de492ea7f33a72b78d26650b75bf37f4f
  • =<6.12.*
  • =<7.1.*
  • ==6.8
  • <a53109ffb6b5148e11a27fb7670355b92db12dd3
  • <6cc60b41d61657dc469893d14e8e55d160056ff1
  • =<*
  • <a5df401dc84f091e20b045560569f0736758fea7
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
ALSA: gus: check snd_ctl_new1() return value

In the Linux kernel, the following vulnerability has been resolved: ALSA: gus: check snd_ctl_new1() return value snd_ctl_new1() can return NULL when memory allocation fails. snd_gf1_pcm_volume_control() does not check the return value before dereferencing kctl->id.index, which can lead to a NULL pointer dereference. Add a NULL check after snd_ctl_new1() and return -ENOMEM if it fails.

Affected products

Linux
  • <6.1.178
  • =<6.18.*
  • <97f6bdf5d5ded2e37f358cacb5a95f1393356604
  • ==a1374d2683442633f8ad2169f8f31df45048e008
  • ==6.4
  • =<6.12.*
  • <6.4
  • =<7.1.*
  • <fc5d4f27ca1293bc1379ef8fff691c30d9803ca2
  • =<6.1.*
  • =<6.6.*
  • <5e74e5e8cb7cc25f7a89f59abaf3489bf0c6f4a0
  • =<*
  • <eccf8e91266e39f6f15637702a04a1d344833fe2
  • <c7fa99d30c7a166a5e5db5a585ce7501ff68326b
  • <465075c6835103821d725c13f8c545898e5f2636
  • <6.4
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net: af_key: initialize alg_key_len for IPComp states

In the Linux kernel, the following vulnerability has been resolved: net: af_key: initialize alg_key_len for IPComp states pfkey_msg2xfrm_state() handles the IPComp (SADB_X_SATYPE_IPCOMP) case by allocating x->calg and copying only the algorithm name: x->calg = kmalloc_obj(*x->calg); if (!x->calg) { err = -ENOMEM; goto out; } strcpy(x->calg->alg_name, a->name); x->props.calgo = sa->sadb_sa_encrypt; Unlike the authentication (x->aalg) and encryption (x->ealg) branches of the same function, the compression branch never initializes calg->alg_key_len. IPComp carries no key and the allocation only reserves sizeof(struct xfrm_algo) (i.e. no room for a key), so the field is left containing uninitialized slab data. calg->alg_key_len is later used as a length by xfrm_algo_clone() when an IPComp state is cloned during XFRM_MSG_MIGRATE: xfrm_state_migrate() xfrm_state_clone_and_setup() x->calg = xfrm_algo_clone(orig->calg); kmemdup(orig, xfrm_alg_len(orig)); where xfrm_alg_len() returns sizeof(*alg) + (alg_key_len + 7) / 8. With a non-zero garbage alg_key_len, kmemdup() reads past the end of the 68-byte calg object. Adding an IPComp SA via PF_KEY and then migrating it triggers (net-next, KASAN, init_on_alloc=0): BUG: KASAN: slab-out-of-bounds in kmemdup_noprof+0x44/0x60 Read of size 4164 at addr ff11000025a74980 by task diag2/9287 CPU: 3 UID: 0 PID: 9287 Comm: diag2 7.1.0-rc6-g903db046d557 #1 Call Trace: <TASK> dump_stack_lvl+0x10e/0x1f0 print_report+0xf7/0x600 kasan_report+0xe4/0x120 kasan_check_range+0x105/0x1b0 __asan_memcpy+0x23/0x60 kmemdup_noprof+0x44/0x60 xfrm_state_migrate+0x70a/0x1da0 xfrm_migrate+0x753/0x18a0 xfrm_do_migrate+0xb47/0xf10 xfrm_user_rcv_msg+0x411/0xb50 netlink_rcv_skb+0x158/0x420 xfrm_netlink_rcv+0x71/0x90 netlink_unicast+0x584/0x850 netlink_sendmsg+0x8b0/0xdc0 ____sys_sendmsg+0x9f7/0xb90 ___sys_sendmsg+0x134/0x1d0 __sys_sendmsg+0x16d/0x220 do_syscall_64+0x116/0x7d0 entry_SYSCALL_64_after_hwframe+0x77/0x7f </TASK> Allocated by task 9287: kasan_save_stack+0x33/0x60 kasan_save_track+0x14/0x30 __kasan_kmalloc+0xaa/0xb0 pfkey_add+0x2652/0x2ea0 pfkey_process+0x6d0/0x830 pfkey_sendmsg+0x42c/0x850 __sys_sendto+0x461/0x4b0 __x64_sys_sendto+0xe0/0x1c0 do_syscall_64+0x116/0x7d0 entry_SYSCALL_64_after_hwframe+0x77/0x7f The buggy address belongs to the object at ff11000025a74980 which belongs to the cache kmalloc-96 of size 96 The buggy address is located 0 bytes inside of allocated 68-byte region [ff11000025a74980, ff11000025a749c4) Depending on the uninitialized value the same field can instead request an oversized kmemdup() allocation and make the migration clone fail. The XFRM netlink path is not affected: verify_one_alg() rejects an XFRMA_ALG_COMP attribute shorter than xfrm_alg_len(), so a calg added via XFRM_MSG_NEWSA is always self-consistent. Initialize calg->alg_key_len to 0, matching the aalg/ealg branches.

Affected products

Linux
  • <01b9115b55018123ef2449ac4951f89147a8428e
  • <273c06b81d2e902b21acc801ae18c8276c8a9b69
  • <2.6.21
  • =<6.18.*
  • ==2.6.21
  • <3f63d1752d90c0e28be931a48ab5d89bc97d637d
  • <58e82fc3dedb57b1432292504415b224fd2d6acb
  • <d129c3177d7b1138fd5066fcc63a698b3ba415b0
  • <e8417353cbd078d10531ba3928e609c84ab09e6b
  • =<7.1.*
  • =<5.15.*
  • =<6.12.*
  • =<6.1.*
  • =<*
  • =<6.6.*
  • <cea34abc94b0a81e3a8b5cfb41cf45af37c2c67e
  • =<5.10.*
  • <6de2a650917bedaaefd65b17cede83c5e2c1dedd
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
iio: temperature: tmp006: use devm_iio_trigger_register

In the Linux kernel, the following vulnerability has been resolved: iio: temperature: tmp006: use devm_iio_trigger_register tmp006_probe() allocates the DRDY trigger with devm_iio_trigger_alloc() but registers it with plain iio_trigger_register(). The driver has no .remove() callback, so on module unload the trigger stays in the global trigger list while its memory is freed by devm, leaving a dangling entry. Switch to devm_iio_trigger_register() so the registration is undone in the same devm scope as the allocation.

Affected products

Linux
  • =<6.18.*
  • <d90f868f56a16e10eedc6552f48d99dff4d275b7
  • <6.13
  • <a4f8491da9563ba6eb77969ac26fc7052114c476
  • =<7.1.*
  • =<*
  • ==6.13
  • <3c5eed894efd93d68d7f6a359a81ddef0e928774
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
usb: gadget: f_fs: Initialize epfile->in early to fix endpoint direction checks

In the Linux kernel, the following vulnerability has been resolved: usb: gadget: f_fs: Initialize epfile->in early to fix endpoint direction checks When parsing endpoint descriptors, ffs_data_got_descs() generates the eps_addrmap which contains the endpoint direction. However, epfile->in was previously only populated in ffs_func_eps_enable() which executes upon USB host connection. As a result, early userspace ioctls like FUNCTIONFS_DMABUF_ATTACH that run before the host connects would see epfile->in as 0, leading to incorrect DMA directions. By moving the initialization to ffs_epfiles_create(), epfile->in is accurate before userspace opens the endpoint files.

Affected products

Linux
  • <9e04055ab5fc0470a0031ee6934739f9aa8f34a5
  • =<6.18.*
  • <6.9
  • <82cfd4739011bdc7e87b5d585703427e89ddfaa5
  • <f99f32ea9aa976afcbec20647ed33b50a52002c1
  • =<6.12.*
  • =<7.1.*
  • <82cf1142e5ccf2b6d6d22ef713aaf3e5f2b5716b
  • =<*
  • ==6.9
Dismissed
(max. allowed matches exceeded)
created 23 hours ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
netfilter: ebtables: zero chainstack array

In the Linux kernel, the following vulnerability has been resolved: netfilter: ebtables: zero chainstack array sashiko reports: looking at ebtables table translation, could a sparse cpu_possible_mask lead to an uninitialized pointer free? If cpu_possible_mask is sparse (for example, CPU 0 and CPU 2 are possible, but CPU 1 is not), the allocation loop skips CPU 1. If vmalloc_node() fails at CPU 2, the cleanup loop will blindly decrement and call vfree() on newinfo->chainstack[1]. Not a real-world bug, such allocation isn't expected to fail in the first place.

Affected products

Linux
  • <fc7f105451044501a50cfd530cfa3b472c54acbc
  • <5ee856e4208acafaaaf7b84824d39b78c21345d6
  • =<6.18.*
  • <29bf41a9b59aff9f6197df58641a00037d567ca8
  • =<5.15.*
  • =<6.12.*
  • =<7.1.*
  • <cbfe53599eebffd188938ab6774cc41794f6f9d5
  • <2.6.12
  • =<6.1.*
  • =<*
  • <9e6c5169db423e51dcc66a73fd15409c0d38e088
  • ==2.6.12
  • <2ade612967e2cdfb9290ebcb773f302c82f311fa
  • <9f74d28e903fa4fdf82f870d0aeadddc8196e41c
  • <42bef500d07b5769d916e9122a3e3fa3fd2245ef
  • =<6.6.*
  • =<5.10.*