Nixpkgs security tracker

Try the new UI
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 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net: qrtr: fix refcount saturation and potential UAF in qrtr_port_remove

In the Linux kernel, the following vulnerability has been resolved: net: qrtr: fix refcount saturation and potential UAF in qrtr_port_remove In qrtr_port_remove(), the socket reference count is decremented via __sock_put() before the port is removed from the qrtr_ports XArray and before the RCU grace period elapses. This breaks the fundamental RCU update paradigm. It exposes a race window where a concurrent RCU reader (such as qrtr_reset_ports() or qrtr_port_lookup()) can obtain a pointer to the socket from the XArray, and attempt to call sock_hold() on a socket whose reference count has already dropped to zero. This exact race condition was hit during syzkaller fuzzing, leading to the following refcount saturation warning and a potential Use-After-Free: refcount_t: saturated; leaking memory. WARNING: CPU: 3 PID: 1273 at lib/refcount.c:22 refcount_warn_saturate+0xae/0x1d0 Modules linked in: qrtr(+) bochs drm_shmem_helper ... Call Trace: <TASK> qrtr_reset_ports net/qrtr/af_qrtr.c:768 [inline] [qrtr] __qrtr_bind.isra.0+0x48b/0x570 net/qrtr/af_qrtr.c:805 [qrtr] qrtr_bind+0x17d/0x210 net/qrtr/af_qrtr.c:901 [qrtr] kernel_bind+0xe4/0x120 net/socket.c:3592 qrtr_ns_init+0x1a6/0x380 net/qrtr/ns.c:715 [qrtr] qrtr_proto_init+0x3b/0xff0 net/qrtr/af_qrtr.c:169 [qrtr] do_one_initcall+0xf5/0x5e0 init/main.c:1283 ... </TASK> Fix this by deferring the reference count decrement until after the xa_erase() and the synchronize_rcu() complete. (Note: The v1 of this patch incorrectly replaced __sock_put() with sock_put(). As Simon Horman pointed out, the callers of qrtr_port_remove() still hold a reference to the socket, so freeing the socket memory here would lead to a subsequent UAF in the caller. Thus, the __sock_put() is kept, but only repositioned to close the RCU race.)

Affected products

Linux
  • <ab269990ed58143a92a263be1bee626d82ac03da
  • =<6.18.*
  • <2047c2aa0963bb2872fd722300a15bcb441a4c00
  • =<6.12.*
  • =<*
  • ==4.7
  • =<6.1.*
  • <2aa4c12723fe432e623462a3be42a197a128722b
  • <474293d90880622fde9d2430fb0165767090f7b3
  • =<6.6.*
  • <4.7
  • =<7.0.*
  • <a2171131ecda1ed61a594a1eb715e75fdad0fef5
  • =<5.10.*
  • <3b20ec8f31e8a6a6782243f473b0abd3463621df
  • <03bfa95e452e2b6ccd76a332060ae4feaf5ad84d
  • <7de2d447072be3b1a76793f034432338fc9c494b
  • =<5.15.*
Dismissed
(max. allowed matches exceeded)
Permalink CVE-2026-13036
8.8 HIGH
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): Required (R)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): High (H)
  • Integrity (I): High (H)
  • Availability (A): High (H)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): Required (R)
  • Modified Confidentiality (MC): High (H)
  • Modified Scope (MS): Unchanged (U)
  • Modified Integrity (MI): High (H)
  • Modified Availability (MA): High (H)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Use after free in Blink in Google Chrome prior to …

Use after free in Blink in Google Chrome prior to 149.0.7827.197 allowed a remote attacker to execute arbitrary code inside a sandbox via a crafted HTML page. (Chromium security severity: High)

Affected products

Chrome
  • <149.0.7827.197
Dismissed
(max. allowed matches exceeded)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
PCI: use generic driver_override infrastructure

In the Linux kernel, the following vulnerability has been resolved: PCI: use generic driver_override infrastructure When a driver is probed through __driver_attach(), the bus' match() callback is called without the device lock held, thus accessing the driver_override field without a lock, which can cause a UAF. Fix this by using the driver-core driver_override infrastructure taking care of proper locking internally. Note that calling match() from __driver_attach() without the device lock held is intentional. [1]

Affected products

Linux
  • ==3.16
  • <dfe950d9464cad609f3b118c6203e2708055bc61
  • <10a4206a24013be4d558d476010cbf2eb4c9fa64
  • =<6.18.*
  • =<6.12.*
  • <3.16
  • <58a42be0d70307d765594fc581f5f5e5ef059712
  • =<7.0.*
  • =<*
  • <c5b2c5755495507e14f310c2653c85de0a309b1f
Dismissed
(max. allowed matches exceeded)
Permalink CVE-2026-13026
8.8 HIGH
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): Required (R)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): High (H)
  • Integrity (I): High (H)
  • Availability (A): High (H)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): Required (R)
  • Modified Confidentiality (MC): High (H)
  • Modified Scope (MS): Unchanged (U)
  • Modified Integrity (MI): High (H)
  • Modified Availability (MA): High (H)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Use after free in Digital Credentials in Google Chrome on …

