Vulnerability Instance
Lookup for vulnerabilities affecting packages.
GET /api/vulnerabilities/45925?format=api
{ "url": "http://public2.vulnerablecode.io/api/vulnerabilities/45925?format=api", "vulnerability_id": "VCID-y9pn-esju-ffec", "summary": "Improper Verification of Cryptographic Signature\nOpenPGP.js is a JavaScript implementation of the OpenPGP protocol. In affected versions OpenPGP Cleartext Signed Messages are cryptographically signed messages where the signed text is readable without special tools. These messages typically contain a \"Hash: ...\" header declaring the hash algorithm used to compute the signature digest. OpenPGP.js up to v5.9.0 ignored any data preceding the \"Hash: ...\" texts when verifying the signature. As a result, malicious parties could add arbitrary text to a third-party Cleartext Signed Message, to lead the victim to believe that the arbitrary text was signed. A user or application is vulnerable to said attack vector if it verifies the CleartextMessage by only checking the returned `verified` property, discarding the associated `data` information, and instead _visually trusting_ the contents of the original message. Since `verificationResult.data` would always contain the actual signed data, users and apps that check this information are not vulnerable. Similarly, given a CleartextMessage object, retrieving the data using `getText()` or the `text` field returns only the contents that are considered when verifying the signature. Finally, re-armoring a CleartextMessage object (using `armor()` will also result in a \"sanitised\" version, with the extraneous text being removed. This issue has been addressed in version 5.10.1 (current stable version) which will reject messages when calling `openpgp.readCleartextMessage()` and in version 4.10.11 (legacy version) which will will reject messages when calling `openpgp.cleartext.readArmored()`. Users are advised to upgrade. Users unable to upgrade should check the contents of `verificationResult.data` to see what data was actually signed, rather than visually trusting the contents of the armored message.", "aliases": [ { "alias": "CVE-2023-41037" }, { "alias": "GHSA-ch3c-v47x-4pgp" } ], "fixed_packages": [ { "url": "http://public2.vulnerablecode.io/api/packages/66726?format=api", "purl": "pkg:npm/openpgp@4.10.11", "is_vulnerable": false, "affected_by_vulnerabilities": [], "resource_url": "http://public2.vulnerablecode.io/packages/pkg:npm/openpgp@4.10.11" }, { "url": "http://public2.vulnerablecode.io/api/packages/66727?format=api", "purl": "pkg:npm/openpgp@5.10.1", "is_vulnerable": false, "affected_by_vulnerabilities": [], "resource_url": "http://public2.vulnerablecode.io/packages/pkg:npm/openpgp@5.10.1" } ], "affected_packages": [ { "url": "http://public2.vulnerablecode.io/api/packages/66725?format=api", "purl": "pkg:npm/openpgp@5.0.0", "is_vulnerable": true, "affected_by_vulnerabilities": [ { "vulnerability": "VCID-y9pn-esju-ffec" } ], "resource_url": "http://public2.vulnerablecode.io/packages/pkg:npm/openpgp@5.0.0" } ], "references": [ { "reference_url": "https://github.com/openpgpjs/openpgpjs/commit/6b43e02a254853f5ff508ebd1b07541f78b7c566", "reference_id": "", "reference_type": "", "scores": [], "url": "https://github.com/openpgpjs/openpgpjs/commit/6b43e02a254853f5ff508ebd1b07541f78b7c566" }, { "reference_url": "https://github.com/openpgpjs/openpgpjs/releases/tag/v4.10.11", "reference_id": "", "reference_type": "", "scores": [], "url": "https://github.com/openpgpjs/openpgpjs/releases/tag/v4.10.11" }, { "reference_url": "https://github.com/openpgpjs/openpgpjs/releases/tag/v5.10.1", "reference_id": "", "reference_type": "", "scores": [], "url": "https://github.com/openpgpjs/openpgpjs/releases/tag/v5.10.1" }, { "reference_url": "https://nvd.nist.gov/vuln/detail/CVE-2023-41037", "reference_id": "CVE-2023-41037", "reference_type": "", "scores": [], "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-41037" }, { "reference_url": "https://github.com/advisories/GHSA-ch3c-v47x-4pgp", "reference_id": "GHSA-ch3c-v47x-4pgp", "reference_type": "", "scores": [], "url": "https://github.com/advisories/GHSA-ch3c-v47x-4pgp" }, { "reference_url": "https://github.com/openpgpjs/openpgpjs/security/advisories/GHSA-ch3c-v47x-4pgp", "reference_id": "GHSA-ch3c-v47x-4pgp", "reference_type": "", "scores": [], "url": "https://github.com/openpgpjs/openpgpjs/security/advisories/GHSA-ch3c-v47x-4pgp" } ], "weaknesses": [ { "cwe_id": 1035, "name": "OWASP Top Ten 2017 Category A9 - Using Components with Known Vulnerabilities", "description": "Weaknesses in this category are related to the A9 category in the OWASP Top Ten 2017." }, { "cwe_id": 347, "name": "Improper Verification of Cryptographic Signature", "description": "The product does not verify, or incorrectly verifies, the cryptographic signature for data." }, { "cwe_id": 937, "name": "OWASP Top Ten 2013 Category A9 - Using Components with Known Vulnerabilities", "description": "Weaknesses in this category are related to the A9 category in the OWASP Top Ten 2013." } ], "exploits": [], "severity_range_score": null, "exploitability": null, "weighted_severity": null, "risk_score": null, "resource_url": "http://public2.vulnerablecode.io/vulnerabilities/VCID-y9pn-esju-ffec" }