diff options
| author | Demi Marie Obenour <demiobenour@gmail.com> | 2022-12-08 15:24:10 -0500 |
|---|---|---|
| committer | Demi Marie Obenour <demiobenour@gmail.com> | 2022-12-29 18:41:10 -0500 |
| commit | a8c8c5ef2a8f5a27772eb708f2201429dd8d32b2 (patch) | |
| tree | 7d7b6dcde3aa215dcb2429dc4f3025914864fb47 /drivers | |
| parent | f47547b35462571636a76b737602e827ae43bc24 (diff) | |
| download | arm-trusted-firmware-a8c8c5ef2a8f5a27772eb708f2201429dd8d32b2.tar.gz | |
fix(auth): reject padding after BIT STRING in signatures
It is forbidden by ASN.1 DER.
Change-Id: Id8a48e14bb8a1a17a6481ea3fde0803723c05e31
Signed-off-by: Demi Marie Obenour <demiobenour@gmail.com>
Diffstat (limited to 'drivers')
| -rw-r--r-- | drivers/auth/mbedtls/mbedtls_crypto.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/auth/mbedtls/mbedtls_crypto.c b/drivers/auth/mbedtls/mbedtls_crypto.c index 178bbf5f4..42a09255d 100644 --- a/drivers/auth/mbedtls/mbedtls_crypto.c +++ b/drivers/auth/mbedtls/mbedtls_crypto.c @@ -115,7 +115,7 @@ static int verify_signature(void *data_ptr, unsigned int data_len, end = (unsigned char *)(p + sig_len); signature.tag = *p; rc = mbedtls_asn1_get_bitstring_null(&p, end, &signature.len); - if (rc != 0) { + if ((rc != 0) || ((size_t)(end - p) != signature.len)) { rc = CRYPTO_ERR_SIGNATURE; goto end1; } |
