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 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
ASoC: sti: use managed regmap_field allocations

In the Linux kernel, the following vulnerability has been resolved: ASoC: sti: use managed regmap_field allocations The regmap_field objects allocated at player init are never freed and may leak resources if the driver is removed. Switch to devm_regmap_field_alloc() to automatically limit the lifetime of the allocations the lifetime of the device.

Affected products

Linux
  • ==4.3
  • =<6.18.*
  • =<6.12.*
  • =<*
  • <4b8dba4527727623a97948aff9f0969a14c203a9
  • <43b67761d486d719128e164536e58de5a81dff9b
  • <002a5f925d42eca8ad547e55a4ae22714cfe9dec
  • =<6.1.*
  • =<6.6.*
  • <a3f3c332882c98ae7553af372191116d1384ca52
  • <1696fad8b259a2d46e51cd6e17e4bcdbe02279fa
  • =<7.0.*
  • =<5.10.*
  • <c3af3bcfc1deb3b230cc266a2ac75bca8f4dfba9
  • <7422a11a753daacbc2409513cf65e1de0d17c291
  • <4.3
  • <9641071e3a8e0bc664477a0e54db5f9815f0fb79
  • =<5.15.*
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
HID: usbhid: fix deadlock in hid_post_reset()

In the Linux kernel, the following vulnerability has been resolved: HID: usbhid: fix deadlock in hid_post_reset() You can build a USB device that includes a HID component and a storage or UAS component. The components can be reset only together. That means that hid_pre_reset() and hid_post_reset() are in the block IO error handling. Hence no memory allocation used in them may do block IO because the IO can deadlock on the mutex held while resetting a device and calling the interface drivers. Use GFP_NOIO for all allocations in them.

Affected products

Linux
  • ==3.5
  • =<6.18.*
  • =<6.12.*
  • <56d318ef8766f0deb08517fd8f3007256ea7997d
  • <3.5
  • =<*
  • =<6.1.*
  • <b3d16611d7cd78e9d5c6baa19b61b7caf9f1ab5e
  • =<6.6.*
  • <c7abd0e6c87441e99c759d40eb6fe589634e3041
  • =<7.0.*
  • <4e900465296ce9fb12ed47dc77389b8dde95bfe0
  • =<5.10.*
  • <ad4505d2ab3aaac6498f17649608e70e80034bf2
  • <90550af0aad5e75110073c501e4fb42fca20ff80
  • <8df2c1b47ee3cd50fd454f75c7a7e2ae8a6adf72
  • <eeceb6f4dd42065fdda3a526a93d08b8fb90fb69
  • =<5.15.*
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
fs/ntfs3: fix missing run load for vcn0 in attr_data_get_block_locked()

In the Linux kernel, the following vulnerability has been resolved: fs/ntfs3: fix missing run load for vcn0 in attr_data_get_block_locked() When a compressed or sparse attribute has its clusters frame-aligned, vcn is rounded down to the frame start using cmask, which can result in vcn != vcn0. In this case, vcn and vcn0 may reside in different attribute segments. The code already handles the case where vcn is in a different segment by loading its runs before allocation. However, it fails to load runs for vcn0 when vcn0 resides in a different segment than vcn. This causes run_lookup_entry() to return SPARSE_LCN for vcn0 since its segment was never loaded into the in-memory run list, triggering the WARN_ON(1). Fix this by adding a missing check for vcn0 after the existing vcn segment check. If vcn0 falls outside the current segment range [svcn, evcn1), find and load the attribute segment containing vcn0 before performing the run lookup. The following scenario triggers the bug: attr_data_get_block_locked() vcn = vcn0 & cmask <- vcn != vcn0 after frame alignment load runs for vcn segment <- vcn0 segment not loaded! attr_allocate_clusters() <- allocation succeeds run_lookup_entry(vcn0) <- vcn0 not in run -> SPARSE_LCN WARN_ON(1) <- bug fires here!

Affected products

