ethereum/go-ethereum · Security
Go Ethereum vulnerable to DoS via malicious p2p message
- GHSA ID
- GHSA-q26p-9cq4-7fc2
- CVE ID
- CVE-2025-24883
- Severity
- medium
- Published
- Updated
- CVSS v4
- 6.6 · CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:U
Description
Impact
A vulnerable node can be forced to shutdown/crash using a specially crafted message.
During the peer-to-peer connection handshake, a shared secret key is computed. The implementation did not verify whether the EC public key provided by the remote party is a valid point on the secp256k1 curve. By simply sending an all-zero public key, a crash could be induced due to unexpected results from the handshake.
The issue was fixed by adding a curve point validity check in https://github.com/ethereum/go-ethereum/commit/159fb1a1db551c544978dc16a5568a4730b4abf3
Patches
A fix has been included in geth version 1.14.13 and onwards.
Workarounds
Unfortunately, no workaround is available.
Credits
This issue was originally reported to Polygon Security by David Matosse (@iam-ned).
CWEs
- CWE-20 · Improper Input Validation
- CWE-248 · Uncaught Exception
References
- https://github.com/ethereum/go-ethereum/security/advisories/GHSA-q26p-9cq4-7fc2 ↗
- https://nvd.nist.gov/vuln/detail/CVE-2025-24883 ↗
- https://github.com/ethereum/go-ethereum/commit/fa9a2ff8687ec9efe57b4b9833d5590d20f8a83f ↗
- https://pkg.go.dev/vuln/GO-2025-3436 ↗
- https://github.com/ethereum/go-ethereum/commit/159fb1a1db551c544978dc16a5568a4730b4abf3 ↗
- https://github.com/advisories/GHSA-q26p-9cq4-7fc2 ↗