{"id":"CVE-2026-81702","state":"PUBLISHED","title":"openssl_encrypt before 1.4.9 Key Substitution via Identity Load","description":"openssl_encrypt before 1.4.9 fails to re-derive and validate fingerprints when loading identities from identity.json, allowing attackers to substitute public keys in identity stores. Attackers can replace legitimate public keys with their own while maintaining the claimed fingerprint, enabling silent key substitution where encryption uses attacker keys and signature verification appears valid.","publishedAt":"2026-08-27T14:51:05.523Z","updatedAt":"2026-10-01T15:21:31.062Z","severity":{"score":9.3,"label":"Critical","version":"4.0","vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","source":"VulnCheck"},"assigner":"VulnCheck","products":["jahlives openssl_encrypt"],"affected":[{"vendor":"jahlives","product":"openssl_encrypt","packageURL":"pkg:pypi/openssl-encrypt","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"1.4.9","versionType":"semver"},{"version":"1.4.9","status":"unaffected","versionType":"semver"}]}],"references":["https://github.com/jahlives/openssl_encrypt/security/advisories/GHSA-q8p3-7h6h-ghfr","https://www.vulncheck.com/advisories/openssl-encrypt-before-1.4.9-key-substitution-via-identity-load"],"weaknesses":["CWE-345"],"ingestedAt":"2026-10-29T20:13:15.269Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/81xxx/CVE-2026-81702.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-81702","state":"PUBLISHED","datePublished":"2026-08-27T14:51:05.523Z","dateUpdated":"2026-10-01T15:21:31.062Z","assignerShortName":"VulnCheck","assignerOrgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateReserved":"2026-08-27T11:12:29.817Z"},"containers":{"cna":{"title":"openssl_encrypt before 1.4.9 Key Substitution via Identity Load","descriptions":[{"lang":"en","value":"openssl_encrypt before 1.4.9 fails to re-derive and validate fingerprints when loading identities from identity.json, allowing attackers to substitute public keys in identity stores. Attackers can replace legitimate public keys with their own while maintaining the claimed fingerprint, enabling silent key substitution where encryption uses attacker keys and signature verification appears valid."}],"affected":[{"vendor":"jahlives","product":"openssl_encrypt","packageURL":"pkg:pypi/openssl-encrypt","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"1.4.9","versionType":"semver"},{"version":"1.4.9","status":"unaffected","versionType":"semver"}]}],"references":[{"url":"https://github.com/jahlives/openssl_encrypt/security/advisories/GHSA-q8p3-7h6h-ghfr","tags":["vendor-advisory"],"name":"GitHub Security Advisory (GHSA-q8p3-7h6h-ghfr)"},{"url":"https://www.vulncheck.com/advisories/openssl-encrypt-before-1.4.9-key-substitution-via-identity-load","name":"VulnCheck Advisory: openssl_encrypt before 1.4.9 Key Substitution via Identity Load","tags":["third-party-advisory"]}],"metrics":[{"cvssV4_0":{"Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","Safety":"NOT_DEFINED","attackComplexity":"LOW","attackRequirements":"NONE","attackVector":"NETWORK","baseScore":9.3,"baseSeverity":"CRITICAL","exploitMaturity":"NOT_DEFINED","privilegesRequired":"NONE","providerUrgency":"NOT_DEFINED","subAvailabilityImpact":"NONE","subConfidentialityImpact":"NONE","subIntegrityImpact":"NONE","userInteraction":"NONE","valueDensity":"NOT_DEFINED","vectorString":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N","version":"4.0","vulnAvailabilityImpact":"HIGH","vulnConfidentialityImpact":"HIGH","vulnIntegrityImpact":"HIGH","vulnerabilityResponseEffort":"NOT_DEFINED"},"format":"CVSS"},{"cvssV3_1":{"attackComplexity":"LOW","attackVector":"NETWORK","availabilityImpact":"HIGH","baseScore":9.8,"baseSeverity":"CRITICAL","confidentialityImpact":"HIGH","integrityImpact":"HIGH","privilegesRequired":"NONE","scope":"UNCHANGED","userInteraction":"NONE","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","version":"3.1"},"format":"CVSS"}],"problemTypes":[{"descriptions":[{"cweId":"CWE-345","lang":"en","description":"Insufficient Verification of Data Authenticity","type":"CWE"}]}],"providerMetadata":{"shortName":"VulnCheck","orgId":"83251b91-4cc7-4094-a5c7-464a1b83ea10","dateUpdated":"2026-10-01T15:21:31.062Z"},"datePublic":"2026-08-12T00:00:00.000Z","cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:jahlives:openssl_encrypt:*:*:*:*:*:*:*:*","versionEndExcluding":"1.4.9"}]}]}],"x_generator":{"engine":"vulncheck-endgame"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-08-31T15:58:58.550416Z","id":"CVE-2026-81702","options":[{"Exploitation":"none"},{"Automatable":"yes"},{"Technical Impact":"total"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-09-01T14:50:55.764Z"}}]}}}