{"id":"CVE-2026-81717","aliases":["PYSEC-2026-3801","GHSA-8jx3-27qf-3p97"],"title":"openssl_encrypt (pip package openssl-encrypt) before 1.4.9 contains two weaknesses in the portable USB drive feature, whose threat model …","summary":"openssl_encrypt (pip package openssl-encrypt) before 1.4.9 contains two weaknesses in the portable USB drive feature, whose threat model treats the removable drive as untrusted (attacker with physical write access). USBDriveCreator._veri…","severity":"none","vendor":"openssl-encrypt","product":"openssl-encrypt","ecosystem":"pip","affected":["openssl-encrypt < 1.4.9"],"patched":["openssl-encrypt 1.4.9"],"published":"2026-08-27","updated":"2026-09-03","source":"OSV","sourceUrl":"https://osv.dev/vulnerability/PYSEC-2026-3801","references":[{"url":"https://github.com/jahlives/openssl_encrypt/security/advisories/GHSA-8jx3-27qf-3p97"},{"url":"https://www.vulncheck.com/advisories/openssl-encrypt-before-1.4.9-integrity-bypass-via-added-files"}],"tags":["osv","pip"],"epss":0.00118,"epssPercentile":0.01527,"ingestedAt":"2026-09-03T19:32:12.367Z","slug":"CVE-2026-81717","body":"## Overview\n\nopenssl_encrypt (pip package openssl-encrypt) before 1.4.9 contains two weaknesses in the portable USB drive feature, whose threat model treats the removable drive as untrusted (attacker with physical write access). USBDriveCreator._verify_integrity_file only validates files listed in the manifest, so files added to the drive — including a root-level autorun payload — are not detected and integrity verification still passes. Additionally, a globally constant, source-embedded KDF salt (_LEGACY_FIXED_SALT) is used to derive the drive encryption key for any drive lacking a per-drive salt file, defeating precomputation resistance and enabling an offline rainbow-table attack.\n\n## Affected packages\n\n- `openssl-encrypt < 1.4.9`\n\n## Remediation\n\nUpgrade to a patched release:\n\n- `openssl-encrypt 1.4.9`","depth":"sunlit","depthScore":3,"depthScoreParts":{"impact":2.8,"likelihood":0,"exploitation":0,"ransomware":0},"changes":[]}