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
dm cache metadata: fix memory leak on metadata abort retry

In the Linux kernel, the following vulnerability has been resolved: dm cache metadata: fix memory leak on metadata abort retry When failing to acquire the root_lock in dm_cache_metadata_abort because the block_manager is read-only, the temporary block_manager created outside the root_lock is not properly released, causing a memory leak. Reproduce steps: This can be reproduced by reloading a new table while the metadata is read-only. While the second call to dm_cache_metadata_abort is caused by lack of support for table preload in dm-cache, mentioned in commit 9b1cc9f251af ("dm cache: share cache-metadata object across inactive and active DM tables"), it exposes the memory leak in dm_cache_metadata_abort when the function is called multiple times. Specifically, dm-cache fails to sync the new cache object's mode during preresume, creating the reproducer condition. This issue could also occur through concurrent metadata_operation_failed calls due to races in cache mode updates, but the table preload scenario below provides a reliable reproducer. 1. Create a cache device with some faulty trailing metadata blocks dmsetup create cmeta <<EOF 0 200 linear /dev/sdc 0 200 7992 error EOF 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 131072 cache /dev/mapper/cmeta \ /dev/mapper/cdata /dev/mapper/corig 128 1 writethrough smq 0" 2. Suspend and resume the cache to start a new metadata transaction and trigger metadata io errors on the next metadata commit. dmsetup suspend cache dmsetup resume cache 3. Write to the cache device to update metadata fio --filename=/dev/mapper/cache --name test --rw=randwrite --bs=4k \ --randrepeat=0 --direct=1 --size 64k 4. Preload the same table dmsetup reload cache --table "$(dmsetup table cache)" 5. Resume the new table. This triggers the memory leak. dmsetup suspend cache dmsetup resume cache kmemleak logs: <snip> unreferenced object 0xffff8880080c2010 (size 16): comm "dmsetup", pid 132, jiffies 4294982580 hex dump (first 16 bytes): 00 38 b9 07 80 88 ff ff 6a 6b 6b 6b 6b 6b 6b a5 ... backtrace (crc 3118f31c): kmemleak_alloc+0x28/0x40 __kmalloc_cache_noprof+0x3d9/0x510 dm_block_manager_create+0x51/0x140 dm_cache_metadata_abort+0x85/0x320 metadata_operation_failed+0x103/0x1e0 cache_preresume+0xacd/0xe70 dm_table_resume_targets+0xd3/0x320 __dm_resume+0x1b/0xf0 dm_resume+0x127/0x170 <snip>

Affected products

Linux
  • <4.10
  • ==6.2
  • ==f472bfc95d9c9653172dbdad39219b32fabf9b92
  • =<5.10.*
  • =<7.0.*
  • <5.10.258
  • =<6.18.*
  • <b0bd35535bdb6f58505f3a30ee5793986943997a
  • ==6e237cacda8b4e976849e7bff9fe7dff0e968586
  • ==bdd4e106929ac943f3226d8f03754b480701e97b
  • <4311ca59a1891d33c4c8b7946f98c34f167fe833
  • <044ca491d4086dc5bf233e9fcb71db52df32f633
  • <322a3b70368d49e39591fe9fc6c07d262128b05f
  • <5.5
  • <6.2
  • =<6.12.*
  • <6b97cc7a42905755c56bbddc33aa8b792205caee
  • <15c30997dca681f90dbf2d45ee629c1828bf0c0d
  • ==3972ae47d0ee9b5b434af5d0cca6cdfd1e239d4f
  • <14f60e957f34f95a626caec76a8fae88cf4c397f
  • <5.15.209
  • <6.1.175
  • ==9958f5ffc44530b650fb4cc9038a4d167fa4f5c1
  • =<6.6.*
  • <d1a79620c419a0af1911f99c873014b30740e303
  • =<*
  • <6.1
  • =<6.1.*
  • <4.15
  • =<5.15.*
  • <4.20
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net/rds: zero per-item info buffer before handing it to visitors

