openssl/test/recipes/91-test_pkey_check_data
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
..
dhpkey.pem
dsapub_noparam.der Add test for DSA pubkey without param import and check 2023-02-07 17:05:10 +01:00
dsapub.pem Add test for DSA pubkey without param import and check 2023-02-07 17:05:10 +01:00
ec_p256_bad_0.pem
ec_p256_bad_1.pem
rsapub_17k.pem Limit the execution time of RSA public key check 2024-01-15 10:54:34 +01:00
sm2_bad_0.pem
sm2_bad_1.pem
sm2_bad_neg1.pem