HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
mykter
afl-training
C2019–2019
mykter / afl-training

afl-training

Exercises to learn how to fuzz with American Fuzzy Lop

2Distinct people
2Mentions
0Explicit recommenders
1.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Exercises to learn how to fuzz with American Fuzzy Lop

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week2 dated mentions

Observed mentions: 2019-02-13 17:26:11 UTC to 2019-08-29 16:15:51 UTC. Weeks start Monday, UTC.

012019-02-11 00:00:00 UTC to 2019-02-18 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsFeb 112019-02-18 00:00:00 UTC to 2019-02-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-02-25 00:00:00 UTC to 2019-03-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-03-04 00:00:00 UTC to 2019-03-11 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-03-11 00:00:00 UTC to 2019-03-18 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-03-18 00:00:00 UTC to 2019-03-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-03-25 00:00:00 UTC to 2019-04-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-04-01 00:00:00 UTC to 2019-04-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-04-08 00:00:00 UTC to 2019-04-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-04-15 00:00:00 UTC to 2019-04-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-04-22 00:00:00 UTC to 2019-04-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-04-29 00:00:00 UTC to 2019-05-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-05-06 00:00:00 UTC to 2019-05-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-05-13 00:00:00 UTC to 2019-05-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-05-20 00:00:00 UTC to 2019-05-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsMay 202019-05-27 00:00:00 UTC to 2019-06-03 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-06-03 00:00:00 UTC to 2019-06-10 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-06-10 00:00:00 UTC to 2019-06-17 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-06-17 00:00:00 UTC to 2019-06-24 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-06-24 00:00:00 UTC to 2019-07-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-07-01 00:00:00 UTC to 2019-07-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-07-08 00:00:00 UTC to 2019-07-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-07-15 00:00:00 UTC to 2019-07-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-07-22 00:00:00 UTC to 2019-07-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-07-29 00:00:00 UTC to 2019-08-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-08-05 00:00:00 UTC to 2019-08-12 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-08-12 00:00:00 UTC to 2019-08-19 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-08-19 00:00:00 UTC to 2019-08-26 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2019-08-26 00:00:00 UTC to 2019-09-02 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsAug 26

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Feb 112019-02-11 00:00:00 UTC2019-02-18 00:00:00 UTC101
Feb 182019-02-18 00:00:00 UTC2019-02-25 00:00:00 UTC000
Feb 252019-02-25 00:00:00 UTC2019-03-04 00:00:00 UTC000
Mar 42019-03-04 00:00:00 UTC2019-03-11 00:00:00 UTC000
Mar 112019-03-11 00:00:00 UTC2019-03-18 00:00:00 UTC000
Mar 182019-03-18 00:00:00 UTC2019-03-25 00:00:00 UTC000
Mar 252019-03-25 00:00:00 UTC2019-04-01 00:00:00 UTC000
Apr 12019-04-01 00:00:00 UTC2019-04-08 00:00:00 UTC000
Apr 82019-04-08 00:00:00 UTC2019-04-15 00:00:00 UTC000
Apr 152019-04-15 00:00:00 UTC2019-04-22 00:00:00 UTC000
Apr 222019-04-22 00:00:00 UTC2019-04-29 00:00:00 UTC000
Apr 292019-04-29 00:00:00 UTC2019-05-06 00:00:00 UTC000
May 62019-05-06 00:00:00 UTC2019-05-13 00:00:00 UTC000
May 132019-05-13 00:00:00 UTC2019-05-20 00:00:00 UTC000
May 202019-05-20 00:00:00 UTC2019-05-27 00:00:00 UTC000
May 272019-05-27 00:00:00 UTC2019-06-03 00:00:00 UTC000
Jun 32019-06-03 00:00:00 UTC2019-06-10 00:00:00 UTC000
Jun 102019-06-10 00:00:00 UTC2019-06-17 00:00:00 UTC000
Jun 172019-06-17 00:00:00 UTC2019-06-24 00:00:00 UTC000
Jun 242019-06-24 00:00:00 UTC2019-07-01 00:00:00 UTC000
Jul 12019-07-01 00:00:00 UTC2019-07-08 00:00:00 UTC000
Jul 82019-07-08 00:00:00 UTC2019-07-15 00:00:00 UTC000
Jul 152019-07-15 00:00:00 UTC2019-07-22 00:00:00 UTC000
Jul 222019-07-22 00:00:00 UTC2019-07-29 00:00:00 UTC000
Jul 292019-07-29 00:00:00 UTC2019-08-05 00:00:00 UTC000
Aug 52019-08-05 00:00:00 UTC2019-08-12 00:00:00 UTC000
Aug 122019-08-12 00:00:00 UTC2019-08-19 00:00:00 UTC000
Aug 192019-08-19 00:00:00 UTC2019-08-26 00:00:00 UTC000
Aug 262019-08-26 00:00:00 UTC2019-09-02 00:00:00 UTC101