In the Linux kernel, the following vulnerability has been resolved: net/rds: zero per-item info buffer before handing it to visitors rds_for_each_conn_info() and rds_walk_conn_path_info() both hand a caller-allocated on-stack u64 buffer to a per-connection visitor and then copy the full item_len bytes back to user space via rds_info_copy() regardless of how much of the buffer the visitor actually wrote. rds_ib_conn_info_visitor() and rds6_ib_conn_info_visitor() only write a subset of their output struct when the underlying rds_connection is not in state RDS_CONN_UP (src/dst addr, tos, sl and the two GIDs via explicit memsets). Several u32 fields (max_send_wr, max_recv_wr, max_send_sge, rdma_mr_max, rdma_mr_size, cache_allocs) and the 2-byte alignment hole between sl and cache_allocs remain as whatever stack contents preceded the visitor call and are then memcpy_to_user()'d out to user space. struct rds_info_rdma_connection and struct rds6_info_rdma_connection are the only rds_info_* structs in include/uapi/linux/rds.h that are not marked __attribute__((packed)), so they have a real alignment hole. The other info visitors (rds_conn_info_visitor, rds6_conn_info_visitor, rds_tcp_tc_info, ...) write all fields of their packed output struct today and are not known to be vulnerable, but a future visitor that adds a conditional write-path would have the same bug. Reproduction on a kernel built without CONFIG_INIT_STACK_ALL_ZERO=y: a local unprivileged user opens AF_RDS, sets SO_RDS_TRANSPORT=IB, binds to a local address on an RDMA-capable netdev (rxe soft-RoCE on any netdev is sufficient), sendto()'s any peer on the same subnet (fails cleanly but installs an rds_connection in the global hash in RDS_CONN_CONNECTING), then calls getsockopt(SOL_RDS, RDS_INFO_IB_CONNECTIONS). The returned 68-byte item contains 26 bytes of stack garbage including kernel text/data pointers: 0..7 0a 63 00 01 0a 63 00 02 src=10.99.0.1 dst=10.99.0.2 8..39 00 ... gids (memset-zeroed) 40..47 e0 92 a3 81 ff ff ff ff kernel pointer (max_send_wr) 48..55 7f 37 b5 81 ff ff ff ff kernel pointer (rdma_mr_max) 56..59 01 00 08 00 rdma_mr_size (garbage) 60..61 00 00 tos, sl 62..63 00 00 alignment padding 64..67 18 00 00 00 cache_allocs (garbage) Fix by zeroing the per-item buffer in both rds_for_each_conn_info() and rds_walk_conn_path_info() before invoking the visitor. This covers the IPv4/IPv6 IB visitors and hardens all current and future visitors against the same class of bug. No functional change for visitors that fully populate their output. Changes in v2: - retarget at the net tree (subject prefix "[PATCH net v2]", net/rds: prefix in the title) - pick up Reviewed-by tags from Sharath Srinivasan and Allison Henderson

Affected products

Linux
  • <c88eb7e8d8397a8c1db59c425332c5a30b2a1682
  • <81651e9d7dea1c048d2952f57632a042931d7b43
  • <912ba2e5704fdb8bc5decda96dfc1a57838f0099
  • <c7cb9eed8215a790f052f49cdccf577720d2bb62
  • =<6.12.*
  • =<6.18.*
  • =<*
  • <91ce1bb6e4194dc2321748f68145359dcf86e350
  • =<6.1.*
  • =<6.6.*
  • =<7.0.*
  • <0797b2e6901827694aa9c34c4c72118c8c97fba1
  • =<5.10.*
  • <2.6.30
  • ==2.6.30
  • <5e67cc262afb384e835c3327e9d954eeaedc6a87
  • <b6ba93a7b71ed443c9843eb12d27ed86f1e52694
  • =<5.15.*
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
erofs: unify lcn as u64 for 32-bit platforms

In the Linux kernel, the following vulnerability has been resolved: erofs: unify lcn as u64 for 32-bit platforms As sashiko reported [1], `lcn` was typed as `unsigned long` (or `unsigned int` sometimes), which is only 32 bits wide on 32-bit platforms, which causes `(lcn << lclusterbits)` to be truncated at 4 GiB. In order to consolidate the logic, just use `u64` consistently around the codebase. [1] https://sashiko.dev/r/20260420034612.1899973-1-hsiangkao%40linux.alibaba.com

Affected products

