CVE-2025-46597
Integer Overflow in Bitcoin Core 0.13.0β29.x Risks Data Integrity
Publication date: 2026-03-20
Last updated on: 2026-04-02
Assigner: MITRE
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| bitcoin | bitcoin_core | From 0.13.0 (inc) to 0.30.0 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-190 | The product performs a calculation that can produce an integer overflow or wraparound when the logic assumes that the resulting value will always be larger than the original value. This occurs when an integer value is incremented to a value that is too large to store in the associated representation. When this occurs, the value may become a very small or negative number. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
CVE-2025-46597 is a low-severity vulnerability in Bitcoin Core that affects 32-bit systems. It is caused by an integer overflow during the size check of blocks before they are written to disk.
Specifically, when blocks larger than 1GB are processed, the size check overflows, which can cause the node to crash when attempting to write such a block.
Although standard BLOCK messages cannot send blocks over 1GB, such blocks could theoretically be sent as compact blocks if the receiving node has a non-default, large mempool containing over 1GB of transactions.
Exploitation requires the victim to have set the -maxmempool option above 3GB, which is unlikely on 32-bit systems due to their 4GiB memory limit.
The issue was mitigated by capping the maximum -maxmempool value on 32-bit systems and fixed in Bitcoin Core versions 29.1 and 30.0.
How can this vulnerability impact me? :
This vulnerability can cause a Bitcoin Core node running on a 32-bit system to crash when processing blocks larger than 1GB due to an integer overflow during block size checks.
Such crashes could disrupt the operation of the node, potentially affecting its availability and reliability.
However, exploitation is unlikely because it requires specific conditions, such as a large mempool setting above 3GB, which is uncommon on 32-bit systems.
The vulnerability has been fixed in later versions, so updating to Bitcoin Core 29.1 or 30.0 or later mitigates this risk.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability arises from an integer overflow on 32-bit systems running Bitcoin Core versions 0.13.0 through 29.x when processing blocks larger than 1GB. Detection involves verifying the Bitcoin Core version and system architecture.
- Check the Bitcoin Core version installed: `bitcoin-cli --version` or `bitcoind --version`.
- Determine if the system is 32-bit: `uname -m` (look for i386, i686, or similar indicating 32-bit).
- Monitor node logs for crashes or errors related to block size processing.
There are no specific commands provided to detect exploitation attempts on the network, but monitoring for unusual node crashes or large mempool sizes above 3GB on 32-bit systems may help identify potential issues.
What immediate steps should I take to mitigate this vulnerability?
To mitigate this vulnerability, immediate steps include upgrading Bitcoin Core to a fixed version and ensuring configuration limits are respected.
- Upgrade Bitcoin Core to version 29.1 or later, as these versions include the fix implemented on June 26, 2025.
- If running on a 32-bit system, ensure the -maxmempool option is capped below 3GB to prevent triggering the overflow.
These steps reduce the risk of node crashes due to the integer overflow vulnerability.