Skip to main content

GnuPG CVE-2026-24882

HIGH
Stack-based Buffer Overflow (CWE-121)
2026-01-27 cve@mitre.org
7.8
CVSS 3.1 · NVD
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain local low-privilege access
  2. Delivery
    Identify TPM-backed GnuPG keys
  3. Exploit
    Send crafted PKDECRYPT to tpm2daemon
  4. Execution
    Overflow stack buffer in RSA/ECC handler
  5. Persist
    Hijack control flow / execute code in daemon
  6. Impact
    Compromise TPM key operations

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2021 - Vulnerable and Outdated Components
ASVS 5.0
V15 - Secure Coding and Architecture Stack buffer bounds checking
MITRE ATT&CK

1 technique across 1 tactic: Execution

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires local access to a host where GnuPG is configured to use TPM-backed (TPM 2.0) RSA or ECC private keys, and the ability to send the PKDECRYPT command to the running tpm2daemon (typically via gpg-agent or the daemon's local socket). The decisive prerequisite is that the TPM/tpm2daemon feature is actually in use - on default GnuPG installations without TPM-sealed keys the vulnerable code path is not exercised. Limiting factors: the attack is local only (AV:L), requires at least low privileges to reach the daemon socket (PR:L), needs no user interaction (UI:N), and the impact is confined to the daemon process scope (S:U). This sharply narrows realistic exposure to multi-user systems or compromised low-priv accounts on TPM-enabled deployments.

Impact

The signals point to a genuine but locally-scoped, low-urgency issue. The CVSS 3.1 vector (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, base 7.8) describes a local attacker with low privileges and no user interaction achieving full confidentiality, integrity and availability impact on the daemon - consistent with the description, which requires interaction with the local tpm2daemon socket. EPSS is 0.01% (0th percentile), indicating essentially no observed mass-exploitation, and the CVE is NOT in CISA KEV, so there is no confirmed active exploitation; however publicly available exploit code exists, raising the practical risk for targeted local privilege/key-compromise on multi-user or TPM-enabled hosts. The signals are internally consistent (local vector + low EPSS + PoC but no KEV = a credible local issue, not a remote worm). One caveat: exploitation is only relevant where TPM-backed GnuPG keys are actually configured, so the real-world exposed population is far smaller than the GnuPG install base; treat as a standard-priority patch rather than an emergency.

Exploit ScenarioDerived

A local user (or an attacker who has already gained low-privilege code execution) on a host that uses TPM-backed GnuPG keys sends a specially crafted PKDECRYPT request to tpm2daemon, overflowing a stack buffer in the RSA/ECC decryption handler. Because public exploit code exists, the attacker can reliably corrupt the stack to crash the daemon or execute code in its context, compromising TPM-mediated key operations. The local attack vector and low complexity (AV:L/AC:L) mean no network position or user interaction is needed, only access to the local daemon.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv5 – Jun 30, 2026

Stack-based buffer overflow in GnuPG's tpm2daemon (versions before 2.5.17) allows a local attacker to corrupt the daemon's stack by sending a crafted PKDECRYPT command targeting TPM-backed RSA or ECC keys, potentially achieving arbitrary code execution in the daemon's context. The flaw affects GnuPG and the bundled Gpg4win distribution and has been patched by upstream and major Linux vendors (Red Hat, SUSE). Publicly available exploit code exists, though the EPSS score is negligible (0.01%) and it is not listed in CISA KEV (no public exploit identified as actively exploited in the wild).

Earlier versions of this analysis (4)
v4 Jun 30, 2026 - 05:55 cvss changed CVSS 7.8

Stack-based buffer overflow in GnuPG's tpm2daemon (versions before 2.5.17) lets a local low-privileged attacker corrupt memory by sending a crafted PKDECRYPT command targeting TPM-backed RSA and ECC keys, potentially achieving arbitrary code execution in the daemon's context. Publicly available exploit code exists, but the issue is not in CISA KEV and carries a near-zero EPSS (0.01%), indicating no observed in-the-wild exploitation. A vendor patch (2.5.17) plus Red Hat and SUSE distribution updates are available.

v3 Jun 30, 2026 - 05:53 cvss changed CVSS 7.8

Stack-based buffer overflow in GnuPG's tpm2daemon (gpg-agent's TPM bridge) before 2.5.17 lets a local low-privileged attacker corrupt memory by issuing a crafted PKDECRYPT command against TPM-backed RSA or ECC keys, enabling code execution with the daemon's privileges and full compromise of confidentiality, integrity and availability. Publicly available exploit code exists, though EPSS rates real-world exploitation probability at just 0.01% and the flaw is not in CISA KEV. The issue is fixed in GnuPG 2.5.17 and has been backported by Red Hat and SUSE.

