awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
google avatar

google/AFLArchived

0
View on GitHub↗
4,064 estrellas·668 forks·C·apache-2.0·5 vistaslcamtuf.coredump.cx/afl↗

AFL

AFL is a coverage-guided fuzzer and security vulnerability scanner used to identify software bugs and memory corruption by feeding programs mutated data. It functions as a binary instrumentation tool and a test case minimizer to locate crashes and isolate the smallest set of bytes causing a fault.

The project distinguishes itself through its ability to operate as a parallel fuzzing orchestrator, distributing workloads across multiple CPU cores or networked machines. It utilizes dictionary-based mutation for complex file formats and performs input sensitivity analysis to identify critical sections of input files.

Its broader capabilities include binary and source code instrumentation for tracking execution paths, as well as crash path exploration to determine if faults are exploitable. The system provides automated software testing via binary fuzzing and a crash analysis workflow to simplify vulnerability debugging.

Features

  • Coverage-Guided Fuzzing - Implements a core engine that discovers vulnerabilities by mutating inputs based on observed code coverage.
  • Coverage-Guided Mutation - Generates new test inputs by mutating existing seeds and keeping those that increase observed code coverage.
  • General Purpose Fuzzers - Finds software bugs by mutating inputs based on the code paths executed during program runs.
  • Binary Analysis - Tracks execution paths of black-box binaries using emulation to find memory bugs without original source code.
  • Security Vulnerability Scanners - Finds software bugs and security flaws by generating and mutating test inputs based on observed code coverage.
  • User-Mode Emulation - Monitors execution paths of pre-compiled binaries by running them through an emulator to intercept instructions.
  • Binary Instrumentation - Tracks execution paths in compiled binaries using emulation to monitor behavior without source code.
  • Binary Fuzzing - Provides the ability to execute target binaries with mutated inputs to trigger crashes and memory bugs.
  • Fuzz Testing - Executes programs with mutated inputs to trigger crashes and identify faults through coverage-guided fuzzing.
  • Test Case Minimizers - Reduces crashing test cases by iteratively removing bytes while ensuring the crash still occurs.
  • Parallel Fuzzing Distributions - Spreads fuzzing workloads across multiple CPU cores or networked machines to accelerate discovery.
  • Code Instrumentation Utilities - Injects coverage tracking into programs during compilation by replacing the standard C or C++ compiler.
  • Corpus Management - Organizes seed inputs in a queue to prioritize the mutation of inputs that explore new or rare code paths.
  • Shared-Memory Coverage Bitmaps - Tracks code execution paths using a globally accessible bit-map that records which basic blocks were visited.
  • Compiler-Based Instrumentation - Inserts tracking code into binaries during compilation by replacing the standard compiler toolchain.
  • Dictionary-Based Mutations - Improves mutation efficiency for complex file formats by using specific keywords or magic tokens as seeds.
  • Crash Analysis Workflows - Reduces crashing input files to their smallest form and enumerates reachable paths to simplify vulnerability debugging.
  • Crash Path Analysis - Enumerates reachable code paths that maintain a crashing state to determine if a fault is exploitable.
  • Test Case Minimization - Reduces crashing input files to their smallest form while preserving the execution path to simplify debugging.
  • Security Tools - Free software fuzzer for security testing.

Historial de estrellas

Gráfico del historial de estrellas de google/aflGráfico del historial de estrellas de google/afl

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Alternativas open-source a AFL

Proyectos open-source similares, clasificados según cuántas características comparten con AFL.
  • aflplusplus/aflplusplusAvatar de AFLplusplus

    AFLplusplus/AFLplusplus

    6,605Ver en GitHub↗

    AFL++ is a coverage-guided fuzzing framework that discovers crashes and hangs in software by mutating inputs while tracking which code paths are exercised. It functions as both a fuzzing engine and a campaign manager, supporting targets with or without source code through compile-time instrumentation, dynamic binary instrumentation, and emulation. The framework includes tools for crash triage and analysis, test case minimization, and campaign deployment across local or distributed environments. The framework distinguishes itself through its breadth of instrumentation backends, allowing users

    C
    Ver en GitHub↗6,605
  • google/fuzzingAvatar de google

    google/fuzzing

    3,772Ver en GitHub↗

    This project is a comprehensive software fuzzing knowledge base and technical guide designed for discovering software bugs and vulnerabilities. It serves as a resource for implementing coverage-guided, structure-aware, and hybrid fuzzing across various targets, including compiled binaries and hardware kernels. The resource provides specialized guidance on using grammars and defined data formats to generate syntactically valid inputs for complex APIs. It also details methods for combining grey-box fuzzing with symbolic execution to reach deep execution paths and utilizes binary instrumentation

    C++
    Ver en GitHub↗3,772
  • google/clusterfuzzAvatar de google

    google/clusterfuzz

    5,574Ver en GitHub↗

    ClusterFuzz is an automated platform that runs coverage-guided fuzzers at scale to find security and stability bugs in software. It orchestrates libFuzzer and AFL++ across distributed clusters of worker bots, collecting coverage feedback to guide input mutation and discover crashes. The platform provides a web-based dashboard for configuring fuzzing jobs, monitoring progress, and inspecting crash reports, with role-based access control to restrict sensitive features. The system automates the full fuzzing lifecycle, from build pipeline integration and corpus management to crash triage and bug

    Pythonfuzzingsecuritystability
    Ver en GitHub↗5,574
  • dvyukov/go-fuzzAvatar de dvyukov

    dvyukov/go-fuzz

    4,853Ver en GitHub↗

    go-fuzz is a coverage-guided randomized testing tool for identifying crashes and logic bugs in Go code. It consists of a fuzzer that evolves random inputs based on code execution paths, an instrumentation tool that produces binaries for tracking coverage, and a seed corpus manager. The tool utilizes compile-time binary instrumentation to monitor branch coverage and employs a feedback-driven mutation loop to prioritize inputs that reach new sections of the codebase. It includes capabilities for comparative differential testing to identify logic errors by executing different implementations of

    Go
    Ver en GitHub↗4,853
Ver las 30 alternativas a AFL→

Preguntas frecuentes

¿Qué hace google/afl?

AFL is a coverage-guided fuzzer and security vulnerability scanner used to identify software bugs and memory corruption by feeding programs mutated data. It functions as a binary instrumentation tool and a test case minimizer to locate crashes and isolate the smallest set of bytes causing a fault.

¿Cuáles son las características principales de google/afl?

Las características principales de google/afl son: Coverage-Guided Fuzzing, Coverage-Guided Mutation, General Purpose Fuzzers, Binary Analysis, Security Vulnerability Scanners, User-Mode Emulation, Binary Instrumentation, Binary Fuzzing.

¿Qué alternativas de código abierto existen para google/afl?

Las alternativas de código abierto para google/afl incluyen: aflplusplus/aflplusplus — AFL++ is a coverage-guided fuzzing framework that discovers crashes and hangs in software by mutating inputs while… google/fuzzing — This project is a comprehensive software fuzzing knowledge base and technical guide designed for discovering software… google/clusterfuzz — ClusterFuzz is an automated platform that runs coverage-guided fuzzers at scale to find security and stability bugs in… dvyukov/go-fuzz — go-fuzz is a coverage-guided randomized testing tool for identifying crashes and logic bugs in Go code. It consists of… google/syzkaller — Syzkaller is an unsupervised, coverage-guided kernel fuzzer that automatically generates and mutates system call… schemathesis/schemathesis — Schemathesis is a property-based testing tool and fuzzer for schema-based APIs. It analyzes OpenAPI and JSON Schema…