What Hacker News says

2 sources
"Generating Software Tests" (https://www.fuzzingbook.org/) is pretty great (independent of your programming language) - arguably a must read for anyone interested in software testing. John Regehr (the author of the blog post) has written more great posts: - How to Fuzz an ADT Implementation - https://blog.regehr.org/archives/896 - Better Random Testing by Leaving Features Out - https://blog.regehr.org/archives/591 - Tricking a Whitebox Testcase Generator - https://blog.regehr.org/archives/672 - Fuzzers Need Taming - https://blog.regehr.org/archives/925 - Levels of Fuzzing - https://blog.regehr.org/archives/1039 - API Fuzzing vs. File Fuzzing: A Cautionary Tale - https://blog.regehr.org/archives/1269 - Reducers are Fuzzers - https://blog.regehr.org/archives/1284 In terms of software, DeepState (https://github.com/trailofbits/deepstate) may
Read the rest
be a good place to start for C and C++. Relevant links: - Fuzzing an API with DeepState: https://blog.trailofbits.com/2019/01/22/fuzzing-an-api-with-..., https://blog.trailofbits.com/2019/01/23/fuzzing-an-api-with-... - NDSS 18 paper, "DeepState: Symbolic Unit Testing for C and C++": https://www.cefns.nau.edu/~adg326/bar18.pdf In terms of choosing among fuzzing solutions, https://blog.trailofbits.com/2018/10/05/how-to-spot-good-fuz... is also worth a read -- as well as the article it refers to, http://www.pl-enthusiast.net/2018/08/23/evaluating-empirical.... For a broad survey, see "The Art, Science, and Engineering of Fuzzing": https://arxiv.org/abs/1812.00140, https://jiliac.com/pdf/fuzzing_survey19.pdf More resources: - Effective File Format Fuzzing – Thoughts, Techniques and Results (Black Hat Europe 2016): https://j00ru.vexillium.org/talks/blackhat-eu-effective-file... - libFuzzer – a library for coverage-guided fuzz testing: http://tutorial.libFuzzer.info, http://llvm.org/docs/LibFuzzer.html, https://github.com/ouspg/libfuzzerfication - Materials of "Modern fuzzing of C/C++ Projects" workshop: https://github.com/Dor1s/libfuzzer-workshop - Introduction to using libFuzzer with llvm-toolset: https://developers.redhat.com/blog/2019/03/05/introduction-t... - Fuzzing workflows - a fuzz job from start to finish: https://foxglovesecurity.com/2016/03/15/fuzzing-workflows-a-... - Materials from "Fuzzing with AFL" workshop (SteelCon 2017, BSides London and Bristol 2019): https://github.com/ThalesIgnite/afl-training - Making Your Library More Reliable with Fuzzing (C++Now 2018; Marshall Clow): https://www.youtube.com/watch?v=LlLJRHToyUk, https://github.com/boostcon/cppnow_presentations_2018/blob/m... - C++ Weekly - Ep 85 - Fuzz Testing - https://www.youtube.com/watch?v=gO0KBoqkOoU - The Art of Fuzzing – Slides and Demos: https://sec-consult.com/en/blog/2017/11/the-art-of-fuzzing-s...
In Write Fuzzable Code
Either libFuzzer or AFL are your best bet for getting started - they both use very similar algorithms and just differ on execution. libFuzzer is more suited to fuzzing a single method, while AFL gives you a little more freedom when deciding how to fuzz your code. This is a nice initial look at libFuzzer: https://github.com/google/fuzzer-test-suite/blob/master/tuto... And here are a couple of my favourite AFL tutorials: - https://fuzzing-project.org/tutorial3.html - https://github.com/ThalesIgnite/afl-training Happy to answer any questions!
In Fuzzing Irssi (2017)

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.