v2 Jun 30, 2026 - 05:53 cvss changed CVSS 7.8

Local privilege/code execution via a stack-based buffer overflow in GnuPG's tpm2daemon (TPM 2.0 bridge) affects all GnuPG releases before 2.5.17, triggered while processing the PKDECRYPT command for TPM-backed RSA and ECC keys. A local attacker who can feed crafted input to the daemon's decrypt path can corrupt the stack and potentially run code in the daemon's context. Publicly available exploit code exists, but EPSS is negligible (0.01%) and it is not in CISA KEV, so this is a real but low-probability, locally-scoped issue rather than a mass-exploitation threat.

v1 Mar 12, 2026 - 21:55 CVSS 8.4

In GnuPG before 2.5.17, a stack-based buffer overflow exists in tpm2daemon during handling of the PKDECRYPT command for TPM-backed RSA and ECC keys. [CVSS 8.4 HIGH]

RemediationAI

Vendor-released patch: upgrade to GnuPG 2.5.17 or later, which contains the upstream fix referenced in https://dev.gnupg.org/T8045 and the disclosure at https://www.openwall.com/lists/oss-security/2026/01/27/8. On Red Hat systems apply the updates in RHSA-2026:2719 / RHSA-2026:2753 (https://access.redhat.com/errata/RHSA-2026:2719); on SUSE apply SUSE-SU-2026:0434 or the corresponding 20179/20195/20444/20487 update; Gpg4win users should install the GnuPG-2.5.17-based release. If immediate patching is not possible, the practical compensating control is to avoid using TPM-backed keys - do not configure or migrate GnuPG private keys into the TPM, and stop or disable tpm2daemon so the vulnerable PKDECRYPT path is never reached (trade-off: TPM-sealed keys become unavailable and operations fall back to on-disk software keys). Additionally restrict local access to the host and the gpg-agent/tpm2daemon sockets to trusted users, since exploitation requires local interaction with the daemon.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

tpm2daemon is GnuPG's bridge component (introduced in the 2.3/2.5 development line) that proxies private-key operations to a Trusted Platform Module, allowing GnuPG private keys to be sealed to and operated by TPM 2.0 hardware. When gpg-agent needs to decrypt data with a TPM-backed key, it forwards a PKDECRYPT Assuan protocol command to tpm2daemon, which marshals the ciphertext and key parameters for the TPM. The vulnerability is a CWE-121 stack-based buffer overflow: while handling PKDECRYPT for RSA and ECC keys the daemon copies attacker-influenced data into a fixed-size stack buffer without adequate bounds checking, corrupting the saved return address and adjacent stack state. The affected code paths are present in GnuPG (cpe:2.3:a:gnupg:gnupg) and in the Gpg4win packaging (cpe:2.3:a:gpg4win:gpg4win).

Know when Gnupg gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

NVD PRIMARY 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 7.8 HIGH

Local socket access to tpm2daemon needs low privileges (AV:L/PR:L), no user interaction, and stack overflow yields full code execution in the daemon (C/I/A:H, scope unchanged).

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE 8.4 HIGH
AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Red Hat 8.4 HIGH

Primary rating from NVD.

CVSS VectorNVD

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

8
Analysis Updated
Jun 30, 2026 - 05:57 vuln.today
v5 - CVSS changed
Analysis Updated
Jun 30, 2026 - 05:55 vuln.today
v4 - CVSS changed
Analysis Updated
Jun 30, 2026 - 05:53 vuln.today
v3 - CVSS changed
Analysis Updated
Jun 30, 2026 - 05:53 vuln.today
v2 - CVSS changed
CVSS changed
Jun 30, 2026 - 03:23 NVD
8.4 (HIGH) 7.8 (HIGH)
Patch released
Apr 09, 2026 - 20:30 nvd
Patch available
PoC Detected
Feb 06, 2026 - 17:50 vuln.today
Public exploit code
CVE Published
Jan 27, 2026 - 19:16 nvd
HIGH 8.4

DescriptionNVD

In GnuPG before 2.5.17, a stack-based buffer overflow exists in tpm2daemon during handling of the PKDECRYPT command for TPM-backed RSA and ECC keys.

Executive ViewAI

Why It Matters

