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 2 months, 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
drm/amdkfd: Fix buffer overflow in SDMA queue checkpoint/restore on GFX11

In the Linux kernel, the following vulnerability has been resolved: drm/amdkfd: Fix buffer overflow in SDMA queue checkpoint/restore on GFX11 The v11 MQD manager incorrectly assigned the CP-compute variants of checkpoint_mqd/restore_mqd for KFD_MQD_TYPE_SDMA queues. These functions use sizeof(struct v11_compute_mqd) (2048 bytes) instead of sizeof(struct v11_sdma_mqd) (512 bytes), causing a 1536-byte overflow. During CRIU checkpoint of an SDMA queue on Navi3x: - checkpoint_mqd() reads 2048 bytes from a 512-byte SDMA MQD buffer, leaking 1536 bytes of adjacent GTT memory to userspace During CRIU restore: - restore_mqd() writes 2048 bytes into a 512-byte SDMA MQD buffer, corrupting 1536 bytes of adjacent GTT memory (often the ring buffer or neighboring MQDs) This is a copy-paste regression unique to v11. All other ASIC backends (cik, vi, v9, v10, v12) correctly use the SDMA-specific variants. Add checkpoint_mqd_sdma() and restore_mqd_sdma() functions that properly handle the smaller v11_sdma_mqd structure, matching the pattern used in other MQD managers. (cherry picked from commit 6fa41db7ffdec97d62433adf03b7b9b759af8c2c)

Affected products

Linux
  • <5.19
  • <d02f05d30f35b036f7cbaf72de634affb5b38ec6
  • ==5.19
  • =<*
  • <16dad1fb0d783a4008de30e32d0038c393de05b1
  • <2c5b66c9b4057b385566940935ebc32f6e6ebfd2
  • =<6.18.*
  • =<6.12.*
  • =<6.6.*
  • =<7.0.*
  • <d3efcadfe3eea5b4263b8f2d4463b15c9fc46a64
  • <352ea59028ea48a6fff77f19ae28f98f71946a80
Dismissed
(max. allowed matches exceeded)
created 2 months, 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
drm/amd/display: Fix NULL deref and buffer over-read in SDP debugfs

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Fix NULL deref and buffer over-read in SDP debugfs [Why & How] dp_sdp_message_debugfs_write() dereferences connector->base.state->crtc without checking for NULL. A connector can be connected but not bound to any CRTC (e.g. after hot-plug before the next atomic commit), causing a kernel crash when writing to the sdp_message debugfs node. The function also ignores the user-provided size argument and always passes 36 bytes to copy_from_user(), reading past the user buffer when size < 36. Fix both issues by: - Returning -ENODEV when connector->base.state or state->crtc is NULL - Clamping write_size to min(size, sizeof(data)) (cherry picked from commit 6ab4c36a522842ff70474a1c0af2e40e50fc8300)

Affected products

Linux
  • <a2de1d71891a038a9346b2c1a72b88c8350f2479
  • <5.2
  • =<6.1.*
  • =<*
  • <bb6f705b73b5f191f14ad004e2c8c4b615806187
  • =<5.15.*
  • <c90954cdea4d6998ec345de0d840d030c145b89e
  • =<5.10.*
  • <b781f90a9528555c709e59789550893581ef0be4
  • =<6.18.*
  • <ee9cfcf77a8e8af637396dc00966df5f701e661c
  • <7fc4fab4acc307ad2903312c195872b2953d32c3
  • <7ae95c0275c330b5dbae806f8e431720edad776f
  • <adf67034b1f61f7119295208085bfd43f85f56af
  • ==5.2
  • =<6.6.*
  • =<6.12.*
  • =<7.0.*
Dismissed
(max. allowed matches exceeded)
created 2 months, 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
iomap: avoid potential null folio->mapping deref during error reporting

