# 使用 Homebrew, MacPorts, zypper, apk, apt, pacman 安装 afl++

查看 afl++ 的安装路径、可执行文件、元数据以及面向 AI 代理工作流的安全说明。

## 安装

```sh
sudo av install brew:afl++
```

其他安装命令:

### macOS

- Homebrew (100%):

```sh
brew install afl++
```

  证据: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install afl
```

  证据: MacPorts ports tree: devel/afl/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- zypper (92%):

```sh
sudo zypper install afl
```

  证据: openSUSE Tumbleweed package metadata: afl from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst

- apk (92%):

```sh
sudo apk add afl++
```

  证据: Alpine Linux edge package indexes: afl++ from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install afl++
```

  证据: Debian stable package indexes: afl++ from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- pacman (92%):

```sh
sudo pacman -S afl++
```

  证据: Arch Linux sync databases: afl++ from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

## 软件包事实

- **软件包键:** brew:afl++
- **软件包管理器:** Homebrew
- **版本:** 5.02c
- **来源摘要:** American Fuzzy Lop++
- **主页:** <https://aflplus.plus/>
- **仓库:** <https://github.com/AFLplusplus/AFLplusplus>
- **最后更新:** 2026-07-02T11:12:14-04:00
- **已生成:** 2026-08-03T19:37:03+00:00

## 可执行文件

- afl-addseeds (别名)
- afl-analyze (别名)
- afl-c++ (别名)
- afl-cc (别名)
- afl-clang (别名)
- afl-clang++ (别名)
- afl-clang-fast (别名)
- afl-clang-fast++ (别名)
- afl-clang-lto (别名)
- afl-clang-lto++ (别名)
- afl-cmin (别名)
- afl-cmin.awk (别名)
- afl-cmin.bash (别名)
- afl-cmin.py (别名)
- afl-fuzz (别名)
- afl-g++ (别名)
- afl-gcc (别名)
- afl-gotcpu (别名)
- afl-health (别名)
- afl-ld-lto (别名)
- afl-lto (别名)
- afl-lto++ (别名)
- afl-persistent-config (别名)
- afl-plot (别名)
- afl-showmap (别名)
- afl-system-config (别名)
- afl-tmin (别名)
- afl-whatsup (别名)

## 安装行为

- Bottle: 不可用

## 版本和新鲜度

- 页面生成时间: 2026-08-03
- 管理器版本: 5.02c
## 项目历史与用法

AFL++ is the community-maintained successor line to American Fuzzy Lop, packaged as a broad fuzzing toolkit centered on afl-fuzz, compiler wrappers, corpus minimizers, instrumentation modes, and crash triage helpers. Its own README describes it as a fork of Google's AFL with more speed, mutations, instrumentation, and custom module support.

### 项目历史

The original AFL was developed by Michal Zalewski; AFL++ credits that origin while listing Marc Heuse, Dominik Maier, Andrea Fioraldi, Heiko Eissfeldt, and others as current maintainers. The public AFL++ GitHub repository was created in 2019, and the project has continued as an active release train with stable, dev, and release branches.

AFL++ consolidated a patch culture that had grown around AFL: LLVM and LTO instrumentation, QEMU and binary-only modes, laf-intel and Redqueen-style comparison solving, MOpt mutators, persistent mode, Unicorn mode, Frida mode, and other target-specific execution backends. For package maintainers, the important point is that AFL++ is not just one binary but a coordinated tool suite with many executable entry points.

### 采用历史

AFL++ is distributed through several Unix package managers in the supplied batch facts, including Homebrew, Debian, Ubuntu, Alpine, Arch, and openSUSE. The project also publishes Docker images and documents direct source builds, which made it easier to use the same fuzzing environment in CI, local research machines, and throwaway containers.

The upstream README points users to Google's FuzzBench aflplusplus configuration for comparisons, and the project keeps a papers page for academic citation. That combination of package-manager availability, Docker distribution, benchmark integration, and citation guidance is why AFL++ became the default AFL-family package for many security-testing workflows.

### 使用方式