Linux
  • ==5.3
  • =<6.12.*
  • =<6.18.*
  • =<*
  • <858e4d98a86adf34584767388deb6c9b217f70c5
  • <582b0bf201157632cb5474c885989a6ebda46521
  • =<7.0.*
  • <4fc9b12e43a3f19a01a8fb61f7961be79de20253
  • <2d8c7edcb661812249469f4a5b62e9339118846f
  • <5.3
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
netfilter: nft_ct: fix missing expect put in obj eval

In the Linux kernel, the following vulnerability has been resolved: netfilter: nft_ct: fix missing expect put in obj eval nft_ct_expect_obj_eval() allocates an expectation and may call nf_ct_expect_related(), but never drops its local reference. Add nf_ct_expect_put(exp) before return to balance allocation.

Affected products

Linux
  • <19f94b6fee75b3ef7fbc06f3745b9a771a8a19a4
  • =<6.1.*
  • <ecca618e1e339494911090474ed87742c0f73976
  • <7b96242ceedfe249f158419f3254bcee04173ffe
  • ==5.3
  • <5.3
  • =<5.15.*
  • =<*
  • =<5.10.*
  • <84c422cea5a45fe56be839f25880f21fd33940cd
  • =<6.18.*
  • =<7.0.*
  • =<6.6.*
  • <cdb9a25dd3416d427e8b2753210f8baf44207577
  • =<6.12.*
  • <1dced0725e2fae3ac3416274db20a7ff5a46931d
  • <2aef1b13d5c0285f340512c6c07eb858fd018fd8
  • <26ab32ec73941871c97562ee1f39587950dc3b68
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
bus: fsl-mc: use generic driver_override infrastructure

In the Linux kernel, the following vulnerability has been resolved: bus: fsl-mc: 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
  • <5.10
  • ==5.10
  • <4911b836f35c034c36f102db4ecbe339b38e7d1d
  • <60bfb563a399c4597dc80588a1109758a8908b97
  • =<6.12.*
  • <8139ce66b52a4a5638bfb445b037c07d4abeb08e
  • =<6.18.*
  • <6c8dfb0362732bf1e4829867a2a5239fedc592d0
  • =<7.0.*
  • =<*
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net: bcmgenet: fix off-by-one in bcmgenet_put_txcb

In the Linux kernel, the following vulnerability has been resolved: net: bcmgenet: fix off-by-one in bcmgenet_put_txcb The write_ptr points to the next open tx_cb. We want to return the tx_cb that gets rewinded, so we must rewind the pointer first then return the tx_cb that it points to. That way the txcb can be correctly cleaned up.

Affected products

Linux
  • =<*
  • =<5.10.*
  • =<6.12.*
  • ==3bdf77194ea822390b405639b77659071fd2c2e9
  • =<6.1.*
  • <3.17
  • <2a74590170427a3ca7cc4bb8690cdd559129c29c
  • =<6.6.*
  • <57f3f53d2c9c5a9e133596e2f7bc1c50688a6d38
  • <4cab761fc51c65aef741fcece4a18f3554edbc09
  • ==4.13
  • <85f34ec320d3881badfd4edc5fee5cd5012bb54d
  • <4.13
  • <72df896e31ddd06fcc5a789f025ad7a62a18bc9b
  • <14e9f86564fff7bcf7f45c1b69080e837b31d185
  • <fb9a3c1f547d0ff024dbfe7b6f327626ddf0a3de
  • <29394f722f620281f2ee9a47f947734e53d72c90
  • =<5.15.*
  • =<6.18.*
  • =<7.0.*
Dismissed
(max. allowed matches exceeded)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
libceph: Fix potential out-of-bounds access in osdmap_decode()

In the Linux kernel, the following vulnerability has been resolved: libceph: Fix potential out-of-bounds access in osdmap_decode() When decoding osd_state and osd_weight from an incoming osdmap in osdmap_decode(), both are decoded for each osd, i.e., map->max_osd times. The ceph_decode_need() check only accounts for sizeof(*map->osd_weight) once. This can potentially result in an out-of-bounds memory access if the incoming message is corrupted such that the max_osd value exceeds the actual content of the osdmap message. This patch fixes the issue by changing the corresponding part in the ceph_decode_need() check to account for map->max_osd*sizeof(*map->osd_weight).

