Tomas Mraz e09fc1d746 Limit the execution time of RSA public key check
Fixes CVE-2023-6237

If a large and incorrect RSA public key is checked with
EVP_PKEY_public_check() the computation could take very long time
due to no limit being applied to the RSA public key size and
unnecessarily high number of Miller-Rabin algorithm rounds
used for non-primality check of the modulus.

Now the keys larger than 16384 bits (OPENSSL_RSA_MAX_MODULUS_BITS)
will fail the check with RSA_R_MODULUS_TOO_LARGE error reason.
Also the number of Miller-Rabin rounds was set to 5.

Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/23243)
2024-01-15 10:54:34 +01:00
..
2024-01-11 11:08:31 +01:00
2023-12-29 10:12:05 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-12-29 10:12:05 +01:00
2024-01-03 12:41:31 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-12-19 13:57:32 +01:00
2023-12-12 16:12:32 +00:00
2023-09-07 09:59:15 +01:00
2023-09-28 14:23:29 +01:00
2023-09-28 14:23:29 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-12-29 10:12:05 +01:00
2023-09-28 14:23:29 +01:00
2023-09-28 14:23:29 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-05-03 13:34:51 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-01-12 20:10:21 +11:00
2023-09-28 14:23:29 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-05-03 13:34:51 +01:00
2022-05-03 13:34:51 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-12-01 09:03:04 -05:00
2022-05-03 13:34:51 +01:00
2022-05-03 13:34:51 +01:00
2023-09-28 14:23:29 +01:00
2023-09-07 09:59:15 +01:00
2023-12-29 10:21:10 +01:00
2022-05-03 13:34:51 +01:00
2022-05-03 13:34:51 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-09-05 10:20:30 +10:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2022-05-03 13:34:51 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-07 09:59:15 +01:00
2023-09-11 10:15:30 +02:00
2023-09-07 09:59:15 +01:00