Location via proxy:   
[Report a bug]   [Manage cookies]                

The first fuzzing framework for Solana programs written in Rust

Wake Banner

Installation

Box
via cargo
cargo install trident-cli

Latest release

3.99

Features

  • Coverage-guided gray box fuzzer specifically for Solana programs
  • Built in Rust for maximum performance and reliability
  • Intuitive Anchor-like macros for streamlined testing
  • High-performance TridentSVM client powered by Anza's SVM API
  • Leverages battle-tested web2 fuzzers Honggfuzz and AFL

Trident stops hacks 

Trident is used by Ackee Blockchain Security to perform smart contract audits, and it helped us discover a bunch of high and critical vulnerabilities. 
Vulnerability
Severity
Project
Discovered by
Resources
Infinite money glitch
Critical
Kamino
Fuzz test
No tomatoes
in sauce
Critical
Marinade
Detector
Funds lost between dimensions
Critical
Wormhole
Fuzz test  

Trident up close

Trident executes thousands of transactions per second, allowing you to detect critical vulnerabilities quickly and adding an additional layer of security to your on-chain programs.

Our coverage-guided fuzzer automatically identifies edge cases, arithmetic overflows, and missing account constraints before they reach production.
  • Generate fuzz tests directly from IDL data in your Anchor workspace
  • Write clean tests using familiar Anchor-like macro syntax
  • Execute and test complex scenarios by combining multiple instructions within a single transaction
  • Leverage TridentSVM for high-performance transaction execution
  • Take control of your testing workflow with powerful transaction hooks for pre/post manipulation, invariant validation, and differential fuzzing
  • Define custom testing flows, allowing you to fuzz specific sequences of behaviors
  • Import Mainnet and Devnet states via Trident manifest for comprehensive environment setup
Documentation
Trident documentation can be found here.
License
Licensed under the MIT license.
Grant