6.9 MEDIUM
- CVSS version (CVSS): 4.0
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Attack Requirement (AT): Present (P)
- Privileges Required (PR): None (N)
- User Interaction (UI): None (N)
- Vulnerable System Impact Confidentiality (VC): Low (L)
- Vulnerable System Impact Integrity (VI): High (H)
- Vulnerable System Impact Availability (VA): None (N)
- Subsequent System Impact Confidentiality (SC): None (N)
- Subsequent System Impact Integrity (SI): None (N)
- Subsequent System Impact Availability (SA): None (N)
- Exploit Maturity (E): POC (P)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Attack Requirement (MAT): Present (P)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): None (N)
- Modified Vulnerable System Impact Confidentiality (MVC): Low (L)
- Modified Vulnerable System Impact Integrity (MVI): High (H)
- Modified Vulnerable System Impact Availability (MVA): None (N)
- Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
- Modified Subsequent System Impact Integrity (MSI): Negligible (N)
- Modified Subsequent System Impact Availability (MSA): Negligible (N)
- Safety (S): Not Defined (X)
- Automatable (AU): Not Defined (X)
- Recovery (R): Not Defined (X)
- Value Density (V): Not Defined (X)
- Vulnerability Response Effort (RE): Not Defined (X)
- Provider Urgency (U): Not Defined (X)
- Confidentiality Req. (CR): Not Defined (X)
- Integrity Req. (IR): Not Defined (X)
- Availability Req. (AR): Not Defined (X)
by @LeSuisse Activity log
- Created suggestion
-
@LeSuisse
ignored
8 packages
- python313Packages.mypy-boto3-payment-cryptography
- python314Packages.mypy-boto3-payment-cryptography
- python313Packages.mypy-boto3-payment-cryptography-data
- python314Packages.mypy-boto3-payment-cryptography-data
- python313Packages.types-aiobotocore-payment-cryptography
- python314Packages.types-aiobotocore-payment-cryptography
- python313Packages.types-aiobotocore-payment-cryptography-data
- python314Packages.types-aiobotocore-payment-cryptography-data
- @LeSuisse accepted
- @LeSuisse published on GitHub
python-cryptography verifier accepts wildcard DNS names allowing escape from permittedSubtrees
cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 49.0.0, if an intermediate constrained CA permits the DNS name foo.example.com, and the leaf certificate has a wildcard in its DNS SAN of *.example.com, python-cryptography's verifier accepts which allows escaping outside of the permitted names. The core issue is in DNSConstraint::matches, where a wildcard pattern was treated as matching a more-specific permitted constraint even though *.example.com can expand to sibling names such as bar.example.com outside foo.example.com. This allows acceptance of an invalid certificate chain. This issue is fixed in 49.0.0.
References
-
https://github.com/pyca/cryptography/security/advisories/GHSA-m2h6-j472-rp4c x_refsource_CONFIRM
-
https://github.com/pyca/cryptography/pull/14888 x_refsource_MISC
Affected products
- ==< 49.0.0
Matching in nixpkgs
pkgs.python313Packages.cryptography
Package which provides cryptographic recipes and primitives
Ignored packages (8)
pkgs.python313Packages.mypy-boto3-payment-cryptography
Type annotations for boto3 payment-cryptography
pkgs.python314Packages.mypy-boto3-payment-cryptography
Type annotations for boto3 payment-cryptography
pkgs.python313Packages.mypy-boto3-payment-cryptography-data
Type annotations for boto3 payment-cryptography-data
pkgs.python314Packages.mypy-boto3-payment-cryptography-data
Type annotations for boto3 payment-cryptography-data
pkgs.python313Packages.types-aiobotocore-payment-cryptography
Type annotations for aiobotocore payment-cryptography
pkgs.python314Packages.types-aiobotocore-payment-cryptography
Type annotations for aiobotocore payment-cryptography
-
nixos-unstable -
- nixos-unstable-small 3.8.0
pkgs.python313Packages.types-aiobotocore-payment-cryptography-data
Type annotations for aiobotocore payment-cryptography-data
pkgs.python314Packages.types-aiobotocore-payment-cryptography-data
Type annotations for aiobotocore payment-cryptography-data
-
nixos-unstable -
- nixos-unstable-small 3.8.0
Package maintainers
-
@mdaniels5757 Michael Daniels <nix@mdaniels.me>
8.7 HIGH
- CVSS version (CVSS): 4.0
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): Low (L)
- Attack Requirement (AT): None (N)
- Privileges Required (PR): None (N)
- User Interaction (UI): None (N)
- Vulnerable System Impact Confidentiality (VC): None (N)
- Vulnerable System Impact Integrity (VI): None (N)
- Vulnerable System Impact Availability (VA): High (H)
- Subsequent System Impact Confidentiality (SC): None (N)
- Subsequent System Impact Integrity (SI): None (N)
- Subsequent System Impact Availability (SA): None (N)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): Low (L)
- Modified Attack Requirement (MAT): None (N)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): None (N)
- Modified Vulnerable System Impact Confidentiality (MVC): None (N)
- Modified Vulnerable System Impact Integrity (MVI): None (N)
- Modified Vulnerable System Impact Availability (MVA): High (H)
- Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
- Modified Subsequent System Impact Integrity (MSI): Negligible (N)
- Modified Subsequent System Impact Availability (MSA): Negligible (N)
- Safety (S): Not Defined (X)
- Automatable (AU): Not Defined (X)
- Recovery (R): Not Defined (X)
- Value Density (V): Not Defined (X)
- Vulnerability Response Effort (RE): Not Defined (X)
- Provider Urgency (U): Not Defined (X)
- Confidentiality Req. (CR): Not Defined (X)
- Integrity Req. (IR): Not Defined (X)
- Availability Req. (AR): Not Defined (X)
- Exploit Maturity (E): Not Defined (X)
by @LeSuisse Activity log
- Created suggestion
-
@LeSuisse
ignored
8 packages
- python313Packages.mypy-boto3-payment-cryptography
- python314Packages.mypy-boto3-payment-cryptography
- python313Packages.mypy-boto3-payment-cryptography-data
- python314Packages.mypy-boto3-payment-cryptography-data
- python313Packages.types-aiobotocore-payment-cryptography
- python314Packages.types-aiobotocore-payment-cryptography
- python313Packages.types-aiobotocore-payment-cryptography-data
- python314Packages.types-aiobotocore-payment-cryptography-data
- @LeSuisse accepted
- @LeSuisse published on GitHub
python-cryptography: Duplicate self-signed intermediates can cause exponential path-building
python-cryptography is a package designed to expose cryptographic primitives and recipes to Python developers. Prior to 49.0.0, when resolving invalid certificate chains that include duplicate copies of self-signed certificates, the processing recursively invokes the same candidate, leading to an exponential blowup. Although the limitation that the chain depth cannot exceed a specified maximum depth prevents unbounded recursion and guarantees termination, an attacker-controlled certificate chain can lead the processing to easily take more than 5s to reject in testing. This amplification could form the basis for a resource exhaustion denial of service attack. The core issue arises in the recursive nature of build_chain_inner, which does not de-duplicate against previously analyzed candidates. As the correctness of validation is not affected, the integrity of a system cannot be compromised through this vector, only its availability. This issue is fixed in 49.0.0.
References
-
https://github.com/pyca/cryptography/security/advisories/GHSA-jwv3-5hgf-82ww x_refsource_CONFIRM
-
https://github.com/pyca/cryptography/pull/14960 x_refsource_MISC
Affected products
- ==< 49.0.0
Matching in nixpkgs
pkgs.python313Packages.cryptography
Package which provides cryptographic recipes and primitives
Ignored packages (8)
pkgs.python313Packages.mypy-boto3-payment-cryptography
Type annotations for boto3 payment-cryptography
pkgs.python314Packages.mypy-boto3-payment-cryptography
Type annotations for boto3 payment-cryptography
pkgs.python313Packages.mypy-boto3-payment-cryptography-data
Type annotations for boto3 payment-cryptography-data
pkgs.python314Packages.mypy-boto3-payment-cryptography-data
Type annotations for boto3 payment-cryptography-data
pkgs.python313Packages.types-aiobotocore-payment-cryptography
Type annotations for aiobotocore payment-cryptography
pkgs.python314Packages.types-aiobotocore-payment-cryptography
Type annotations for aiobotocore payment-cryptography
-
nixos-unstable -
- nixos-unstable-small 3.8.0
pkgs.python313Packages.types-aiobotocore-payment-cryptography-data
Type annotations for aiobotocore payment-cryptography-data
pkgs.python314Packages.types-aiobotocore-payment-cryptography-data
Type annotations for aiobotocore payment-cryptography-data
-
nixos-unstable -
- nixos-unstable-small 3.8.0
Package maintainers
-
@mdaniels5757 Michael Daniels <nix@mdaniels.me>
8.2 HIGH
- CVSS version (CVSS): 4.0
- Attack Vector (AV): Network (N)
- Attack Complexity (AC): High (H)
- Attack Requirement (AT): Present (P)
- Privileges Required (PR): None (N)
- User Interaction (UI): None (N)
- Vulnerable System Impact Confidentiality (VC): High (H)
- Vulnerable System Impact Integrity (VI): None (N)
- Vulnerable System Impact Availability (VA): None (N)
- Subsequent System Impact Confidentiality (SC): None (N)
- Subsequent System Impact Integrity (SI): None (N)
- Subsequent System Impact Availability (SA): None (N)
- Modified Attack Vector (MAV): Network (N)
- Modified Attack Complexity (MAC): High (H)
- Modified Attack Requirement (MAT): Present (P)
- Modified Privileges Required (MPR): None (N)
- Modified User Interaction (MUI): None (N)
- Modified Vulnerable System Impact Confidentiality (MVC): High (H)
- Modified Vulnerable System Impact Integrity (MVI): None (N)
- Modified Vulnerable System Impact Availability (MVA): None (N)
- Modified Subsequent System Impact Confidentiality (MSC): Negligible (N)
- Modified Subsequent System Impact Integrity (MSI): Negligible (N)
- Modified Subsequent System Impact Availability (MSA): Negligible (N)
- Safety (S): Not Defined (X)
- Automatable (AU): Not Defined (X)
- Recovery (R): Not Defined (X)
- Value Density (V): Not Defined (X)
- Vulnerability Response Effort (RE): Not Defined (X)
- Provider Urgency (U): Not Defined (X)
- Confidentiality Req. (CR): Not Defined (X)
- Integrity Req. (IR): Not Defined (X)
- Availability Req. (AR): Not Defined (X)
- Exploit Maturity (E): Not Defined (X)
by @LeSuisse Activity log
- Created suggestion
-
@LeSuisse
ignored
8 packages
- python313Packages.mypy-boto3-payment-cryptography
- python314Packages.mypy-boto3-payment-cryptography
- python313Packages.mypy-boto3-payment-cryptography-data
- python314Packages.mypy-boto3-payment-cryptography-data
- python313Packages.types-aiobotocore-payment-cryptography
- python314Packages.types-aiobotocore-payment-cryptography
- python313Packages.types-aiobotocore-payment-cryptography-data
- python314Packages.types-aiobotocore-payment-cryptography-data
- @LeSuisse accepted
- @LeSuisse published on GitHub
cryptography: PKCS#7 EnvelopedData decryption exposes a Bleichenbacher oracle through distinguishable errors and timing
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.
References
-
https://github.com/pyca/cryptography/security/advisories/GHSA-g6cj-pr64-35w5 x_refsource_CONFIRM
-
https://github.com/pyca/cryptography/pull/15369 x_refsource_MISC
Affected products
- ==>= 44.0.0, < 50.0.0
Matching in nixpkgs
pkgs.python313Packages.cryptography
Package which provides cryptographic recipes and primitives
Ignored packages (8)
pkgs.python313Packages.mypy-boto3-payment-cryptography
Type annotations for boto3 payment-cryptography
pkgs.python314Packages.mypy-boto3-payment-cryptography
Type annotations for boto3 payment-cryptography
pkgs.python313Packages.mypy-boto3-payment-cryptography-data
Type annotations for boto3 payment-cryptography-data
pkgs.python314Packages.mypy-boto3-payment-cryptography-data
Type annotations for boto3 payment-cryptography-data
pkgs.python313Packages.types-aiobotocore-payment-cryptography
Type annotations for aiobotocore payment-cryptography
pkgs.python314Packages.types-aiobotocore-payment-cryptography
Type annotations for aiobotocore payment-cryptography
-
nixos-unstable -
- nixos-unstable-small 3.8.0
pkgs.python313Packages.types-aiobotocore-payment-cryptography-data
Type annotations for aiobotocore payment-cryptography-data
pkgs.python314Packages.types-aiobotocore-payment-cryptography-data
Type annotations for aiobotocore payment-cryptography-data
-
nixos-unstable -
- nixos-unstable-small 3.8.0
Package maintainers
-
@mdaniels5757 Michael Daniels <nix@mdaniels.me>