Linux
  • <2b4ae1ce613ade8a7e118fba4a5a77cd23e97e54
  • =<*
  • ==406a037d93b769bca248476bd14bbe548dc1ec35
  • <6.2
  • =<7.0.*
  • ==6.2
  • <6.2
  • <d7ea8495fd307b58f8867acd81a1b40075b1d3ba
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
ceph: fix a buffer leak in __ceph_setxattr()

In the Linux kernel, the following vulnerability has been resolved: ceph: fix a buffer leak in __ceph_setxattr() The old_blob in __ceph_setxattr() can store ci->i_xattrs.prealloc_blob value during the retry. However, it is never called the ceph_buffer_put() for the old_blob object. This patch fixes the issue of the buffer leak.

Affected products

Linux
  • =<6.18.*
  • <d0cb994605c84a159c1d00d72cdc8583c321ef95
  • <6.12.91
  • =<6.1.*
  • <5.10.258
  • <5.15.209
  • =<5.15.*
  • <ecf94823c5c6a20790bb76ed2816822b0beb0c22
  • <3fa13ceefbc5f36131110342743994cb3de80637
  • =<*
  • <6.1.175
  • =<5.10.*
  • <bc7abce4460e490dcb579eec770f175b150b685f
  • <5d3cc36b4e77a27ce7b686b7c59c7072bcb3fa8e
  • =<6.6.*
  • <6.6.141
  • <521e5aba857fd267624892c8dd6295f22ce0267e
  • <7.0.10
  • =<6.12.*
  • <7d3e8d2d648d5f0df29b4710246680f47695fe94
  • <6.18.33
  • <4bfdcefdaa6092a06cacd59389c7756b36e6de8c
  • =<7.0.*
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
sctp: stream: fully roll back denied add-stream state

In the Linux kernel, the following vulnerability has been resolved: sctp: stream: fully roll back denied add-stream state When ADD_OUT_STREAMS is denied, SCTP only shrinks the queued chunks and then lowers outcnt. That leaves removed stream metadata behind, so a later re-add can reuse a stale ext and hit a null-pointer dereference in the scheduler get path. Fix the rollback by tearing down the removed stream state the same way other stream resizes do. Unschedule the current scheduler state, drop the removed stream ext state with sctp_stream_outq_migrate(), and then reschedule the remaining streams. This keeps scheduler-private RR/FC/PRIO lists consistent while fully rolling back denied outgoing stream additions.

Affected products

Linux
  • =<6.18.*
  • =<6.12.*
  • =<*
  • <a5f8a90ac9f77c678a9781c0a464b635e0d63e49
  • ==4.15
  • <1c6773b8c081509dcd5cd2954f2b02c50c00f151
  • <a6724b7b812ac8793514a1d5938db5d9d29ae725
  • =<6.1.*
  • <4.15
  • =<6.6.*
  • =<7.0.*
  • <0cd2dc6dce8ca47212cd306ccd52eb315ef3cf85
  • =<5.10.*
  • <39dc2b0eb5371a669ebc9ec6072b9184eac95418
  • <d5ea0b3e261fcb2cfff142675516165244cab1da
  • <9662eb0401518f0b4681f10e7fbf688f504f24cf
  • <7dd9a42b044aad2dbe037db1c1e2943582485b44
  • =<5.15.*
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
fs/adfs: validate nzones in adfs_validate_bblk()

In the Linux kernel, the following vulnerability has been resolved: fs/adfs: validate nzones in adfs_validate_bblk() Reject ADFS disc records with a zero zone count during boot block validation, before the disc record is used. When nzones is 0, adfs_read_map() passes it to kmalloc_array(0, ...) which returns ZERO_SIZE_PTR, and adfs_map_layout() then writes to dm[-1], causing an out-of-bounds write before the allocated buffer. adfs_validate_dr0() already rejects nzones != 1 for old-format images. Add the equivalent check to adfs_validate_bblk() for new-format images so that a crafted image with nzones == 0 is rejected at probe time. Found by syzkaller.

Affected products