In the Linux kernel, the following vulnerability has been resolved: iomap: avoid potential null folio->mapping deref during error reporting When a buffered read fails, iomap_finish_folio_read() reports the error with fserror_report_io(folio->mapping->host, ...). This is called after ifs->read_bytes_pending has been decremented by the bytes attempted to be read. For a folio split across multiple read completions, the folio is only guaranteed to stay locked while read_bytes_pending > 0. Once iomap_finish_folio_read() decrements read_bytes_pending, another in-flight read can complete and end the read on the folio, which unlocks it. This allows truncate logic to run and detach the folio (set folio->mapping to NULL). The error reporting path then can dereference a NULL folio->mapping. As reported by Sam Sun, this is the race that can occur: CPU0: failed completion CPU1: final completion CPU2: truncate ----------------------- ---------------------- -------------- read_bytes_pending -= len finished = false /* preempted before fserror_report_io() */ read_bytes_pending -= len finished = true folio_end_read() truncate clears folio->mapping fserror_report_io( folio->mapping->host, ...) ^ NULL deref Fix this by reporting the error first before decrementing ifs->read_bytes_pending.

Affected products

Linux
  • <2eea7f44b9c8b42fd7d3a1a87c06a7cd1b99c327
  • =<*
  • <1ad453817a4077230d1ba88eb0868f05f824449a
  • ==7.0
  • <7.0
  • =<7.0.*
Dismissed
(max. allowed matches exceeded)
created 2 months, 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
net/sched: act_api: use RCU with deferred freeing for action lifecycle

In the Linux kernel, the following vulnerability has been resolved: net/sched: act_api: use RCU with deferred freeing for action lifecycle When NEWTFILTER and DELFILTER are run concurrently it is possible to create a race with an associated action. Let's illustrate with CPU0 running NEWTFILTER and CPU1 running DELFILTER: 0: mutex_lock() <-- holds the idr lock 0: rcu_read_lock() 0: p = idr_find(idr, index) <-- action p is valid (RCU protects IDR) 0: mutex_unlock() <-- releases the idr lock 1: refcount_dec_and_mutex_lock() <-- refcnt 1->0, mutex held 1: idr_remove(idr, index) <-- Action removed from IDR 1: mutex_unlock() <-- mutex released allowing us to delete the action 1: tcf_action_cleanup(p); kfree(p) <-- Kfrees p immediately, no deferral 0: refcount_inc_not_zero(&p->tcfa_refcnt) <-- ouch, UAF p points to freed memory This patch fixes the race condition between NEWTFILTER and DELFILTER by adding struct rcu_head to tc_action used in the deferral and introducing a call_rcu() in the delete path to defer the final kfree(). Note: this is a revert of commit d7fb60b9cafb ("net_sched: get rid of tcfa_rcu") but also modernization/simplification to directly use kfree_rcu(). Let's illustrate the new restored code path: 0: rcu_read_lock() 1: refcount_dec_and_mutex_lock() <-- refcnt 1->0, mutex held 1: idr_remove(idr, index) 1: mutex_unlock() 1: call_rcu(&p->tcfa_rcu, tcf_action_rcu_free) <-- defer kfree after grace period 0: p = idr_find(idr, index) 0: refcount_inc_not_zero(&p->tcfa_refcnt) <-- fails, refcnt already 0 1: rcu_read_unlock() <-- release so freeing can run after grace period After CPU1 calls idr_remove(), the object is no longer reachable through the IDR. CPU0's subsequent idr_find() will return NULL, and even if it still held a stale pointer, the immediate kfree() is now deferred until after the RCU grace period, so no UAF can occur.

Affected products

Linux
  • <1f1b98fea6b9ea30507d0f2fbff6750292d097e2
  • <8b136f18ac4b2ace5aaad3305b3f8a5d8165a009
  • ==4.14
  • <4.14
  • <5057e1aca011e51ef51498c940ef96f3d3e8a305
  • =<6.1.*
  • =<*
  • <18af5d2ef0c4f65787fd1280c8b23286b9f2a835
  • <98b2e40879abf0245be5a5b7af69e0f6ff524ac3
  • =<5.15.*
  • =<5.10.*
  • =<6.18.*
  • =<6.6.*
  • =<6.12.*
  • =<7.0.*
  • <91d105d2cbe002f9c7b43a6183adedc37e1da1f7
  • <b60e9391142e983fab2be53497aa8f71fdd09cd5
  • <5dd51e09020c65aa53cf128e5e3517cd53b3c113
