mirror of
https://github.com/Mbed-TLS/mbedtls.git
synced 2025-12-15 16:35:43 +03:00
Merge pull request #9920 from davidhorstmann-arm/clarify-x509-security-md-2.28
[Backport 2.28] Add X.509 formatting validation to SECURITY.md
This commit is contained in:
19
SECURITY.md
19
SECURITY.md
@@ -135,3 +135,22 @@ Guide](docs/architecture/alternative-implementations.md) for more information.
|
|||||||
- Use cryptographic mechanisms that are not based on block ciphers. In
|
- Use cryptographic mechanisms that are not based on block ciphers. In
|
||||||
particular, for authenticated encryption, use ChaCha20/Poly1305 instead of
|
particular, for authenticated encryption, use ChaCha20/Poly1305 instead of
|
||||||
block cipher modes. For random generation, use HMAC\_DRBG instead of CTR\_DRBG.
|
block cipher modes. For random generation, use HMAC\_DRBG instead of CTR\_DRBG.
|
||||||
|
|
||||||
|
#### Formatting of X.509 certificates and certificate signing requests
|
||||||
|
|
||||||
|
When parsing X.509 certificates and certificate signing requests (CSRs),
|
||||||
|
Mbed TLS does not check that they are strictly compliant with X.509 and other
|
||||||
|
relevant standards. In the case of signed certificates, the signing party is
|
||||||
|
assumed to have performed this validation (and the certificate is trusted to
|
||||||
|
be correctly formatted as long as the signature is correct).
|
||||||
|
Similarly, CSRs are implicitly trusted by Mbed TLS to be standards-compliant.
|
||||||
|
|
||||||
|
**Warning!** Mbed TLS must not be used to sign untrusted CSRs unless extra
|
||||||
|
validation is performed separately to ensure that they are compliant to the
|
||||||
|
relevant specifications. This makes Mbed TLS on its own unsuitable for use in
|
||||||
|
a Certificate Authority (CA).
|
||||||
|
|
||||||
|
However, Mbed TLS aims to protect against memory corruption and other
|
||||||
|
undefined behavior when parsing certificates and CSRs. If a CSR or signed
|
||||||
|
certificate causes undefined behavior when it is parsed by Mbed TLS, that
|
||||||
|
is considered a security vulnerability.
|
||||||
|
|||||||
Reference in New Issue
Block a user