Use after free in Digital Credentials in Google Chrome on Mac prior to 149.0.7827.197 allowed a remote attacker to potentially exploit heap corruption via a crafted HTML page. (Chromium security severity: High)

Affected products

Chrome
  • <149.0.7827.197
Dismissed
(max. allowed matches exceeded)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Bluetooth: hci_ldisc: Clear HCI_UART_PROTO_INIT on error

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: hci_ldisc: Clear HCI_UART_PROTO_INIT on error When hci_register_dev() fails in hci_uart_register_dev() HCI_UART_PROTO_INIT is not cleared before calling hu->proto->close(hu) and setting hu->hdev to NULL. This means incoming UART data will reach the protocol-specific recv handler in hci_uart_tty_receive() after resources are freed. Clear HCI_UART_PROTO_INIT with a write lock before calling hu->proto->close() and setting hu->hdev to NULL. The write lock ensures all active readers have completed and no new reader can enter the protocol recv path before resources are freed. This allows the protocol-specific recv functions to remove the "HCI_UART_REGISTERED" guard without risking a null pointer dereference if hci_register_dev() fails.

Affected products

Linux
  • =<6.18.*
  • ==db7509fa110dd9b11134b75894677f30353b2c51
  • <3daa5818e473ed60eb69d8b5c71b651909d28c5a
  • <6.12.91
  • <5.5
  • =<6.1.*
  • <5.10.258
  • <ebb39b2d81731b83ee71a1ba6dd0291a57b5ac07
  • <5.15.209
  • ==6.15
  • <6.15
  • =<5.15.*
  • =<*
  • <6.14
  • <6.1.175
  • =<5.10.*
  • <a673cf6c4ac702cb79ac1f4d7fc4de763a6a3e40
  • =<6.6.*
  • <6.6.141
  • ==1dcf08fcff5ca529de6dc0395091f28854f4e54a
  • ==8e5aff600539e5faea294d9612cca50220e602b8
  • =<6.12.*
  • <6.15
  • <194f029a4d7f739e44ebc1f473120187b4de5104
  • <f4b69c35813c432973d340d3600c01de106ed474
  • =<7.0.*
  • <68d39ea5e0adc9ecaea1ce8abd842ec972eb8718
  • <ed4033fb85ccaaf6c3983be3c7b037e48253d232
  • <356dee1bcac4d0d9152390561fa63331ebff211b
Dismissed
(max. allowed matches exceeded)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
perf/amd/ibs: Avoid calling perf_allow_kernel() from the IBS NMI handler

In the Linux kernel, the following vulnerability has been resolved: perf/amd/ibs: Avoid calling perf_allow_kernel() from the IBS NMI handler Calling perf_allow_kernel() from the NMI context is unsafe and could be fatal. Capture the permission at event-initialization time by storing it in event->hw.flags, and have the NMI handler rely on that cached flag instead of making the call directly.

Affected products

Linux
  • <2783ed2442ce69ae240b787aee6dae801cef7aec
  • <0584e74fa2b27e9e722cfb5b579f79263df20040
  • =<6.18.*
  • =<*
  • <6.14
  • =<7.0.*
  • <b0a09142622a994c4f4088c3f61db5da87cfc711
  • ==6.14
Dismissed
(max. allowed matches exceeded)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
dm cache policy smq: fix missing locks in invalidating cache blocks

In the Linux kernel, the following vulnerability has been resolved: dm cache policy smq: fix missing locks in invalidating cache blocks In passthrough mode, the policy invalidate_mapping operation is called simultaneously from multiple workers, thus it should be protected by a lock. Otherwise, we might end up with data races on the allocated blocks counter, or even use-after-free issues with internal data structures when doing concurrent writes. Note that the existing FIXME in smq_invalidate_mapping() doesn't affect passthrough mode since migration tasks don't exist there, but would need attention if supporting fast device shrinking via suspend/resume without target reloading. Reproduce steps: 1. Create a cache device consisting of 1024 cache entries dmsetup create cmeta --table "0 8192 linear /dev/sdc 0" dmsetup create cdata --table "0 131072 linear /dev/sdc 8192" dmsetup create corig --table "0 262144 linear /dev/sdc 262144" dd if=/dev/zero of=/dev/mapper/cmeta bs=4k count=1 oflag=direct dmsetup create cache --table "0 262144 cache /dev/mapper/cmeta \ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 writethrough smq 0" 2. Populate the cache, and record the number of cached blocks fio --name=populate --filename=/dev/mapper/cache --rw=randwrite --bs=4k \ --size=64m --direct=1 nr_cached=$(dmsetup status cache | awk '{split($7, a, "/"); print a[1]}') 3. Reload the cache into passthrough mode dmsetup suspend cache dmsetup reload cache --table "0 262144 cache /dev/mapper/cmeta \ /dev/mapper/cdata /dev/mapper/corig 128 2 metadata2 passthrough smq 0" dmsetup resume cache 4. Write to the passthrough cache. By setting multiple jobs with I/O size equal to the cache block size, cache blocks are invalidated concurrently from different workers. fio --filename=/dev/mapper/cache --name=test --rw=randwrite --bs=64k \ --direct=1 --numjobs=2 --randrepeat=0 --size=64m 5. Check if demoted matches cached block count. These numbers should match but may differ due to the data race. nr_demoted=$(dmsetup status cache | awk '{print $12}') echo "$nr_cached, $nr_demoted"

