Python/cryptography/1.9


cryptography is a package which provides cryptographic recipes and primitives to Python developers.

https://pypi.org/project/cryptography
Apache-2.0 AND BSD

11 Security Vulnerabilities

Python Cryptography package vulnerable to Bleichenbacher timing oracle attack

Published date: 2024-02-05T21:30:31Z
CVE: CVE-2023-50782
Links:

A flaw was found in the python-cryptography package. This issue may allow a remote attacker to decrypt captured messages in TLS servers that use RSA key exchanges, which may lead to exposure of confidential or sensitive data.

Affected versions: ["41.0.7", "41.0.6", "41.0.5", "41.0.4", "41.0.3", "41.0.2", "41.0.1", "41.0.0", "40.0.2", "40.0.1", "40.0.0", "39.0.2", "39.0.1", "39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1", "0.8", "0.7.2", "0.7.1", "0.7", "0.6.1", "0.6", "0.5.4", "0.5.3", "0.5.2", "0.5.1", "0.5", "0.4", "0.3", "0.2.2", "0.2.1", "0.2", "0.1"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

Vulnerable OpenSSL included in cryptography wheels

Published date: 2026-06-15T20:12:27Z
Links:

pyca/cryptography's wheels include a statically linked copy of OpenSSL. The versions of OpenSSL included in wheels prior to cryptograph 48.01 are vulnerable to a security issue. More details about the vulnerability itself can be found in https://openssl-library.org/news/secadv/20260609.txt.

If you are building cryptography source (sdist) then you are responsible for upgrading your copy of OpenSSL. Only users installing from wheels built by the cryptography project (i.e., those distributed on PyPI) need to update their cryptography versions.

Affected versions: ["48.0.0", "47.0.0", "46.0.7", "46.0.6", "46.0.5", "46.0.4", "46.0.3", "46.0.2", "46.0.1", "46.0.0", "45.0.7", "45.0.6", "45.0.5", "45.0.4", "45.0.3", "45.0.2", "45.0.1", "45.0.0", "44.0.3", "44.0.2", "44.0.1", "44.0.0", "43.0.3", "43.0.1", "43.0.0", "43.0.0.dev1", "42.0.8", "42.0.7", "42.0.6", "42.0.5", "42.0.4", "42.0.3", "42.0.2", "42.0.1", "42.0.0", "41.0.7", "41.0.6", "41.0.5", "41.0.4", "41.0.3", "41.0.2", "41.0.1", "41.0.0", "40.0.2", "40.0.1", "40.0.0", "39.0.2", "39.0.1", "39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1", "0.8", "0.7.2", "0.7.1", "0.7", "0.6.1", "0.6", "0.5.4", "0.5.3", "0.5.2", "0.5.1", "0.5"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

Vulnerable OpenSSL included in cryptography wheels

Published date: 2023-06-02T17:13:10Z
Links:

pyca/cryptography's wheels include a statically linked copy of OpenSSL. The versions of OpenSSL included in cryptography 0.5-40.0.2 are vulnerable to a security issue. More details about the vulnerability itself can be found in https://www.openssl.org/news/secadv/20230530.txt.

If you are building cryptography source (sdist) then you are responsible for upgrading your copy of OpenSSL. Only users installing from wheels built by the cryptography project (i.e., those distributed on PyPI) need to update their cryptography versions.

Affected versions: ["40.0.2", "40.0.1", "40.0.0", "39.0.2", "39.0.1", "39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1", "0.8", "0.7.2", "0.7.1", "0.7", "0.6.1", "0.6", "0.5.4", "0.5.3", "0.5.2", "0.5.1", "0.5"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

Null pointer dereference in PKCS12 parsing

Published date: 2024-01-26T09:30:23Z
CVE: CVE-2024-0727
Links:

Issue summary: Processing a maliciously formatted PKCS12 file may lead OpenSSL to crash leading to a potential Denial of Service attack

Impact summary: Applications loading files in the PKCS12 format from untrusted sources might terminate abruptly.

A file in PKCS12 format can contain certificates and keys and may come from an untrusted source. The PKCS12 specification allows certain fields to be NULL, but OpenSSL does not correctly check for this case. This can lead to a NULL pointer dereference that results in OpenSSL crashing. If an application processes PKCS12 files from an untrusted source using the OpenSSL APIs then that application will be vulnerable to this issue.

OpenSSL APIs that are vulnerable to this are: PKCS12parse(), PKCS12unpackp7data(), PKCS12unpackp7encdata(), PKCS12unpackauthsafes() and PKCS12newpass().

We have also fixed a similar issue in SMIMEwritePKCS7(). However since this function is related to writing data we do not consider it security significant.

The FIPS modules in 3.2, 3.1 and 3.0 are not affected by this issue.

Affected versions: ["42.0.1", "42.0.0", "41.0.7", "41.0.6", "41.0.5", "41.0.4", "41.0.3", "41.0.2", "41.0.1", "41.0.0", "40.0.2", "40.0.1", "40.0.0", "39.0.2", "39.0.1", "39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1", "0.8", "0.7.2", "0.7.1", "0.7", "0.6.1", "0.6", "0.5.4", "0.5.3", "0.5.2", "0.5.1", "0.5", "0.4", "0.3", "0.2.2", "0.2.1", "0.2", "0.1"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

PyCA Cryptography vulnerable to GCM tag forgery

Published date: 2018-07-31T18:28:09Z
CVE: CVE-2018-10903
Links:

A flaw was found in python-cryptography versions between >=1.9.0 and <2.3. The finalizewithtag API did not enforce a minimum tag length. If a user did not validate the input length prior to passing it to finalizewithtag an attacker could craft an invalid payload with a shortened tag (e.g. 1 byte) such that they would have a 1 in 256 chance of passing the MAC check. GCM tag forgeries can cause key leakage.

Affected versions: ["2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

RSA decryption vulnerable to Bleichenbacher timing vulnerability

Published date: 2020-10-27T20:33:13Z
CVE: CVE-2020-25659
Links:

RSA decryption was vulnerable to Bleichenbacher timing vulnerabilities, which would impact people using RSA decryption in online scenarios. This is fixed in cryptography 3.2.

Affected versions: ["3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1", "0.8", "0.7.2", "0.7.1", "0.7", "0.6.1", "0.6", "0.5.4", "0.5.3", "0.5.2", "0.5.1", "0.5", "0.4", "0.3", "0.2.2", "0.2.1", "0.2", "0.1"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

pyca/cryptography's wheels include vulnerable OpenSSL

Published date: 2023-08-01T22:34:41Z
Links:

pyca/cryptography's wheels include a statically linked copy of OpenSSL. The versions of OpenSSL included in cryptography 0.8-41.0.2 are vulnerable to several security issues. More details about the vulnerabilities themselves can be found in https://www.openssl.org/news/secadv/20230731.txt, https://www.openssl.org/news/secadv/20230719.txt, and https://www.openssl.org/news/secadv/20230714.txt.

If you are building cryptography source (sdist) then you are responsible for upgrading your copy of OpenSSL. Only users installing from wheels built by the cryptography project (i.e., those distributed on PyPI) need to update their cryptography versions.

Affected versions: ["41.0.2", "41.0.1", "41.0.0", "40.0.2", "40.0.1", "40.0.0", "39.0.2", "39.0.1", "39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1", "0.8"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

cryptography has incomplete DNS name constraint enforcement on peer names

Published date: 2026-03-27T19:56:21Z
CVE: CVE-2026-34073
Links:

Summary

In versions of cryptography prior to 46.0.5, DNS name constraints were only validated against SANs within child certificates, and not the peer name presented during each validation. Consequently, cryptography would allow a peer named bar.example.com to validate against a wildcard leaf certificate for *.example.com, even if the leaf's parent certificate (or upwards) contained an excluded subtree constraint for bar.example.com.

This behavior resulted from a gap between RFC 5280 (which defines Name Constraint semantics) and RFC 9525 (which defines service identity semantics): put together, neither states definitively whether Name Constraints should be applied to peer names. To close this gap, cryptography now conservatively rejects any validation where the peer name would be rejected by a name constraint if it were a SAN instead.

In practice, exploitation of this bypass requires an uncommon X.509 topology, one that the Web PKI avoids because it exhibits these kinds of problems. Consequently, we consider this a medium-to-low impact severity.

See CVE-2025-61727 for a similar bypass in Go's crypto/x509.

Remediation

Users should upgrade to 46.0.6 or newer.

Attribution

Reporter: @1seal

Affected versions: ["46.0.5", "46.0.4", "46.0.3", "46.0.2", "46.0.1", "46.0.0", "45.0.7", "45.0.6", "45.0.5", "45.0.4", "45.0.3", "45.0.2", "45.0.1", "45.0.0", "44.0.3", "44.0.2", "44.0.1", "44.0.0", "43.0.3", "43.0.1", "43.0.0", "43.0.0.dev1", "42.0.8", "42.0.7", "42.0.6", "42.0.5", "42.0.4", "42.0.3", "42.0.2", "42.0.1", "42.0.0", "41.0.7", "41.0.6", "41.0.5", "41.0.4", "41.0.3", "41.0.2", "41.0.1", "41.0.0", "40.0.2", "40.0.1", "40.0.0", "39.0.2", "39.0.1", "39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1", "0.8", "0.7.2", "0.7.1", "0.7", "0.6.1", "0.6", "0.5.4", "0.5.3", "0.5.2", "0.5.1", "0.5", "0.4", "0.3", "0.2.2", "0.2.1", "0.2", "0.1"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

cryptography Vulnerable to a Subgroup Attack Due to Missing Subgroup Validation for SECT Curves

Published date: 2026-02-10T21:27:06Z
CVE: CVE-2026-26007
Links:

Vulnerability Summary

The public_key_from_numbers (or EllipticCurvePublicNumbers.public_key()), EllipticCurvePublicNumbers.public_key(), load_der_public_key() and load_pem_public_key() functions do not verify that the point belongs to the expected prime-order subgroup of the curve.

This missing validation allows an attacker to provide a public key point P from a small-order subgroup. This can lead to security issues in various situations, such as the most commonly used signature verification (ECDSA) and shared key negotiation (ECDH). When the victim computes the shared secret as S = [victim_private_key]P via ECDH, this leaks information about victim_private_key mod (small_subgroup_order). For curves with cofactor > 1, this reveals the least significant bits of the private key. When these weak public keys are used in ECDSA , it's easy to forge signatures on the small subgroup.

Only SECT curves are impacted by this.

Credit

This vulnerability was discovered by: - XlabAI Team of Tencent Xuanwu Lab - Atuin Automated Vulnerability Discovery Engine

Affected versions: ["46.0.4", "46.0.3", "46.0.2", "46.0.1", "46.0.0", "45.0.7", "45.0.6", "45.0.5", "45.0.4", "45.0.3", "45.0.2", "45.0.1", "45.0.0", "44.0.3", "44.0.2", "44.0.1", "44.0.0", "43.0.3", "43.0.1", "43.0.0", "43.0.0.dev1", "42.0.8", "42.0.7", "42.0.6", "42.0.5", "42.0.4", "42.0.3", "42.0.2", "42.0.1", "42.0.0", "41.0.7", "41.0.6", "41.0.5", "41.0.4", "41.0.3", "41.0.2", "41.0.1", "41.0.0", "40.0.2", "40.0.1", "40.0.0", "39.0.2", "39.0.1", "39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1", "0.8", "0.7.2", "0.7.1", "0.7", "0.6.1", "0.6", "0.5.4", "0.5.3", "0.5.2", "0.5.1", "0.5", "0.4", "0.3", "0.2.2", "0.2.1", "0.2", "0.1"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

Cipher.update_into can corrupt memory if passed an immutable python object as the outbuf

Published date: 2023-02-07T20:54:10Z
CVE: CVE-2023-23931
Links:

Previously, Cipher.update_into would accept Python objects which implement the buffer protocol, but provide only immutable buffers:

>>> outbuf = b"\x00" * 32
>>> c = ciphers.Cipher(AES(b"\x00" * 32), modes.ECB()).encryptor()
>>> c.update_into(b"\x00" * 16, outbuf)
16
>>> outbuf
b'\xdc\x95\xc0x\xa2@\x89\x89\xadH\xa2\x14\x92\x84 \x87\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

This would allow immutable objects (such as bytes) to be mutated, thus violating fundamental rules of Python. This is a soundness bug -- it allows programmers to misuse an API, it cannot be exploited by attacker controlled data alone.

This now correctly raises an exception.

This issue has been present since update_into was originally introduced in cryptography 1.8.

Affected versions: ["39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

Vulnerable OpenSSL included in cryptography wheels

Published date: 2023-02-08T22:17:06Z
CVE: CVE-2023-0286
Links:

pyca/cryptography's wheels include a statically linked copy of OpenSSL. The versions of OpenSSL included in cryptography 0.8.1-39.0.0 are vulnerable to a security issue. More details about the vulnerabilities themselves can be found in https://www.openssl.org/news/secadv/20221213.txt and https://www.openssl.org/news/secadv/20230207.txt.

If you are building cryptography source (sdist) then you are responsible for upgrading your copy of OpenSSL. Only users installing from wheels built by the cryptography project (i.e., those distributed on PyPI) need to update their cryptography versions.

Affected versions: ["39.0.0", "38.0.4", "38.0.3", "38.0.2", "38.0.1", "38.0.0", "37.0.4", "37.0.3", "37.0.2", "37.0.1", "37.0.0", "36.0.2", "36.0.1", "36.0.0", "35.0.0", "3.4.8", "3.4.7", "3.4.6", "3.4.5", "3.4.4", "3.4.3", "3.4.2", "3.4.1", "3.4", "3.3.2", "3.3.1", "3.3", "3.2.1", "3.2", "3.1.1", "3.1", "3.0", "2.9.2", "2.9.1", "2.9", "2.8", "2.7", "2.6.1", "2.6", "2.5", "2.4.2", "2.4.1", "2.4", "2.3.1", "2.3", "2.2.2", "2.2.1", "2.2", "2.1.4", "2.1.3", "2.1.2", "2.1.1", "2.1", "2.0.3", "2.0.2", "2.0.1", "2.0", "1.9", "1.8.2", "1.8.1", "1.8", "1.7.2", "1.7.1", "1.7", "1.6", "1.5.3", "1.5.2", "1.5.1", "1.5", "1.4", "1.3.4", "1.3.3", "1.3.2", "1.3.1", "1.3", "1.2.3", "1.2.2", "1.2.1", "1.2", "1.1.2", "1.1.1", "1.1", "1.0.2", "1.0.1", "1.0", "0.9.3", "0.9.2", "0.9.1", "0.9", "0.8.2", "0.8.1"]
Secure versions: [48.0.1, 49.0.0]
Recommendation: Update to version 49.0.0.

158 Other Versions

Version License Security Released
39.0.0 Apache-2.0 AND BSD 13 1970-01-01 - 00:00 over 56 years
38.0.4 Apache-2.0 AND BSD 13 1970-01-01 - 00:00 over 56 years
38.0.3 Apache-2.0 AND BSD 13 1970-01-01 - 00:00 over 56 years
38.0.2 Apache-2.0 AND BSD 14 1970-01-01 - 00:00 over 56 years
38.0.1 Apache-2.0 AND BSD 14 1970-01-01 - 00:00 over 56 years
38.0.0 Apache-2.0 AND BSD 14 1970-01-01 - 00:00 over 56 years
37.0.4 Apache-2.0 AND BSD 13 2022-07-05 - 13:33 almost 4 years
37.0.3 Apache-2.0 AND BSD 13 2022-06-21 - 19:07 almost 4 years
37.0.2 Apache-2.0 AND BSD 13 2022-05-04 - 00:45 about 4 years
37.0.1 Apache-2.0 AND BSD 13 2022-04-27 - 22:37 about 4 years
37.0.0 Apache-2.0 AND BSD 13 2022-04-26 - 15:21 about 4 years
36.0.2 Apache-2.0 AND BSD 11 2022-03-15 - 22:31 over 4 years
36.0.1 Apache-2.0 AND BSD 11 2021-12-14 - 22:36 over 4 years
36.0.0 Apache-2.0 AND BSD 11 2021-11-21 - 21:37 over 4 years
35.0.0 Apache-2.0 AND BSD 11 2021-09-30 - 01:26 over 4 years
3.4.8 Apache-2.0 AND BSD 11 2021-08-24 - 17:28 almost 5 years
3.4.7 Apache-2.0 AND BSD 11 2021-03-25 - 17:40 about 5 years
3.4.6 Apache-2.0 AND BSD 11 2021-02-16 - 22:18 over 5 years
3.4.5 Apache-2.0 AND BSD 11 2021-02-13 - 22:51 over 5 years
3.4.4 Apache-2.0 AND BSD 11 2021-02-09 - 22:09 over 5 years
3.4.3 Apache-2.0 AND BSD 11 2021-02-09 - 04:44 over 5 years
3.4.2 Apache-2.0 AND BSD 11 2021-02-08 - 16:50 over 5 years
3.4.1 Apache-2.0 AND BSD 11 2021-02-07 - 22:04 over 5 years
3.4 Apache-2.0 AND BSD 11 2021-02-07 - 19:49 over 5 years
3.3.2 Apache-2.0 AND BSD 11 2021-02-07 - 17:00 over 5 years
3.3.1 Apache-2.0 AND BSD 12 2020-12-10 - 02:28 over 5 years
3.3 Apache-2.0 AND BSD 12 2020-12-09 - 00:35 over 5 years
3.2.1 Apache-2.0 AND BSD 12 2020-10-28 - 03:24 over 5 years
3.2 Apache-2.0 AND BSD 12 2020-10-26 - 02:17 over 5 years
3.1.1 Apache-2.0 AND BSD 13 2020-09-22 - 17:12 over 5 years
3.1 Apache-2.0 AND BSD 13 2020-08-27 - 04:44 almost 6 years
3.0 Apache-2.0 AND BSD 11 2020-07-20 - 22:35 almost 6 years
2.9.2 Apache-2.0 AND BSD 11 2020-04-22 - 23:19 about 6 years
2.9.1 Apache-2.0 AND BSD 11 2020-04-21 - 16:37 about 6 years
2.9 Apache-2.0 AND BSD 11 2020-04-02 - 19:53 about 6 years
2.8 Apache-2.0 AND BSD 11 2019-10-17 - 13:34 over 6 years
2.7 Apache-2.0 AND BSD 11 2019-05-31 - 00:04 about 7 years
2.6.1 Apache-2.0 AND BSD 11 2019-02-27 - 23:42 over 7 years
2.6 Apache-2.0 AND BSD 11 2019-02-27 - 14:06 over 7 years
2.5 Apache-2.0 AND BSD 11 2019-01-22 - 16:48 over 7 years
2.4.2 Apache-2.0 AND BSD 10 2018-11-21 - 03:19 over 7 years
2.4.1 Apache-2.0 AND BSD 10 2018-11-12 - 01:12 over 7 years
2.4 Apache-2.0 AND BSD 10 2018-11-12 - 00:26 over 7 years
2.3.1 Apache-2.0 AND BSD 10 2018-08-14 - 17:39 almost 8 years
2.3 Apache-2.0 AND BSD 10 2018-07-18 - 12:11 almost 8 years
2.2.2 Apache-2.0 AND BSD 11 2018-03-27 - 16:45 about 8 years
2.2.1 Apache-2.0 AND BSD 11 2018-03-21 - 00:00 over 8 years
2.2 Apache-2.0 AND BSD 11 2018-03-19 - 02:59 over 8 years
2.1.4 Apache-2.0 AND BSD 11 2017-11-30 - 02:04 over 8 years
2.1.3 Apache-2.0 AND BSD 11 2017-11-02 - 19:03 over 8 years