GnuPG versions before 2.5.17 (including Gpg4win) contain a stack buffer overflow in tpm2daemon that permits local attackers to achieve arbitrary code execution in the daemon process, potentially compromising cryptographic key operations. Organizations must patch immediately to prevent privilege escalation and unauthorized access to TPM-backed encryption keys in any system where a threat actor gains local access.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.0%
Top 100% exploitable
Prevalence
High
GnuPG ubiquitous, but vulnerable tpm2daemon TPM-key feature far less commonly enabled
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Small
Automatable· derived
No
Human Impact
High

Priority Score

59
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

A stack-based buffer overflow occurs when a program writes more data to a buffer located on the stack than it was allocated to hold.

Affected Products (CPE)NVD

cpe:2.3:a:gnupg:gnupg:*:*:*:*:-:*:*:*
cpe:2.3:a:gpg4win:gpg4win:*:*:*:*:*:*:*:*

More in Gnupg

View all
CVE-2026-24881 CRITICAL POC
9.8 Jan 27

Remote code execution and denial of service in GnuPG before 2.5.17 stem from a stack-based buffer overflow in gpg-agent

CVE-2018-1000858 HIGH POC
8.8 Dec 20

GnuPG version 2.1.12 - 2.2.11 contains a Cross ite Request Forgery (CSRF) vulnerability in dirmngr that can result in At

CVE-2018-6829 HIGH POC
7.5 Feb 07

cipher/elgamal.c in Libgcrypt through 1.8.2, when used to encrypt messages directly, improperly encodes plaintexts, whic

CVE-2020-25125 HIGH POC
7.8 Sep 03

GnuPG 2.2.21 and 2.2.22 (and Gpg4win 3.1.12) has an array overflow, leading to a crash or possibly unspecified other imp

CVE-2019-13050 HIGH POC
7.5 Jun 29

Interaction between the sks-keyserver code through 1.2.0 of the SKS keyserver network, and GnuPG through 2.2.16, makes i

CVE-2022-34903 MEDIUM POC
6.5 Jul 01

GnuPG through 2.3.6, in unusual situations where an attacker possesses any secret-key information from a victim's keyrin

CVE-2012-6085 MEDIUM POC
5.8 Jan 24

The read_block function in g10/import.c in GnuPG 1.4.x before 1.4.13 and 2.0.x through 2.0.19, when importing a key, all

CVE-2021-40528 MEDIUM POC
5.9 Sep 06

The ElGamal implementation in Libgcrypt before 1.9.4 allows plaintext recovery because, during interaction between two c

CVE-2026-118131 CRITICAL
9.8 Oct 27

Code execution in a victim user's context is possible on Windows hosts running GnuPG 2.5.21 because default DACL inherit

CVE-2022-47629 CRITICAL
9.8 Dec 20

Libksba before 1.6.3 is prone to an integer overflow vulnerability in the CRL signature parser. Rated critical severity

CVE-2014-9087 HIGH
7.5 Dec 01

Integer underflow in the ksba_oid_to_str function in Libksba before 1.3.2, as used in GnuPG, allows remote attackers to

CVE-2018-0495 MEDIUM POC
4.7 Jun 13

Libgcrypt before 1.7.10 and 1.8.x before 1.8.3 allows a memory-cache side-channel attack on ECDSA signatures that can be

Vendor StatusVendor

SUSE

