wolfSSL and wolfCrypt 4.0.0 and earlier (when configured without --enable-fpecc, --enable-sp, or --enable-sp-math) contain a timing side channel in ECDSA signature generation. This allows a local attacker, able to precisely measure the duration of signature operations, to infer information about the nonces used and potentially mount a lattice attack to recover the private key used. The issue occurs because ecc.c scalar multiplication might leak the bit length.
This is a vulnerability exploitable with only local access requires the attacker to have either
physical access to the vulnerable system or a local (shell) account. Examples of locally
exploitable vulnerabilities are peripheral attacks such as Firewire/USB DMA attacks, and
local privilege escalations (e.g., sudo).
Specialized access conditions exist. For example,
in most configurations, the attacking party must already have elevated privileges or spoof additional systems
in addition to the attacking system (e.g., DNS hijacking).
The attack depends on social engineering methods that would be easily detected by knowledgeable people.
For example, the victim must perform several suspicious or atypical actions.
The vulnerable configuration is seen very rarely in practice.
If a race condition exists, the window is very narrow.
Authentication is not required to access and exploit the vulnerability.
There is considerable informational disclosure. Access to some system files is
possible, but the attacker does not have control over what is obtained, or the scope of
the loss is constrained. An example is a vulnerability that divulges only certain tables
in a database.
There is no impact to the integrity of the system.
There is no impact to the availability of the system.
NIST (National Institute of Standards and Technology) NVD (National Vulnerability Database)