# mykter/afl-training

Exercises to learn how to fuzz with American Fuzzy Lop

Repository: https://github.com/mykter/afl-training
Canonical: https://ross.abutalabs.com/products/afl-training
Language: C
License: NOASSERTION
License Family: other
Topics: afl, fuzzing, training, workshop
Last push: 2022-10-12T11:23:26+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 3353, "days_push": 1421, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1283, forks 200 (observed 2026-08-28T04:04:14.462623+00:00)

## What it is
A hands-on workshop and set of exercises for learning how to fuzz C programs with American Fuzzy Lop (and afl++), including challenges based on real vulnerabilities in popular open source projects. It includes a presentation, video walkthrough, Docker environment, and guided challenges with hints and answers.

## Use cases
- learn how to fuzz with AFL
- practice writing fuzzing test harnesses
- rediscover real vulnerabilities like heartbleed through fuzzing
- get started with coverage-guided fuzzing in C
- set up a fuzzing environment with Docker
- learn persistent mode and ASAN fuzzing techniques

## When to choose
- you want a structured, hands-on introduction to AFL/afl++ fuzzing
- you prefer learning by solving challenges based on real CVEs
- you have basic C and Linux command line experience
- you want hints and answers to guide you through fuzzing concepts

## When to avoid
- you need a production fuzzing tool rather than training material
- you don't work with C or compiled targets
- you need Windows or macOS-native instructions (Linux is required)
- you want up-to-date content - the workshop was last revised around 2020-2022

## Facets
- artifact type: learning-resource
- maturity: maintenance
- function: fuzzing, security, testing, developer-tools
- domain: security, penetration-testing, developer-tools, tutorials, testing
- platform: cli
- tags: afl, afl-plus-plus, fuzzing-workshop, vulnerability-discovery, libfuzzer, hands-on-exercises, c, linux, docker

## Member repositories
- mykter/afl-training (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:14.462623+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:57:04.505507+00:00, confidence not recorded.
  - readme: https://github.com/mykter/afl-training (fetched 2026-08-28T04:04:14.462623+00:00, sha 9723f25ec12a)
- Data as of 2026-08-30T08:39:29.467469+00:00.
