NRDAX
CLI Submit

← registry

NRDAX-T0006 - Async Runtime Blocking VM Execution

Compute amplification · RPC and public API · no bound · active · first seen 2026-07-09

provenance: Reproduced in NullRabbit's attack-reproduction pipeline

mechanism

The simulateTransaction RPC handler executes the BPF VM synchronously on the calling Tokio worker thread (no spawn_blocking interposed), and because sigVerify defaults off and simulation is gas-free, an attacker can submit CU-maximizing transactions against pre-loaded programs at no cost. Each concurrent request pins a shared executor thread for the full simulation duration, so per-worker throughput degrades proportionally to concurrent request count, exhausting the bounded async worker pool and starving all other RPC handlers sharing it. The fix-class is interposing async offload (spawn_blocking / dedicated thread pool with backpressure) plus request-side CU/cost accounting for simulate calls, not just on-chain compute budgets.

live exposure

No exposure data. Slashr ↗ has no risk signal mapped to this technique yet — absence of data is not absence of exposure.

research

In-depth write-ups of this attack on nullrabbit.ai.

instances (5)

chainprimitivefidelityoriginreproducer (bundle)source
ethereum eth_call_stateoverride_gascap_interpreter_compute_burn lab NullRabbit Labs eth_call_stateoverride_gascap_interpreter_compute_burn -
iota iota_f14_devinspect_cpu_wedge lab NullRabbit Labs iota_f14_devinspect_cpu_wedge docs.iota.org ↗
iota iota_f14_f10_grpc_chained lab NullRabbit Labs iota_f14_f10_grpc_chained docs.iota.org ↗
solana SOL_F14_simulate_transaction_sync_wedge lab NullRabbit Labs SOL_F14_simulate_transaction_sync_wedge -
sui sui_F14_devinspect_tokio_wedge lab NullRabbit Labs sui_F14_devinspect_tokio_wedge -

related (Compute amplification)

cite

https://nrdax.com/techniques/NRDAX-T0006

plain

NRDAX Registry. Technique NRDAX-T0006.

bibtex
@misc{nrdax_NRDAX_T0006,
  title = {Async Runtime Blocking VM Execution (NRDAX-T0006)},
  howpublished = {NRDAX Registry},
  url = {https://nrdax.com/techniques/NRDAX-T0006},
}
json (csl)
{
  "id": "nrdax-NRDAX-T0006",
  "type": "dataset",
  "title": "Async Runtime Blocking VM Execution (NRDAX-T0006)",
  "URL": "https://nrdax.com/techniques/NRDAX-T0006",
  "publisher": "NRDAX Registry"
}
badge

NRDAX-T0006 in the NRDAX registry

[![NRDAX-T0006 in the NRDAX registry](https://nrdax.com/badge/NRDAX-T0006.svg)](https://nrdax.com/techniques/NRDAX-T0006-async-runtime-blocking-vm-execution)

use from the CLI

Retrieve or cite this technique from a script or the terminal with the NRDAX Python library & CLI.

Retrieve this technique
nrdax get NRDAX-T0006
Cite it (BibTeX)
nrdax cite NRDAX-T0006 --format bibtex

CLI guide → GitHub ↗