CVE-2021-45698
Rust vulnerability analysis and mitigation

Overview

An issue was discovered in the ckb crate before 0.40.0 for Rust. A getblocktemplate RPC call may fail in situations where it is supposed to select a Nervos CKB blockchain transaction with a higher fee rate than another transaction (RustSec Advisory, NVD). The vulnerability was reported on July 25, 2021, and affects the Nervos CKB blockchain node software.

Technical details

The vulnerability occurs when a cell has been used as both a cell dep and an input in different transactions. For example, if cell C is used as a dep group in transaction A and is destroyed in transaction B, and both transactions are added to the transaction pool (with A being added first), the issue manifests when generating the block template. If transaction B has a higher fee rate, it will be processed before transaction A, which invalidates transaction A. Instead of dropping transaction A, the getblocktemplate RPC call fails entirely (RustSec Advisory). The vulnerability has been assigned a CVSS v3.1 Base Score of 9.8 CRITICAL with vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H (NVD).

Impact

The vulnerability affects the block template generation process in the Nervos CKB blockchain. When triggered, it causes the getblocktemplate RPC call to fail, potentially disrupting the normal operation of miners and block generation on the network (RustSec Advisory).

Mitigation and workarounds

The vulnerability was patched in version 0.40.0 of the ckb crate. As a workaround, users can either submit transaction B after transaction A is already on chain, or make B explicitly depend on A by adding any output cell on A as a dep cell or input in B. Alternatively, transactions A and B can be merged, as CKB allows using the same cell as both dep and input in the same transaction. Users can also ensure the fee rate of B is less than A so A always has higher priority (RustSec Advisory).

Additional resources


SourceThis report was generated using AI

Related Rust vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2025-66627HIGH8.4
  • RustRust
  • wasmi
NoYesDec 09, 2025
GHSA-xrv8-2pf5-f3q7MEDIUM6
  • RustRust
  • nitro-tpm-pcr-compute
NoYesDec 05, 2025
CVE-2025-67487MEDIUM5.5
  • RustRust
  • static-web-server
NoYesDec 09, 2025
CVE-2025-66622LOW1.3
  • RustRust
  • matrix-sdk-base
NoYesDec 09, 2025
RUSTSEC-2025-0135N/AN/A
  • RustRust
  • matrix-sdk-base
NoYesDec 08, 2025

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management