Severity: High
Product Status
Container suse/manager/5.0/x86_64/proxy-httpd:latest Container suse/manager/5.0/x86_64/proxy-salt-broker:latest Container suse/manager/5.0/x86_64/server:latest Container suse/multi-linux-manager/5.1/x86_64/proxy-httpd:5.1.2.8.15.2 Container suse/multi-linux-manager/5.1/x86_64/proxy-salt-broker:5.1.2.9.13.2 Container suse/multi-linux-manager/5.1/x86_64/server-saline:5.1.2.9.13.1 Container suse/multi-linux-manager/5.1/x86_64/server:5.1.2.8.13.2 Image SLES15-SP6-BYOS Image SLES15-SP6-BYOS-EC2 Image SLES15-SP6-HPC-BYOS Image SLES15-SP6-HPC-BYOS-EC2 Image SLES15-SP6-HPC-EC2 Image SLES15-SP6-Hardened-BYOS Image SLES15-SP6-Hardened-BYOS-EC2 Image SLES15-SP6-SAP-BYOS Image SLES15-SP6-SAP-BYOS-EC2 Image SLES15-SP6-SAP-Hardened-BYOS Image SLES15-SP6-SAP-Hardened-BYOS-EC2 Image SLES15-SP6-SAP-Hardened-EC2 Image SLES15-SP7-BYOS-EC2 Image SLES15-SP7-CHOST-BYOS-Aliyun Image SLES15-SP7-CHOST-BYOS-Azure Image SLES15-SP7-CHOST-BYOS-EC2 Image SLES15-SP7-CHOST-BYOS-GCE Image SLES15-SP7-CHOST-BYOS-GDC Image SLES15-SP7-CHOST-BYOS-SAP-CCloud Image SLES15-SP7-GCE-3P Image SLES15-SP7-HPC-BYOS-EC2 Image SLES15-SP7-Hardened-BYOS-EC2 Image SLES15-SP7-SAP-Azure-LI-BYOS-Production Image SLES15-SP7-SAP-Azure-VLI-BYOS-Production Image SLES15-SP7-SAP-BYOS-EC2 Image SLES15-SP7-SAP-EC2 Image SLES15-SP7-SAP-GCE-3P Image SLES15-SP7-SAP-Hardened-BYOS-EC2 Image proxy-salt-broker-image Image server-image Image server-saline-image Affected
Container suse/sl-micro/6.0/baremetal-os-container:2.1.3-6.125 Container suse/sl-micro/6.0/base-os-container:2.1.3-7.94 Container suse/sl-micro/6.0/toolbox:13.2-9.67 Container suse/sl-micro/6.1/baremetal-os-container:2.2.1-7.57 Container suse/sl-micro/6.1/base-os-container:2.2.1-5.78 Image SL-Micro Image SL-Micro-Azure Image SL-Micro-BYOS-Azure Image SL-Micro-BYOS-EC2 Image SL-Micro-BYOS-GCE Image SL-Micro-Base Image SL-Micro-Base-RT Image SL-Micro-Base-RT-SelfInstall Image SL-Micro-Base-RT-encrypted Image SL-Micro-Base-SelfInstall Image SL-Micro-Base-encrypted Image SL-Micro-Base-qcow Image SL-Micro-Default Image SL-Micro-Default-SelfInstall Image SL-Micro-Default-encrypted Image SL-Micro-Default-qcow Image SL-Micro-EC2 Image SUSE-Multi-Linux-Manager-Proxy-BYOS-Azure Image SUSE-Multi-Linux-Manager-Proxy-BYOS-EC2 Image SUSE-Multi-Linux-Manager-Proxy-BYOS-GCE Image SUSE-Multi-Linux-Manager-Server-Azure-llc Image SUSE-Multi-Linux-Manager-Server-Azure-ltd Image SUSE-Multi-Linux-Manager-Server-BYOS-Azure Image SUSE-Multi-Linux-Manager-Server-BYOS-EC2 Image SUSE-Multi-Linux-Manager-Server-BYOS-GCE Image SUSE-Multi-Linux-Manager-Server-EC2-llc Image SUSE-Multi-Linux-Manager-Server-EC2-ltd Affected
Container suse/sles/16.0/toolbox:16.3-1.34 Image SLES-Azure-3P Image SLES-Azure-Basic Image SLES-Azure-Standard Image SLES-BYOS-Azure Image SLES-BYOS-EC2 Image SLES-BYOS-GCE Image SLES-CHOST-BYOS-Aliyun Image SLES-CHOST-BYOS-Azure Image SLES-CHOST-BYOS-EC2 Image SLES-CHOST-BYOS-GCE Image SLES-CHOST-BYOS-GDC Image SLES-CHOST-BYOS-SAP-CCloud Image SLES-EC2 Image SLES-GCE Image SLES-Hardened-BYOS-Azure Image SLES-Hardened-BYOS-EC2 Image SLES-Hardened-BYOS-GCE Image SLES-SAP-Azure Image SLES-SAP-Azure-3P Image SLES-SAP-BYOS-Azure Image SLES-SAP-BYOS-EC2 Image SLES-SAP-BYOS-GCE Image SLES-SAP-GCE Image SLES-SAPCAL-Azure Image SLES-SAPCAL-EC2 Image SLES-SAPCAL-GCE Affected
SUSE Linux Enterprise Desktop 15 SP7 SUSE Linux Enterprise High Performance Computing 15 SP7 SUSE Linux Enterprise Module for Basesystem 15 SP7 SUSE Linux Enterprise Server 15 SP7 SUSE Linux Enterprise Server for SAP Applications 15 SP7 Fixed
SUSE Linux Enterprise Server 15 SP6-LTSS Fixed

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy