CVE-2025-0343

Swift ASN.1 can be caused to crash when parsing certain BER/DER constructions. This crash is caused by a confusion in the ASN.1 library itself which assumes that certain objects can only be provided in either constructed or primitive forms, and will trigger a preconditionFailure if that constraint isn't met. Importantly, these constraints are actually required to be true in DER, but that correctness wasn't enforced on the early node parser side so it was incorrect to rely on it later on in decoding, which is what the library did. These crashes can be triggered when parsing any DER/BER format object. There is no memory-safety issue here: the crash is a graceful one from the Swift runtime. The impact of this is that it can be used as a denial-of-service vector when parsing BER/DER data from unknown sources, e.g. when parsing TLS certificates.
Configurations

No configuration.

History

24 Mar 2025, 16:15

Type Values Removed Values Added
CWE CWE-228
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 7.5

18 Feb 2025, 22:15

Type Values Removed Values Added
CVSS v2 : unknown
v3 : 7.5
v2 : unknown
v3 : unknown

15 Jan 2025, 15:15

Type Values Removed Values Added
CVSS v2 : unknown
v3 : unknown
v2 : unknown
v3 : 7.5
Summary
  • (es) Swift ASN.1 puede bloquearse al analizar ciertas construcciones BER/DER. Este bloqueo se debe a una confusión en la propia librería ASN.1, que supone que ciertos objetos solo se pueden proporcionar en formas construidas o primitivas, y activará un error de condición previa si no se cumple esa restricción. Es importante destacar que, en realidad, se requiere que estas restricciones sean verdaderas en DER, pero esa corrección no se aplicó en el lado del analizador del nodo inicial, por lo que fue incorrecto confiar en ella más adelante en la decodificación, que es lo que hizo la librería. Estos bloqueos se pueden activar al analizar cualquier objeto con formato DER/BER. No hay ningún problema de seguridad de la memoria aquí: el bloqueo es elegante desde el entorno de ejecución de Swift. El impacto de esto es que se puede usar como un vector de denegación de servicio al analizar datos BER/DER de fuentes desconocidas, por ejemplo, al analizar certificados TLS.

15 Jan 2025, 01:15

Type Values Removed Values Added
New CVE

Information

Published : 2025-01-15 01:15

Updated : 2025-03-24 16:15


NVD link : CVE-2025-0343

Mitre link : CVE-2025-0343

CVE.ORG link : CVE-2025-0343


JSON object : View

Products Affected

No product.

CWE
CWE-228

Improper Handling of Syntactically Invalid Structure