Skip to content

Cyfrin/aderyn

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

816 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation



A powerful Solidity static analyzer that takes a bird's eye view over your smart contracts.



Docs Discord X/Twitter


Stargazers Forks Contributors Release Issues GPL-3.0 License

What is Aderyn?

Aderyn is an open-source public good developer tool. It is a Rust-based solidity smart contract static analyzer designed to help protocol engineers and security researchers find vulnerabilities in Solidity code bases.

You can read the Cyfrin official documentation for an in-depth look at Aderyn's functionalities.

There is also an officially supported VSCode extension for Aderyn. Download from the Visual Studio Marketplace and start identifying vulnerabilities in your Solidity code with ease.

Features

  • Runs without need for any configuration support for Foundry and Hardhat projects.
  • Creates Markdown, JSON and Sarif reports.
  • Powers our officially supported VSCode extension (1800+ downloads)
  • List of supported detectors
  • Contributor Friendly
  • Downloaded more than 45K times.

Installation

NOTE Windows users must have WSL installed

Cyfrinup - All in one cross platform installation manager for Cyfrin tools.

One time setup. - Run cyfrinup

Re-run cyfrinup to upgrade all Cyfrin tools to the latest version.

Curl

Once installed, run aderyn-update to upgrade.

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/cyfrin/aderyn/releases/latest/download/aderyn-installer.sh | bash

Homebrew

Once installed, run brew upgrade cyfrin/tap/aderyn to upgrade.

brew install cyfrin/tap/aderyn

npm

Once installed, re-run npm install @cyfrin/aderyn -g to upgrade.

npm install @cyfrin/aderyn -g

If you are installing with Curl or Homebrew or npm, ensure that the correct version of Aderyn in your path comes from either the Homebrew or npm global packages directory. If an older version exists at ~/.cyfrin/bin/aderyn, remove it using rm -f ~/.cyfrin/bin/aderyn, as this is no longer the default installation location.

Quick Start

Run aderyn --version to check if Aderyn is installed successfully.

Quick Start example with video guide.

cd path/to/solidity/project/root
aderyn

This generates a report.md

See examples using more CLI options here

VS Code extension

Officially supported VSCode extension for Aderyn. Download from Visual Studio Marketplace

Github Action

Checkout Aderyn CI Assistant in the marketplace. Performs Static analysis on Solidity codebases in CI to catch potential vulnerabilities before committing code.

Contributing & License

Help us build Aderyn 🦜 Please see our contribution guidelines for in-depth developer environment setup and PR approval process. Aderyn is an open-source software licensed under the GPL-3.0 License.

To learn how to create your custom Aderyn detectors, checkout the official docs

Aderyn relies on a custom backend to generate AST for Solidity codebases. It leverages foundry-compilers

Credits

This project exists thanks to all the people who contribute.

Attribution

  • Initial inspiration for AST Visitor code from solc-ast-rs.
  • Original detectors based on 4naly3er detectors.
  • Shoutout to the original king of static analysis slither.