Dismissed
(max. allowed matches exceeded)
created 2 months, 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
drm/amd/display: Clamp VBIOS HDMI retimer register count to array size

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Clamp VBIOS HDMI retimer register count to array size [Why & How] The VBIOS integrated info tables (v1_11 and v2_1) contain HdmiRegNum and Hdmi6GRegNum fields that are used as loop bounds when copying retimer I2C register settings into fixed-size arrays (dp*_ext_hdmi_reg_settings[9] and dp*_ext_hdmi_6g_reg_settings[3]). These u8 fields are not validated before use, so a malformed VBIOS can specify values up to 255, causing an out-of-bounds heap write during driver probe. Clamp each register count to the destination array size using min_t() before the copy loops, in both get_integrated_info_v11() and get_integrated_info_v2_1(). (cherry picked from commit 5a7f0ef90195940c54b0f5bb85b87da55f038c69)

Affected products

Linux
  • <7.0.13
  • <029571d51140650783be4fb98fe7cb4754752086
  • =<*
  • =<6.12.*
  • <8aaa7e317fbd4beb9c6a9f77aa4cf52fae78b117
  • <fb0707ce00eef4e2d60c3020e1c0432739703e4a
  • =<6.1.*
  • <d6be8e59af412623e3d874be3a048406c0edfe60
  • =<6.6.*
  • <6.6.143
  • <5.15.210
  • <4d1c3c26c2ab1842e139e61983395d64bd2e518b
  • <6.1.176
  • <5f8b39452fb16f507c9e4d8b4a83ce27e893307c
  • <6.12.94
  • =<5.15.*
  • =<6.18.*
  • =<7.0.*
  • <3f32d52ec604c659725d865cf8cc6a17a33f9c6a
  • <6.18.36
Dismissed
(already tracked in derivation metadata)
Permalink CVE-2026-55698
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)
updated 1 week, 3 days ago by @ADMIN Activity log
  • Created suggestion
  • @ADMIN dismissed (already tracked in derivation metadata)
pnpm: Project env lockfile can short-circuit package-manager resolution and execute lockfile-selected pnpm bytes

pnpm is a package manager. Prior to 10.34.2 and 11.5.3, pnpm can persist package-manager bootstrap metadata in the first YAML document of pnpm-lock.yaml. Before the patch, direct pnpm execution trusted an already resolved packageManagerDependencies entry when the committed env lockfile contained matching pnpm and @pnpm/exe versions. A malicious repository could therefore commit package-manager lockfile package records and snapshots that bypassed fresh package-manager resolution, then cause pnpm to install and execute bytes selected by that committed lockfile state during automatic version switching. This vulnerability is fixed in 10.34.2 and 11.5.3.

Affected products

pnpm
  • ==>= 11.0.0, < 11.5.3
  • ==< 10.34.2

Matching in nixpkgs

pkgs.pnpm_10_34_0

Fast, disk space efficient package manager for JavaScript

  • nixos-unstable -

Package maintainers

Dismissed
(already tracked in derivation metadata)
Permalink CVE-2026-50014
6.4 MEDIUM
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): High (H)
  • Privileges Required (PR): Low (L)
  • User Interaction (UI): Required (R)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): High (H)
  • Integrity (I): High (H)
  • Availability (A): None (N)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): High (H)
  • Modified Privileges Required (MPR): Low (L)
  • Modified User Interaction (MUI): Required (R)
  • Modified Confidentiality (MC): High (H)
  • Modified Scope (MS): Unchanged (U)
  • Modified Integrity (MI): High (H)
  • Modified Availability (MA): None (N)
updated 1 week, 3 days ago by @ADMIN Activity log
  • Created suggestion
  • @ADMIN dismissed (already tracked in derivation metadata)
pnpm: Git Fetch Argument Injection via Lockfile resolution.commit

pnpm is a package manager. Prior to 10.34.0 and 11.4.0, pnpm passes the lockfile-controlled git resolution.commit value to git fetch without a -- separator or commit-format validation. For git dependencies fetched through the shallow-fetch path, a malicious lockfile can replace the expected 40-character commit hash with a Git option such as --upload-pack=<command>. For SSH and local transports, --upload-pack can execute the supplied command. HTTPS transports ignore --upload-pack, so the practical attack surface is primarily SSH or local git dependencies. This vulnerability is fixed in 10.34.0 and 11.4.0.