The common workflow is to build the target with afl-cc or an AFL++ compiler wrapper, seed an input corpus, run afl-fuzz with an input and output directory, and investigate crashes or hangs written under the fuzzer output tree. Companion tools such as afl-cmin, afl-tmin, afl-showmap, afl-analyze, afl-plot, and afl-whatsup support corpus reduction, testcase minimization, coverage mapping, and fleet monitoring.

AFL++ matters operationally because its behavior depends on instrumentation mode, target style, and runtime environment. Packagers tend to care about LLVM/QEMU/Frida/Unicorn feature coverage, sanitizer compatibility, shell helper availability, and whether users get enough installed docs to navigate binary-only fuzzing, persistent mode, dictionaries, and crash replay.

### 为什么软件包爱好者会关心

For package nerds, AFL++ is a dense formula: many binaries, optional engines, architecture-sensitive instrumentation, frequent upstream releases, and a user base that notices quickly when a backend or compiler wrapper is missing. It is a good example of a security tool whose package is the development environment.

It also illustrates a common replacement story in package sets: the original AFL name is historically important, but AFL++ is the active branch many users now expect when they install an AFL-family fuzzer.

### 时间线

- 2019: AFL++ GitHub repository created.
- 2026: AFL++ 5.02c published upstream.
- 2026: Supplied package facts show AFL++ packaged by Homebrew, Debian, Ubuntu, Alpine, Arch, and openSUSE.

### Related projects

- American Fuzzy Lop is the original project line credited by AFL++.
- Google FuzzBench includes an aflplusplus setup for comparative fuzzing benchmarks.
- AFL++ publishes related coverage and reachability analysis tools under the AFLplusplus GitHub organization.

### 来源

- <https://api.github.com/repos/AFLplusplus/AFLplusplus>
- <https://github.com/AFLplusplus/AFLplusplus#readme>
- <https://github.com/AFLplusplus/AFLplusplus/releases>
- source_facts.package-manager


## 安全说明

narrow executable package without higher-risk signals.

- **Geiger 风险:** 绿色 / 低
- narrow executable package without higher-risk signals

## 其他软件包管理器记录

- Debian apt - afl++ - 4.21c-5: normalized package name match | Debian stable package indexes: afl++ from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | instrumentation-driven fuzzer for binary formats | https://github.com/AFLplusplus/AFLplusplus
- Ubuntu apt - afl++ - 4.09c-1ubuntu3: normalized package name match | Ubuntu 24.04 LTS package indexes: afl++ from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | instrumentation-driven fuzzer for binary formats | https://github.com/vanhauser-thc/AFLplusplus
- apk - afl++ - 4.40c-r1: normalized package name match | Alpine Linux edge package indexes: afl++ from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Fuzzer relying on genetic algorithms instead of brute force | https://aflplus.plus/
- apk - afl++-doc - 4.40c-r1: normalized package name match | Alpine Linux edge package indexes: afl++-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | Fuzzer relying on genetic algorithms instead of brute force (documentation) | https://aflplus.plus/
- apk - afl++-tools - 4.40c-r1: normalized package name match | Alpine Linux edge package indexes: afl++-tools from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz | AFL++ tools and utilities | https://aflplus.plus/
- pacman - afl++ - 5.00c-1: normalized package name match | Arch Linux sync databases: afl++ from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | instrumentation-driven fuzzer for binary format | https://aflplus.plus/
- zypper - afl - 5.00c-1.6: normalized package name match | openSUSE Tumbleweed package metadata: afl from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | American fuzzy lop is a security-oriented fuzzer | https://github.com/AFLplusplus/AFLplusplus
- zypper - afl-devel - 5.00c-1.6: normalized package name match | openSUSE Tumbleweed package metadata: afl-devel from https://download.opensuse.org/tumbleweed/repo/oss/repodata/50b07339cb64c8ed4091bdbabddadc1ff5737b090e478818a195b40d8a3292861a879139b4a3987c31109699fde9fbf4a716367ddf4eef77da75f96e3193d6ed-primary.xml.zst | Development headers for use when fuzzing with American fuzzy lop | https://github.com/AFLplusplus/AFLplusplus
- MacPorts - afl: normalized package name match | MacPorts ports tree: devel/afl/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/afl++.yml](https://github.com/mxcl/pkgdb/blob/main/combined/afl++.yml)


## 来源

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
