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

Atheris is a Python fuzzing engine guided by coverage, designed to test both Python code and native extensions developed for CPython. It is built on the foundation of libFuzzer, providing an effective method for identifying additional bugs when fuzzing native code. Atheris is compatible with Linux (both 32- and 64-bit) and Mac OS X, supporting Python versions ranging from 3.6 to 3.10. Featuring an integrated libFuzzer, it is well-suited for fuzzing Python applications, but when targeting native extensions, users may need to compile from source to ensure compatibility between the libFuzzer version in Atheris and their Clang installation. Since Atheris depends on libFuzzer, which is a component of Clang, users of Apple Clang will need to install a different version of LLVM, as the default does not include libFuzzer. The implementation of Atheris as a coverage-guided, mutation-based fuzzer (LibFuzzer) simplifies the setup process by eliminating the need for input grammar definition. However, this approach can complicate the generation of inputs for code that processes intricate data structures. Consequently, while Atheris offers ease of use in many scenarios, it may face challenges when dealing with more complex parsing requirements.

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

API Access

Has API

Screenshots View All

Screenshots View All

Integrations

Atheris
C
C++
ClusterFuzz
Fuzzbuzz
Google ClusterFuzz
Google OSS-Fuzz
Jazzer
LibFuzzer
Python

Integrations

Atheris
C
C++
ClusterFuzz
Fuzzbuzz
Google ClusterFuzz
Google OSS-Fuzz
Jazzer
LibFuzzer
Python

Pricing Details

Free
Free Trial
Free Version

Pricing Details

Free
Free Trial
Free Version

Deployment

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

Deployment

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

Customer Support

Business Hours
Live Rep (24/7)
Online Support

Customer Support

Business Hours
Live Rep (24/7)
Online Support

Types of Training

Training Docs
Webinars
Live Training (Online)
In Person

Types of Training

Training Docs
Webinars
Live Training (Online)
In Person

Vendor Details

Company Name

Google

Website

github.com/google/atheris

Vendor Details

Company Name

LLVM Project

Founded

2003

Website

llvm.org/docs/LibFuzzer.html

Product Features

Product Features

Alternatives

Jazzer Reviews

Jazzer

Code Intelligence

Alternatives

Atheris Reviews

Atheris

Google
LibFuzzer Reviews

LibFuzzer

LLVM Project
afl-unicorn Reviews

afl-unicorn

Battelle
ToothPicker Reviews

ToothPicker

Secure Mobile Networking Lab
go-fuzz Reviews

go-fuzz

dvyukov
go-fuzz Reviews

go-fuzz

dvyukov
Jazzer Reviews

Jazzer

Code Intelligence