CheckOps
Atheris
Atheris is Google's Apache-2.0 coverage-guided Python fuzzing engine, based on libFuzzer, for Python code and CPython native extensions.
Latest public signals
Not refreshed yet. Refresh reads the public site and, when the entry has a GitHub repository, the latest release.
Introduction
Atheris is a coverage-guided Python fuzzing engine. It fuzzes Python code and native extensions written for CPython, and is based on libFuzzer. For native code it can be combined with Address Sanitizer or Undefined Behavior Sanitizer. It supports Linux and macOS.
The source code is at google/atheris on GitHub under the Apache-2.0 licence, with about 1,700 stars; the most recent commit was on 17 June 2026.
Features
- Python fuzzing: Coverage-guided for pure Python.
- Native extensions: Fuzz CPython C extensions.
- Sanitizers: ASan and UBSan for native code.
- FuzzedDataProvider: Helpers to build typed inputs.
- OSS-Fuzz support: Used for Python projects.
Pros
- Free to use: Open source under Apache-2.0.
- Maintained: Commits as recent as 17 June 2026.
Cons
- Platform limits: Linux and macOS only.
- Last commit June 2026: Check activity before adopting.
Usage and Links (Example)
import atheris, sys
with atheris.instrument_imports():
import mylib
def TestOneInput(data):
mylib.parse(data)
atheris.Setup(sys.argv, TestOneInput)
atheris.Fuzz()
Resources:
Pricing
Atheris is free and open source under the Apache-2.0 licence.
Recommended for?
- Python library maintainers.
- Teams with C extensions.
- Not a fit on Windows.
Conclusion
Atheris is the standard coverage-guided fuzzer for Python.
Alternatives
Other tools on CheckOps that cover similar ground. Open a page, or compare one with Atheris side by side.
JJazzerJazzer is Code Intelligence's Apache-2.0 coverage-guided, in-process fuzzer for the JVM, based on libFuzzer, with JUnit integration and bug detectors.Compare with Atheris
AAFL++AFL++ is the community-maintained successor to Google's AFL: a coverage-guided fuzzer with faster execution, better mutations and instrumentation, custom mutators and modes for binaries, licensed AGPL-3.0-or-later.Compare with Atheris
OOSS-FuzzOSS-Fuzz is Google's free continuous fuzzing service for critical open-source projects, running libFuzzer, AFL++ and other engines at scale on ClusterFuzz.Compare with Atheris
Hhonggfuzzhonggfuzz is Google's Apache-2.0 security-oriented fuzzer with evolutionary, feedback-driven fuzzing based on software and hardware code coverage.Compare with Atheris
SSchemathesisSchemathesis is an MIT-licensed property-based API testing tool that generates inputs from OpenAPI, GraphQL and gRPC schemas, chains stateful workflows and finds 500s, schema violations and validation gaps.Compare with Atheris
BBanditBandit is the PyCQA's Apache-2.0 tool for finding common security issues in Python code by building an AST for each file and running security plugins against it.Compare with Atheris