Impact
In ENS contracts version 1.6.2 and earlier, the RSASHA256Algorithm and RSASHA1Algorithm fail to validate PKCS#1 v1.5 padding when verifying RSA signatures, allowing the classic Bleichenbacher signature forgery to generate valid signatures for a chosen hash. This flaw permits an attacker to forge signatures that appear to originate from the legitimate key signing key, effectively enabling fraudulent registration of any sub‑domain under vulnerable TLDs that use a low public exponent, such as e=3. The result is a loss of integrity and authenticity of the ENS namespace, because domain ownership can be transferred from the rightful DNS holder to an adversary without access to the DNS zone. The flaw is a form of cryptographic weakness (CWE‑347).
Affected Systems
The vulnerability affects the ENS name service contracts provided by ensdomains:ens-contracts, specifically the RSASHA256Algorithm and RSASHA1Algorithm contracts in releases 1.6.2 and earlier. ENS‑supported top‑level domains .cc and .name use the insecure e=3 key signing key and are thus directly impacted, but any ENS TLD that relies on the vulnerable contracts and a low public exponent is potentially susceptible.
Risk and Exploitability
The CVSS score is 2.7, indicating a low overall severity, and the EPSS score is less than 1 %, implying a low probability of exploitation at present. The vulnerability is not listed in the CISA KEV catalog. Nevertheless, the attack is straightforward for an adversary willing to forge signatures, requiring only interaction with the ENS contracts and the ability to register the forged domain. The impact on domain ownership makes this a serious concern for TLD operators who continue to use the vulnerable contracts or low public exponents.
OpenCVE Enrichment
Github GHSA