50 Essential Tools for Smart Contract Auditors
Smart contract auditing requires a comprehensive toolkit spanning automated analysis, manual review aids, and workflow management. Here are the essential tools used by professional auditors.
Static Analysis
Tools that analyze code without executing it.
Slither
FreeThe industry standard static analyzer from Trail of Bits. 80+ detectors covering common vulnerabilities, code quality, and optimization.
Aderyn
FreeRust-based static analyzer from Cyfrin. Fast analysis with growing detector library.
Solhint
FreeSolidity linter for style and security. Catches common issues early.
Semgrep
Free tier + PaidPattern-based code analysis. Write custom rules for project-specific issues.
Amarna
FreeStatic analyzer for Cairo/StarkNet contracts.
Symbolic Execution
Tools that explore all possible program paths mathematically.
Mythril
FreeSymbolic execution for detecting security vulnerabilities through constraint solving.
Halmos
FreeSymbolic testing tool from a16z. Proves properties through symbolic execution.
HEVM
FreeSymbolic execution engine from DappTools. Deep analysis of EVM bytecode.
Pyrometer
FreeAbstract interpretation for finding numeric issues like overflows.
Manticore
FreeSymbolic execution engine supporting EVM and native binaries.
Fuzzing
Tools that test contracts with random inputs to find edge cases.
Echidna
FreeProperty-based fuzzer from Trail of Bits. Tests invariants through random input generation.
Foundry Fuzz
FreeFast fuzzing built into Foundry. First-choice for most projects.
Medusa
FreeParallel fuzzer compatible with Echidna tests. Better performance on multi-core systems.
Chimera
FreeFramework for building reusable fuzz tests across protocols.
Harvey
FreeGreybox fuzzer that uses coverage to guide input generation.
Formal Verification
Tools that mathematically prove contract properties.
Certora Prover
PaidCommercial formal verification platform. Industry standard for critical protocols.
Solidity SMTChecker
FreeBuilt-in formal verification in Solidity compiler.
Act
FreeSpecification language for formal verification of smart contracts.
K Framework
FreeFormal semantics framework. Used for EVM formal semantics.
Debugging and Analysis
Tools for understanding contract behavior.
Tenderly
Free tier + PaidTransaction simulation and debugging. Trace transactions step by step.
Foundry Debugger
FreeInteractive debugger for stepping through transactions.
Etherscan
FreeBlock explorer with verified source code, transaction traces, and decompilation.
Phalcon
FreeTransaction explorer from BlockSec showing detailed execution traces.
Dedaub
FreeDecompiler and contract analysis. See contract logic without source.
Code Review
Tools that aid manual code review.
VS Code Solidity
FreeEssential VS Code extension with syntax highlighting and IntelliSense.
Solidity Visual Developer
FreeVS Code extension with interactive graphs, metrics, and call trees.
Sol2UML
FreeGenerate UML diagrams from Solidity contracts.
Surya
FreeUtility for contract analysis including call graphs and function summaries.
Audit Workflow
Tools for managing the audit process.
Code4rena
Revenue shareCompetitive audit platform. Participate in audits or submit protocols.
Sherlock
Revenue shareAudit marketplace with insurance component.
Immunefi
FreeBug bounty platform for Web3. Find vulnerabilities for rewards.
Notion/Obsidian
Free tier + PaidNote-taking tools for organizing findings and audit documentation.
Reference and Research
Resources for staying current and learning.
SWC Registry
FreeSmart Contract Weakness Classification. Standard vulnerability taxonomy.
Rekt News
FreePost-mortems of DeFi hacks. Essential reading for auditors.
DeFiHackLabs
FreeRepository of exploit reproductions. Learn attack patterns hands-on.
Solodit
FreeDatabase of audit findings from public reports.
Tips from the field
- 1.
Run Slither first on every audit. It catches low-hanging fruit and gives you a codebase overview.
- 2.
Combine static analysis with fuzzing. Static tools find code patterns; fuzzers find edge cases.
- 3.
Reproduce past exploits to understand attack patterns. DeFiHackLabs is invaluable.
- 4.
Use Tenderly to trace live transactions when investigating suspicious behavior.
- 5.
Build your own checklist from audit reports. Solodit is a goldmine for this.