CVE-2023-5388:
NSS was susceptible to a timing side-channel attack when performing RSA decryption. This attack...
6.5
Basic Information
Technical Details
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability CVE-2023-5388 is a timing side-channel attack against RSA decryption in NSS. The core issue, as detailed in Bugzilla #1780432 and the commit message for the fix, was that fundamental multi-precision integer (MPI) operations — specifically multiplication and Montgomery reduction — did not execute in constant time. This was particularly problematic during the RSA unblinding process()
. The 'clamping' behavior of MPI objects (where the number of internal limbs could change based on the value) could also lead to timing variations in subsequent operations like converting the MPI to a byte string for padding checks. The patch explicitly mentions adding constant-time versions of 'mul' (multiplication) and montgomery_reduce
. Therefore, the pre-existing, non-constant-time versions of these functions are identified as vulnerable. The RSA unpadding functions are also listed with medium confidence as they consume the output of these vulnerable operations, and their behavior could be affected by the non-constant time nature of the preceding calculations, as described in the Bugzilla report regarding conversion to byte strings and padding checks.