Affected products

Linux
  • <2d1f7b65f5deedd2e6b09fdc6ea27f8375f24b45
  • <9a5fdfb9e57ec3a8ad2b8fce5e5ffa42d53b130e
  • <2b62d0611c9af14a16bddf22df2612b4f40eb5a1
  • <4991b5a08751e2e82488fb93ae08849b6aea10d9
  • ==4.12
  • =<6.1.*
  • =<*
  • <ac5ee99443891bdb161f5539606a66a1b5e72542
  • =<5.15.*
  • =<5.10.*
  • =<6.18.*
  • =<6.6.*
  • =<6.12.*
  • <1b2bec4a7dcf5f00b7a1cbeeec8997841d783513
  • <93627a29d4b66d4a2def938dfb8610cc80ae454b
  • =<7.0.*
  • <4.12
  • <c348ae47d8e65f06429fa41adce9ad986b696766
Dismissed
(max. allowed matches exceeded)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
platform/wmi: use generic driver_override infrastructure

In the Linux kernel, the following vulnerability has been resolved: platform/wmi: use generic driver_override infrastructure When a driver is probed through __driver_attach(), the bus' match() callback is called without the device lock held, thus accessing the driver_override field without a lock, which can cause a UAF. Fix this by using the driver-core driver_override infrastructure taking care of proper locking internally. Note that calling match() from __driver_attach() without the device lock held is intentional. [1]

Affected products

Linux
  • =<*
  • <13d201bd840d2e2a645ef899f81342cd27ced346
  • =<6.18.*
  • ==6.11
  • =<6.12.*
  • <6.11
  • <8a700b1fc94df4d847a04f14ebc7f8532592b367
  • =<7.0.*
  • <4dc755d86deed88789540d960e421124bad4c568
  • <2c5507010fc3b8e2bd596c63c88f6ad39a69b1c4
Dismissed
(max. allowed matches exceeded)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
batman-adv: clear current gateway during teardown

In the Linux kernel, the following vulnerability has been resolved: batman-adv: clear current gateway during teardown batadv_gw_node_free() removes the gateway list entries during mesh teardown, but it does not clear the currently selected gateway. This leaves stale gateway state behind across cleanup and can break a later mesh recreation. Clear bat_priv->gw.curr_gw before walking the gateway list so the selected gateway reference is dropped as part of teardown.

Affected products

Linux
  • <17e3a441111cd1a530cd6ee69a22f3161d80d810
  • =<6.1.*
  • =<*
  • =<5.15.*
  • =<5.10.*
  • ==3.1
  • =<6.18.*
  • <ae7aeb0ce3c0ebbe357ed525779acac197a18086
  • =<6.6.*
  • =<6.12.*
  • <a3f3f1ec8aad84c5dd386c430b9c61cddd85b18f
  • <e2ec4c712d19141ca7bf7fbbb1d842f73abaa186
  • <9a1a8ed4facfe843bde6fdfcf7af0e9923eb2e17
  • =<7.0.*
  • <6de089b545db013433cf934bb4e4433dec2dd65f
  • <30bda3ef4b0cac777f1a7c314cd08b8ff6437365
  • <a340a51ed801eab7bb454150c226323b865263cc
  • <3.1
Dismissed
(max. allowed matches exceeded)
created 3 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net: airoha: fix BQL imbalance in TX path

In the Linux kernel, the following vulnerability has been resolved: net: airoha: fix BQL imbalance in TX path Fix a possible BQL imbalance in airoha_dev_xmit(), where inflight packets are accounted only for the AIROHA_NUM_TX_RING netdev TX queues. The queue index is computed as: qid = skb_get_queue_mapping(skb) % ARRAY_SIZE(qdma->q_tx) txq = netdev_get_tx_queue(dev, qid); However, airoha_qdma_tx_napi_poll() accounts completions across all netdev TX queues (num_tx_queues), leading to inconsistent BQL accounting. Also reset all netdev TX queues in the ndo_stop callback.

Affected products

Linux
  • ==6.13
  • <aaad53a55812acd2355c0e5478896381e78b0110
  • <6.13
  • =<*
  • <2d9f5a118205da2683ffcec78b9347f1f01a820e
  • =<6.18.*
  • <ded2694247a55a16d0ebbe2d6f9139305c21457a
  • ==ca24fcac1daaa5e8a667981d81986a3eb4b9fb04
  • =<7.0.*
  • <6.13