Linux
  • =<5.15.*
  • =<6.18.*
  • =<6.12.*
  • =<*
  • <1f0ed0f57f0fc87e46fe19a05435c214dc464be2
  • =<6.1.*
  • <6ff8cca5cdb4f2e0ea6d28ecd78479dd3f221ebc
  • <dd9d3e16c2d5fa166e13dce07413be51f42c8f5d
  • =<6.6.*
  • <a3fd5dc1c7b0aae947a67dc2e2c037d57557a4de
  • =<7.0.*
  • ==5.6
  • =<5.10.*
  • <5.6
  • <a11372a8b1ceaa5e950a84b3b5fbf8228f25e277
  • <1586bd2d2fb436a26df20a70e78b000d34a7d159
  • <60d82592ac8b5637fbed871381eb0a16df0a492e
  • <33aafd2418a59c96c0389d47ea09026661fa9ec6
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
drm/xe: Fix error cleanup in xe_exec_queue_create_ioctl()

In the Linux kernel, the following vulnerability has been resolved: drm/xe: Fix error cleanup in xe_exec_queue_create_ioctl() Two error handling issues exist in xe_exec_queue_create_ioctl(): 1. When xe_hw_engine_group_add_exec_queue() fails, the error path jumps to put_exec_queue which skips xe_exec_queue_kill(). If the VM is in preempt fence mode, xe_vm_add_compute_exec_queue() has already added the queue to the VM's compute exec queue list. Skipping the kill leaves the queue on that list, leading to a dangling pointer after the queue is freed. 2. When xa_alloc() fails after xe_hw_engine_group_add_exec_queue() has succeeded, the error path does not call xe_hw_engine_group_del_exec_queue() to remove the queue from the hw engine group list. The queue is then freed while still linked into the hw engine group, causing a use-after-free. Fix both by: - Changing the xe_hw_engine_group_add_exec_queue() failure path to jump to kill_exec_queue so that xe_exec_queue_kill() properly removes the queue from the VM's compute list. - Adding a del_hw_engine_group label before kill_exec_queue for the xa_alloc() failure path, which removes the queue from the hw engine group before proceeding with the rest of the cleanup. (cherry picked from commit 37c831f401746a45d510b312b0ed7a77b1e06ec8)

Affected products

Linux
  • =<6.18.*
  • =<6.12.*
  • =<*
  • <f93b00161213a0fe9f7ff1d8498ee5ca9e0a5c43
  • <6.12
  • <753b149d5a433eb19e0c1b0eb4526a6e26120d1f
  • <f3cc22d4df3ed58439ea7e21daa54c3608e03b78
  • =<7.0.*
  • ==6.12
  • <1be55646d8a2035343b012dcb12210db7bb8b056
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
bpf: Fix stale offload->prog pointer after constant blinding

In the Linux kernel, the following vulnerability has been resolved: bpf: Fix stale offload->prog pointer after constant blinding When a dev-bound-only BPF program (BPF_F_XDP_DEV_BOUND_ONLY) undergoes JIT compilation with constant blinding enabled (bpf_jit_harden >= 2), bpf_jit_blind_constants() clones the program. The original prog is then freed in bpf_jit_prog_release_other(), which updates aux->prog to point to the surviving clone, but fails to update offload->prog. This leaves offload->prog pointing to the freed original program. When the network namespace is subsequently destroyed, cleanup_net() triggers bpf_dev_bound_netdev_unregister(), which iterates ondev->progs and calls __bpf_prog_offload_destroy(offload->prog). Accessing the freed prog causes a page fault: BUG: unable to handle page fault for address: ffffc900085f1038 Workqueue: netns cleanup_net RIP: 0010:__bpf_prog_offload_destroy+0xc/0x80 Call Trace: __bpf_offload_dev_netdev_unregister+0x257/0x350 bpf_dev_bound_netdev_unregister+0x4a/0x90 unregister_netdevice_many_notify+0x2a2/0x660 ... cleanup_net+0x21a/0x320 The test sequence that triggers this reliably is: 1. Set net.core.bpf_jit_harden=2 (echo 2 > /proc/sys/net/core/bpf_jit_harden) 2. Run xdp_metadata selftest, which creates a dev-bound-only XDP program on a veth inside a netns (./test_progs -t xdp_metadata) 3. cleanup_net -> page fault in __bpf_prog_offload_destroy Dev-bound-only programs are unique in that they have an offload structure but go through the normal JIT path instead of bpf_prog_offload_compile(). This means they are subject to constant blinding's prog clone-and-replace, while also having offload->prog that must stay in sync. Fix this by updating offload->prog in bpf_jit_prog_release_other(), alongside the existing aux->prog update. Both are back-pointers to the prog that must be kept in sync when the prog is replaced.