Affected products

Linux
  • <8713bbc4b2b9ad78f803978e54b7e49dd21bd9be
  • <5.3
  • <0d2dd7e6bb74fd7712aa73457a4a821906c6863a
  • <36a79759a288961b1ff28a68ec2d1f56f6848098
  • <35d0ed82d03e5ee77ea4f31f20e29562a7721649
  • =<5.15.*
  • =<6.1.*
  • <3f2575bb7f955d42569d96c3e04fa958a0dcf4b4
  • <ee933694645dac062d65fc2743f92bc06fa0db6b
  • =<6.12.*
  • =<6.18.*
  • =<7.0.*
  • <e7187f33c02488697ec0d01d82bf7a3f8deaba8f
  • <48df98d12b15360cd56af5c1f460307b340c1197
  • =<*
  • ==5.3
  • =<6.6.*
  • =<5.10.*
Dismissed
(max. allowed matches exceeded)
Permalink CVE-2026-13023
5.3 MEDIUM
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): High (H)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): Required (R)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): High (H)
  • Integrity (I): None (N)
  • Availability (A): None (N)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): High (H)
  • 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): None (N)
  • Modified Availability (MA): None (N)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Uninitialized Use in GPU in Google Chrome prior to 149.0.7827.197 …

Uninitialized Use in GPU in Google Chrome prior to 149.0.7827.197 allowed a remote attacker who had compromised the renderer process to obtain potentially sensitive information from process memory via a crafted HTML page. (Chromium security severity: High)

Affected products

Chrome
  • <149.0.7827.197
Dismissed
(max. allowed matches exceeded)
Permalink CVE-2026-13024
4.2 MEDIUM
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): High (H)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): Required (R)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): Low (L)
  • Integrity (I): None (N)
  • Availability (A): Low (L)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): High (H)
  • Modified Privileges Required (MPR): None (N)
  • Modified User Interaction (MUI): Required (R)
  • Modified Confidentiality (MC): Low (L)
  • Modified Scope (MS): Unchanged (U)
  • Modified Integrity (MI): None (N)
  • Modified Availability (MA): Low (L)
created 2 months ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Insufficient validation of untrusted input in Navigation in Google Chrome …

Insufficient validation of untrusted input in Navigation in Google Chrome prior to 149.0.7827.197 allowed a remote attacker who had compromised the renderer process to bypass site isolation via a crafted HTML page. (Chromium security severity: High)

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
drm/bridge: cadence: cdns-mhdp8546-core: Set the mhdp connector earlier in atomic_enable()

In the Linux kernel, the following vulnerability has been resolved: drm/bridge: cadence: cdns-mhdp8546-core: Set the mhdp connector earlier in atomic_enable() In case if we get errors in cdns_mhdp_link_up() or cdns_mhdp_reg_read() in atomic_enable, we will go to cdns_mhdp_modeset_retry_fn() and will hit NULL pointer while trying to access the mutex. We need the connector to be set before that. Unlike in legacy cases with flag !DRM_BRIDGE_ATTACH_NO_CONNECTOR, we do not have connector initialised in bridge_attach(), so add the mhdp->connector_ptr in device structure to handle both cases with DRM_BRIDGE_ATTACH_NO_CONNECTOR and !DRM_BRIDGE_ATTACH_NO_CONNECTOR, set it in atomic_enable() earlier to avoid possible NULL pointer dereference in recovery paths like modeset_retry_fn() with the DRM_BRIDGE_ATTACH_NO_CONNECTOR flag set.

Affected products

Linux
  • <43d6508ddbf9fb974fbc359a033154f78c9d4c8b
  • =<*
  • <6.6
  • =<6.18.*
  • =<7.0.*
  • <5302015daf26ef6b48e067f2b86c9482ac19e015
  • ==6.6
  • =<6.6.*
  • <cf2ac2cac8b319f89b3a3851ca0c5ffb6a549575
  • <a3611554e599d1a24b45fd8415bacb72ce861e4b
  • =<6.12.*
  • <1af3b42e08a957e53bab8e1897393fe0a27d9fbf