|
20 | 20 | details). When reported, a vulnerability will be assigned a severity category.
|
21 | 21 | We differentiate between 4 classes of vulnerabilities:
|
22 | 22 |
|
23 |
| -* **Low**: bugs which are hard to exploit or have a low impact. For instance |
24 |
| - a wallet bug which requires access to the victim's machine. |
| 23 | +### Critical |
25 | 24 |
|
26 |
| -* **Medium**: bugs with limited impact. For instance a local network remote crash. |
| 25 | +Bugs that threaten the fundamental security and integrity of the entire Bitcoin |
| 26 | +network. These are bugs that allow for coin theft at the protocol level, the |
| 27 | +creation of coins outside of the specified issuance schedule, or permanent, |
| 28 | +network-wide chain splits. |
27 | 29 |
|
28 |
| -* **High**: bugs with significant impact. For instance a remote crash, or a local network RCE. |
| 30 | +Examples: |
| 31 | +* A bug allowing inflating the money supply by spending the same transaction |
| 32 | + output twice within a block ([CVE-2018-17144](/en/2018/09/20/notice/)). |
| 33 | +* A consensus failure where nodes running older software rejected a block that |
| 34 | + newer software accepted due to an underlying database limit, causing a |
| 35 | + network-wide chain split ([BIP |
| 36 | + 50](https://github.com/bitcoin/bips/blob/master/bip-0050.mediawiki)). |
29 | 37 |
|
30 |
| -* **Critical**: bugs which threaten the whole network's integrity. For instance an inflation or coin theft bug. |
| 38 | +### High |
| 39 | + |
| 40 | +Bugs with a significant impact on affected nodes or the network. These are |
| 41 | +typically exploitable remotely under default configurations and can cause |
| 42 | +widespread disruption. |
| 43 | + |
| 44 | +Examples: |
| 45 | +* A remotely triggerable crash that could take many nodes offline |
| 46 | + ([CVE-2024-35202](/en/2024/10/08/disclose-blocktxn-crash/)). |
| 47 | +* A denial-of-service attack that causes a node to stall for an extended |
| 48 | + period, preventing it from processing new transactions and blocks |
| 49 | + ([CVE-2024-52914](/en/2024/07/03/disclose-orphan-dos/)). |
| 50 | +* A memory exhaustion vulnerability that could be triggered remotely to crash |
| 51 | + nodes by having them store an excessive amount of block headers |
| 52 | + ([CVE-2019-25220](/en/2024/09/18/disclose-headers-oom/)). |
| 53 | + |
| 54 | +### Medium |
| 55 | + |
| 56 | +Bugs that can noticeably degrade the network's or a node's performance or |
| 57 | +functionality, but are limited in their scope or exploitability. These might |
| 58 | +require special conditions to trigger, such as non-default settings, or result |
| 59 | +in service degradation rather than a complete node failure. |
| 60 | + |
| 61 | +Examples: |
| 62 | +* A potential Remote Code Execution (RCE) vulnerability on the local network |
| 63 | + that is only exploitable if a non-default feature like UPnP is enabled |
| 64 | + ([CVE-2015-20111](/en/2024/07/03/disclose_upnp_rce/)). |
| 65 | +* A peer could hinder block propagation by sending mutated blocks, delaying the |
| 66 | + reception of new blocks for a node |
| 67 | + ([CVE-2024-52921](/en/2024/10/08/disclose-mutated-blocks-hindering-propagation/)). |
| 68 | +* An attacker announcing a block to a node and then failing to provide it, |
| 69 | + causing the victim node to wait for up to 10 minutes before being able to |
| 70 | + fetch it from another peer |
| 71 | + ([CVE-2024-52922](/en/2024/11/05/cb-stall-hindering-propagation/)). |
| 72 | + |
| 73 | +### Low |
| 74 | + |
| 75 | +Bugs that are challenging to exploit or have a minor impact on a node's |
| 76 | +operation. They might only be triggerable under non-default configurations or |
| 77 | +from the local network, and do not pose an immediate or widespread threat. |
| 78 | + |
| 79 | +Examples: |
| 80 | +* A malformed `getdata` message could cause a peer connection to enter an |
| 81 | + infinite loop, consuming CPU but not affecting the node's ability to process |
| 82 | + blocks or handle other peer connections |
| 83 | + ([CVE-2024-52920](/en/2024/07/03/disclose-getdata-cpu/)). |
| 84 | +* A bug in a dependency that could crash a node, but only if a non-default |
| 85 | + feature like UPnP is enabled |
| 86 | + ([CVE-2024-52917](/en/2024/07/31/disclose-upnp-oom/)). |
| 87 | +* A bug that could crash a node, but is extremely difficult to exploit |
| 88 | + ([CVE-2024-52919](/en/2025/04/28/disclose-cve-2024-52919/)). |
| 89 | + |
| 90 | +--- |
31 | 91 |
|
32 | 92 | **Low** severity bugs will be disclosed 2 weeks after a fixed version exists on the current major release branch.
|
33 | 93 | A pre-announcement will be made at the same time as the release.
|
|
0 commit comments