Affected products

pnpm
  • ==>= 11.0.0, < 11.4.0
  • ==< 10.33.4

Matching in nixpkgs

pkgs.pnpm_10_29_2

Fast, disk space efficient package manager for JavaScript

  • nixos-unstable -
  • nixos-26.05 -

Package maintainers

Dismissed
(max. allowed matches exceeded)
Permalink CVE-2026-5796
4.3 MEDIUM
  • CVSS version (CVSS): 3.1
  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): Low (L)
  • User Interaction (UI): None (N)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): Low (L)
  • Integrity (I): None (N)
  • Availability (A): None (N)
  • Modified Attack Vector (MAV): Network (N)
  • Modified Attack Complexity (MAC): Low (L)
  • Modified Privileges Required (MPR): Low (L)
  • Modified User Interaction (MUI): None (N)
  • Modified Confidentiality (MC): Low (L)
  • Modified Scope (MS): Unchanged (U)
  • Modified Integrity (MI): None (N)
  • Modified Availability (MA): None (N)
created 2 months, 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
Incorrect Authorization in GitLab

GitLab has remediated an issue in GitLab CE/EE affecting all versions from 13.6 before 18.11.6, 19.0 before 19.0.3, and 19.1 before 19.1.1 that under certain conditions could have allowed an authenticated user with Reporter-level group permissions to view package metadata from projects with the Package Registry disabled due to incorrect authorization checks in the group packages feature.

Affected products

GitLab
  • <19.1.1
  • <19.0.3
  • <18.11.6
Dismissed
(max. allowed matches exceeded)
created 2 months, 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
accel/ivpu: Add bounds checks for firmware log indices

In the Linux kernel, the following vulnerability has been resolved: accel/ivpu: Add bounds checks for firmware log indices Add validation that read and write indices in the firmware log buffer are within valid bounds (< data_size) before using them. If out-of-bounds indices are encountered (from firmware), clamp them to safe values instead of proceeding with invalid offsets. This prevents potential out-of-bounds buffer access when firmware supplies invalid log indices.

Affected products

Linux
  • ==6.13
  • <6.13
  • <8ec70c0dbdf04392a26e03e38798a373934177be
  • <6.12.94
  • =<*
  • <535da9ad8420c3b686a642403d4147ff220255fd
  • <5961c703414048f46818be8bbb11075a9a63fb4e
  • =<6.18.*
  • =<7.0.*
  • =<6.12.*
  • <dd1311bcf0e62f0c515115f46a3813370f4a4bb1
Dismissed
(max. allowed matches exceeded)
created 2 months, 4 weeks ago Activity log
  • Created & dismissed (max. allowed matches exceeded) suggestion
netfilter: nft_exthdr: fix register tracking for F_PRESENT flag

In the Linux kernel, the following vulnerability has been resolved: netfilter: nft_exthdr: fix register tracking for F_PRESENT flag nft_exthdr_init() passes user-controlled priv->len to nft_parse_register_store(), which marks that many bytes in the register bitmap as initialized. However, when NFT_EXTHDR_F_PRESENT is set, the eval paths write only 1 byte (nft_reg_store8) or 4 bytes (*dest = 0 on TCP/DCCP error path). When len > 4, registers beyond the first are never written, retaining uninitialized stack data from nft_regs. Bail out if userspace requests too much data when F_PRESENT is set.

Affected products

Linux
  • <19748967d59c31d24d21d40b728570788310b237
  • <772cecf198da732faebb5dcfc46d66a505be8495
  • =<6.1.*
  • <4.11
  • =<*
  • <78069a6d8bc86c9e036eb82c2af4a19cc1871a53
  • <67b27434c43b68a97becda98c9f0c8cf6cba2134
  • =<5.15.*
  • =<5.10.*
  • ==4.11
  • =<6.18.*
  • <f08fb3d42fd3aad0b7a263da3ac3ebaf0845e265
  • =<6.6.*
  • =<6.12.*
  • <46fc15a044e9938e7ea77786fb37edd2cd74f031
  • =<7.0.*
  • <cd513e43b4b2bd1de39e2367bc4261c699a8652f
  • <8738b1b6d0e639ca1fc0f61516afd3557ac4ecc6