Average Ratings 0 Ratings

Total
ease
features
design
support

No User Reviews. Be the first to provide a review:

Write a Review

Average Ratings 0 Ratings

Total
ease
features
design
support

No User Reviews. Be the first to provide a review:

Write a Review

Description

Echidna is a Haskell-based tool created for fuzzing and property-based testing of Ethereum smart contracts. It employs advanced grammar-driven fuzzing strategies that leverage a contract's ABI to challenge user-defined predicates or Solidity assertions. Designed with a focus on modularity, Echidna allows for easy extensions to incorporate new mutations or to target specific contracts under particular conditions. The tool generates inputs that are specifically adapted to your existing codebase, and it offers optional features for corpus collection, mutation, and coverage guidance to uncover more elusive bugs. It utilizes Slither to extract critical information prior to launching the fuzzing process, ensuring a more effective campaign. With source code integration, Echidna can pinpoint which lines of code are exercised during testing, and it provides an interactive terminal UI along with text-only or JSON output formats. Additionally, it includes automatic test case minimization for efficient triage and integrates seamlessly into the development workflow. The tool also reports maximum gas usage during fuzzing activities and supports complex contract initialization through Etheno and Truffle, enhancing its usability for developers. Ultimately, Echidna stands out as a robust solution for ensuring the reliability and security of Ethereum smart contracts.

Description

LibFuzzer serves as an in-process, coverage-guided engine for evolutionary fuzzing. By being linked directly with the library under examination, it injects fuzzed inputs through a designated entry point, or target function, allowing it to monitor the code paths that are executed while creating variations of the input data to enhance code coverage. The coverage data is obtained through LLVM’s SanitizerCoverage instrumentation, ensuring that users have detailed insights into the testing process. Notably, LibFuzzer continues to receive support, with critical bugs addressed as they arise. To begin utilizing LibFuzzer with a library, one must first create a fuzz target—this function receives a byte array and interacts with the API being tested in a meaningful way. Importantly, this fuzz target operates independently of LibFuzzer, which facilitates its use alongside other fuzzing tools such as AFL or Radamsa, thereby providing versatility in testing strategies. Furthermore, the ability to leverage multiple fuzzing engines can lead to more robust testing outcomes and clearer insights into the library's vulnerabilities.

API Access

Has API No 

API Access

Has API Yes 

Screenshots View All

Screenshots View All

Integrations

Atheris No 
C No 
C++ No 
ClusterFuzz No 
Docker Yes 
Etheno Yes 
Ethereum Yes 
Fuzzbuzz No 
GitHub Yes 
Google ClusterFuzz No 
Haskell Yes 
Homebrew Yes 
JSON Yes 
Jazzer No 
Nix Yes 
Solidity Yes 

Integrations

Atheris Yes 
C Yes 
C++ Yes 
ClusterFuzz Yes 
Docker No 
Etheno No 
Ethereum No 
Fuzzbuzz Yes 
GitHub No 
Google ClusterFuzz Yes 
Haskell No 
Homebrew No 
JSON No 
Jazzer Yes 
Nix No 
Solidity No 

Pricing Details

Free
Free Trial No 
Free Version Yes 

Pricing Details

Free
Free Trial No 
Free Version Yes 

Deployment

Web-Based No 
On-Premises No 
iPhone App No 
iPad App No 
Android App No 
Windows Yes 
Mac Yes 
Linux Yes 
Chromebook No 

Deployment

Web-Based No 
On-Premises No 
iPhone App No 
iPad App No 
Android App No 
Windows Yes 
Mac No 
Linux Yes 
Chromebook No 

Customer Support

Business Hours No 
Live Rep (24/7) No 
Online Support Yes 

Customer Support

Business Hours No 
Live Rep (24/7) No 
Online Support Yes 

Types of Training

Training Docs Yes 
Webinars No 
Live Training (Online) No 
In Person No 

Types of Training

Training Docs Yes 
Webinars No 
Live Training (Online) No 
In Person No 

Vendor Details

Company Name

Crytic

Website

github.com/crytic/echidna

Vendor Details

Company Name

LLVM Project

Founded

2003

Website

llvm.org/docs/LibFuzzer.html

Product Features

Product Features

Alternatives

Alternatives

Atheris Reviews

Atheris

Google
LibFuzzer Reviews

LibFuzzer

LLVM Project
afl-unicorn Reviews

afl-unicorn

Battelle
Honggfuzz Reviews

Honggfuzz

Google
Peach Fuzzer Reviews

Peach Fuzzer

Peach Tech
Jazzer Reviews

Jazzer

Code Intelligence