atheris

Automate coverage-guided fuzzing of Python code and C extensions with libFuzzer and AddressSanitizer.

Updated Jan 24, 2026
One-click install
npx skills add https://github.com/amano--/call-center --skill atheris-amano
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: atheris
Source: https://github.com/amano--/call-center/tree/main/.gemini/antigravity/skills/trailofbits-security/atheris
Command: npx skills add https://github.com/amano--/call-center --skill atheris-amano

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill helps developers find bugs and security vulnerabilities in Python code and C extensions by automatically generating diverse inputs to test the code's robustness.

Core Features & Use Cases

  • Coverage-guided fuzzing: Automatically instruments Python code to track which parts are executed, guiding the fuzzer towards unexplored code paths.
  • Fuzzing Python C extensions: Supports fuzzing native code written in C/C++ that is used by Python.
  • Use Case: A developer can use Atheris to automatically discover memory corruption bugs or crashes in a Python library they are developing, ensuring higher quality and security.

Quick Start

Use the atheris skill to fuzz the provided python script 'fuzz_target.py'.

Frequently Asked Questions about atheris

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fuzz Python code to find bugs and security vulnerabilities?

You can fuzz Python code by using coverage-guided fuzzing to automatically generate diverse inputs and track executed code paths. This process instruments the code to discover crashes and memory corruption issues.

Can I use coverage-guided fuzzing to test Python C extensions?

Yes, coverage-guided fuzzing supports testing Python C extensions by compiling native C/C++ code with specific flags. It integrates with AddressSanitizer to detect memory corruption issues within the native extensions.

What is coverage-guided fuzzing and how does it find memory corruption issues?

Coverage-guided fuzzing is a testing technique that instruments Python code to track execution paths, guiding the fuzzer towards unexplored code. It integrates with libFuzzer to automatically generate inputs that trigger crashes and memory corruption.

Do I need AddressSanitizer to fuzz native C/C++ code used by Python?

Yes, AddressSanitizer is integrated to detect memory corruption issues when fuzzing native C/C++ code. Fuzzing Python C extensions requires specific compilation flags and environment configurations to enable this memory error detection.

What is the best way to automate finding crashes in a Python library I am developing?

Automating crash discovery in a Python library is best done by running a fuzzer against a custom fuzz target script. The fuzzer automatically generates diverse inputs to test the code's robustness and uncover security vulnerabilities.