8.2

CVE-2026-69247: cryptography: PKCS#7 EnvelopedData decryption exposes a Bleichenbacher oracle through distinguishable errors and timing

Awaiting analysis
AliasesGHSA-g6cj-pr64-35w5PYSEC-2026-3552UBUNTU-CVE-2026-69247
Published 03-08-2026Last modified 04-08-2026

Vulnerability summary

CVE-2026-69247 is a high (CVSS 8.2) Observable Timing Discrepancy vulnerability in pyca cryptography. EPSS estimates a 0.27% chance of exploitation in the next 30 days, higher than 19.9% of scored vulnerabilities.

Priority
Prioritisesevere

Severe, CVSS 8.2 (CVE.org); no exploitation reported by the 5 checked sources; EPSS 0% (FIRST, 03-11-2026)

Source freshness unavailable

How is this decided?
CVSS score
8.2/10
010
High · v4.0 (CVE.org)
EPSS score
0.27%
0%100%
Low · 0.00 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits0No public exploits recorded

Advisory lineage

Upstream 0 · Downstream 6 · Related 6

Timeline

  1. 03-08-2026
    PublishedVulnerability first disclosed.
  2. 04-08-2026
    Last modifiedVulnerability information updated.

Description

cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. From 44.0.0 until 50.0.0, pkcs7_decrypt_der, pkcs7_decrypt_pem, and pkcs7_decrypt_smime reported the outcome of decrypting a RecipientInfo's encryptedKey in several distinguishable ways, one of which disclosed the exact length recovered from the RSA operation. The same distinction was also observable by timing. An application that decrypts attacker-supplied EnvelopedData and reflects the outcome gives the attacker a Bleichenbacher oracle against the content-encryption key. Decryption ran as RSA PKCS#1 v1.5 decrypt of encryptedKey, build an AES cipher from the result, then AES-CBC decrypt and PKCS#7 unpad. Invalid RSA padding, a valid padding with a bad key length, a correct length with a wrong key, and the real key each failed or succeeded differently. Case 1 is reachable only where the linked library lacks implicit rejection: OpenSSL 3.0 and 3.1, LibreSSL, and BoringSSL. Exploitation requires a service that auto-decrypts untrusted EnvelopedData matching the victim certificate and answers adaptively at high volume, such as an S/MIME gateway or mail filter. This issue is fixed in 50.0.0.

CVSS metrics

7 scores · 7 sources · 1 version

EPSS trend

Probability

0.27%

Chance of exploitation in the next 30 days

Percentile

20%

Versus all other CVEs

30-day change

No change 0.00 pp

From 0.27% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

0 found

No public exploits indexed.

Weaknesses

CWE · root cause

Affected systems

Version check

Known conditions: network-reachable, no authentication, no user interaction (CVSS vector). Other conditions: not stated in public data.

Chainguard110 products
  • airflow-2All versions (No fix recorded)
  • airflow-3< 3.3.0-r4
  • airflow-3-iamguarded-compatAll versions (No fix recorded)
  • airflow-core-2All versions (No fix recorded)
  • airflow-core-3< 3.3.0-r5
Wolfi30 products
  • airflow-3< 3.3.0-r4
  • airflow-3-iamguarded-compatAll versions (No fix recorded)
  • az< 2.91.0-r0
  • dask-kubernetes< 2026.3.0-r11
  • datadog-agent-7.72-core-integrationsAll versions (No fix recorded)
Debian1 product
  • python-cryptography< 49.0.0-2
Pyca1 product
PyPI1 product
  • cryptography≥ 44.0.0, < 50.0.0
Ubuntu1 product
  • python-cryptography< 46.0.5-1ubuntu2.2

6 vendors · 144 products

References

12 links
Show all 12 references