Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2023-34451— CometBFT may duplicate transactions in the mempool's data structures

Quick assessment

Affected
cometbft cometbft
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

CometBFT是一种拜占庭容错 (BFT) 中间件,它采用状态转换机(用任何编程语言编写)并可在许多机器上安全地复制。 CometBFT v0.37.0、 v0.37.1、 v0.34.28之前版本存在安全漏洞,该漏洞源于列表和映射这两个数据结构未保持同步。

CVSS 8.2 · High EPSS 0.90% · P57

Possible ATT&CK Techniques 1 AI

T1498.002 · Reflection Amplification
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2023-34451

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
CometBFT may duplicate transactions in the mempool's data structures
Source: CVE Program / CVE List V5
Vulnerability Description
CometBFT is a Byzantine Fault Tolerant (BFT) middleware that takes a state transition machine and replicates it on many machines. The mempool maintains two data structures to keep track of outstanding transactions: a list and a map. These two data structures are supposed to be in sync all the time in the sense that the map tracks the index (if any) of the transaction in the list. In `v0.37.0`, and `v0.37.1`, as well as in `v0.34.28`, and all previous releases of the CometBFT repo2, it is possible to have them out of sync. When this happens, the list may contain several copies of the same transaction. Because the map tracks a single index, it is then no longer possible to remove all the copies of the transaction from the list. This happens even if the duplicated transaction is later committed in a block. The only way to remove the transaction is by restarting the node. The above problem can be repeated on and on until a sizable number of transactions are stuck in the mempool, in order to try to bring down the target node. The problem is fixed in releases `v0.34.29` and `v0.37.2`. Some workarounds are available. Increasing the value of `cache_size` in `config.toml` makes it very difficult to effectively attack a full node. Not exposing the transaction submission RPC's would mitigate the probability of a successful attack, as the attacker would then have to create a modified (byzantine) full node to be able to perform the attack via p2p.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
在移除最后引用时对内存的释放不恰当(内存泄露)
Source: CVE Program / CVE List V5
Vulnerability Title
CometBFT 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
CometBFT是一种拜占庭容错 (BFT) 中间件,它采用状态转换机(用任何编程语言编写)并可在许多机器上安全地复制。 CometBFT v0.37.0、 v0.37.1、 v0.34.28之前版本存在安全漏洞,该漏洞源于列表和映射这两个数据结构未保持同步。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
cometbft cometbft < 0.34.29 -

II. Public POCs for CVE-2023-34451

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2023-34451

登录查看更多情报信息。

Patches & Fixes for CVE-2023-34451 (2)

Vendor Advisories for CVE-2023-34451 (1)

IV. Related Vulnerabilities

V. Comments for CVE-2023-34451

No comments yet


Leave a comment