GHSA-7587-4wv6-m68m: Pgp RPGP Vulnerable To Parser Crash Vulnerability
HIGHGHSA-7587-4wv6-m68m is a HIGH rpgp vulnerable to parser crash vulnerability (CWE-703: Improper Check or Handling of Exceptional Conditions) affecting Pgp libraries in the crates.io ecosystem. The issue involves rpgp vulnerable to parser crash on crafted rsa secret key packets through cve-2026-21895. Remediation is available by upgrading affected packages to version 0.19.0.
GHSA-7587-4wv6-m68m at a Glance
How to Fix GHSA-7587-4wv6-m68m
To remediate this vulnerability, upgrade all affected Pgp dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.
Upgrade pgp to 0.19.0
Run the following command in your project directory to verify that all resolved dependencies use the patched release:
inspect dependencies for pgp
How to Check if You Are Affected
To determine whether your application is affected by GHSA-7587-4wv6-m68m, inspect your project dependencies for Pgp:
inspect dependencies for pgp
Analyze the terminal output to locate any version of Pgp in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 0.19.0), your application is affected.
Note: Verify declared build manifests and deployed runtime container environments.
Technical Details
Vulnerability Mechanism & Technical Analysis
This vulnerability is classified under CWE-703: Improper Check or Handling of Exceptional Conditions, where the product does not properly anticipate or handle exceptional conditions that rarely occur during normal operation of the product. In Pgp, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.
Source Advisory Statement
GHSA-7587-4wv6-m68m Affected Pgp Versions
1 component(s)| Product / Package | Ecosystem | Affected Versions | Fixed Version |
|---|---|---|---|
|
pgp
|
crates.io |
≥ 0.16.0-alpha.0
< 0.19.0
|
0.19.0
|
References
Frequently Asked Questions
What is GHSA-7587-4wv6-m68m?
Which Pgp versions are affected?
What version fixes GHSA-7587-4wv6-m68m?
Is pgp affected?
What CWE is associated with GHSA-7587-4wv6-m68m?
How can I check crates.io dependencies for GHSA-7587-4wv6-m68m?
Machine-readable OSV JSON
OSV v1.5 Schema
{
"schema_version" : "1.4.0",
"id" : "GHSA-7587-4wv6-m68m",
"modified" : "2026-02-13T20:54:19Z",
"published" : "2026-02-13T20:54:19Z",
"aliases" : [ ],
"summary" : "rPGP vulnerable to parser crash on crafted RSA secret key packets through CVE-2026-21895",
"details" : "### Summary\nIt was possible to trigger an unhandled edge case in the Rust Crypto rsa crate through rPGP packet parsing functionality, and crash the process that runs rPGP. This problem has been patched in a new rsa version. The new release of rPGP ensures a patched version of the rsa crate is in use, which prevents this issue.\n\n### Details\nWhile parsing a special RSA secret key packet, rPGP calls the rsa crate with the provided key. On vulnerable versions, this results in a Rust \"panic\" during key construction. Note that an attacker can trigger this situation even in places where applications don't expect to handle foreign key material, for example while attempting to receive a message.\n\nFor more information on the rsa crate vulnerability, see https://github.com/RustCrypto/RSA/security/advisories/GHSA-9c48-w39g-hm26 and https://github.com/RustCrypto/RSA/pull/624.\nIn rPGP, this has been fixed via https://github.com/rpgp/rpgp/pull/698.\n\n### Impact\nThis issue impacts availability (i.e. applications can crash).\n\nAffected rPGP versions: rPGP 0.16.0-alpha.0 to 0.18.0\nVulnerable rsa versions: all before version 0.9.10\n\n### Workaround\nThe issue depends on the combination of affected rPGP and rsa versions. Users of affected rPGP versions can pin the patched rsa 0.9.10 via a cargo lockfile to mitigate the issue.\n\n### Attribution\nDiscovered by Christian Reitter from Radically Open Security during a security review for Proton AG.",
"severity" : [ {
"type" : "CVSS_V4",
"score" : "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N"
} ],
"affected" : [ {
"package" : {
"ecosystem" : "crates.io",
"name" : "pgp"
},
"ranges" : [ {
"type" : "ECOSYSTEM",
"events" : [ {
"introduced" : "0.16.0-alpha.0"
}, {
"fixed" : "0.19.0"
} ]
} ]
} ],
"references" : [ {
"type" : "WEB",
"url" : "https://github.com/rpgp/rpgp/security/advisories/GHSA-7587-4wv6-m68m"
}, {
"type" : "WEB",
"url" : "https://github.com/rpgp/rpgp/pull/698"
}, {
"type" : "WEB",
"url" : "https://github.com/rpgp/rpgp/commit/38efa49ce18b3821649de9cd8dea88a959b833a5"
}, {
"type" : "PACKAGE",
"url" : "https://github.com/rpgp/rpgp"
} ],
"database_specific" : {
"cwe_ids" : [ "CWE-703" ],
"severity" : "HIGH",
"github_reviewed" : true,
"github_reviewed_at" : "2026-02-13T20:54:19Z",
"nvd_published_at" : null
}
}