Affected products

Linux
  • =<6.18.*
  • =<6.12.*
  • =<*
  • <25484c39d1ec82a0368798d956da3de5039b3fe8
  • <a713b72ff88cdab4d5d692908ab1259ada511f4d
  • <a1aa9ef47c299c5bbc30594d3c2f0589edf908e6
  • =<6.6.*
  • =<7.0.*
  • ==6.3
  • <059525cf18e69a9313baf947d8898c6ee7ca6b65
  • <c79f8503d83d4665be461fb9e45e215d0380c67b
  • <6.3
Dismissed
(max. allowed matches exceeded)
Permalink CVE-2026-13028
9.6 CRITICAL
  • 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): Changed (C)
  • 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): Changed (C)
  • Modified Integrity (MI): High (H)
  • Modified Availability (MA): High (H)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Use after free in WebGL in Google Chrome on Android …

Use after free in WebGL in Google Chrome on Android prior to 149.0.7827.197 allowed a remote attacker to potentially perform a sandbox escape via a crafted HTML page. (Chromium security severity: Critical)

Affected products

Chrome
  • <149.0.7827.197
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
dm cache: fix null-deref with concurrent writes in passthrough mode

In the Linux kernel, the following vulnerability has been resolved: dm cache: fix null-deref with concurrent writes in passthrough mode In passthrough mode, when dm-cache starts to invalidate a cache entry and bio prison cell lock fails due to concurrent write to the same cached block, mg->cell remains NULL. The error path in invalidate_complete() attempts to unlock and free the cell unconditionally, causing a NULL pointer dereference: KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 0 UID: 0 PID: 134 Comm: fio Not tainted 6.19.0-rc7 #3 PREEMPT RIP: 0010:dm_cell_unlock_v2+0x3f/0x210 <snip> Call Trace: invalidate_complete+0xef/0x430 map_bio+0x130f/0x1a10 cache_map+0x320/0x6b0 __map_bio+0x458/0x510 dm_submit_bio+0x40e/0x16d0 __submit_bio+0x419/0x870 <snip> Reproduce steps: 1. Create a cache device 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. Promote the first data block into cache fio --filename=/dev/mapper/cache --name=populate --rw=write --bs=4k \ --direct=1 --size=64k 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 first cached block concurrently fio --filename=/dev/mapper/cache --name test --rw=randwrite --bs=4k \ --randrepeat=0 --direct=1 --numjobs=2 --size 64k Fix by checking if mg->cell is valid before attempting to unlock it.

Affected products

Linux
  • ==4.12
  • <25dcc1989c194ba2b5fb6d03cbb9b83814ac0d15
  • <01264a6a3a3ad7ac1d73443299cd5a9568002454
  • <df3b8ef06cc62de4fca5d2108e285085b3cffd44
  • <7d1f98d668ee34c1d15bdc0420fdd062f24a27c0
  • <4.12
  • <a2635d541a93fd111e743cf14b6275dc81be2abc
  • =<6.1.*
  • <c7fb6bc864c4910b344dafa36dd5028e9b980768
  • <ee38fb00e1a80f46a4990e38f25ecb04ae7b7417
  • =<5.15.*
  • =<6.12.*
  • =<7.0.*
  • =<6.18.*
  • =<*
  • <0aa745fea1f8dc81bcdd0a45e215b6706727b482
  • =<6.6.*
  • =<5.10.*