about summary refs log tree commit diff
path: root/docs/tutorials.md
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2021-09-09 15:41:05 +0200
committerGitHub <noreply@github.com>2021-09-09 15:41:05 +0200
commita6c1c24d8e0f013bd56143abcabb5924d12bf4cb (patch)
tree3d1e4f385df8eabd8012cef91470118b7a062e5f /docs/tutorials.md
parent8af84c203cfe241b5a8321c62387fd107ebf1031 (diff)
parent1a13ae9a98cc016ab12ce701946b53723eaa7e8e (diff)
downloadafl++-a6c1c24d8e0f013bd56143abcabb5924d12bf4cb.tar.gz
Merge pull request #1081 from llzmb/docs_edit_readme_move_content_to_docs
Edit README.md and move content to docs/
Diffstat (limited to 'docs/tutorials.md')
-rw-r--r--docs/tutorials.md26
1 files changed, 26 insertions, 0 deletions
diff --git a/docs/tutorials.md b/docs/tutorials.md
new file mode 100644
index 00000000..cc7ed130
--- /dev/null
+++ b/docs/tutorials.md
@@ -0,0 +1,26 @@
+# Tutorials
+
+Here are some good writeups to show how to effectively use AFL++:
+
+* [https://aflplus.plus/docs/tutorials/libxml2_tutorial/](https://aflplus.plus/docs/tutorials/libxml2_tutorial/)
+* [https://bananamafia.dev/post/gb-fuzz/](https://bananamafia.dev/post/gb-fuzz/)
+* [https://securitylab.github.com/research/fuzzing-challenges-solutions-1](https://securitylab.github.com/research/fuzzing-challenges-solutions-1)
+* [https://securitylab.github.com/research/fuzzing-software-2](https://securitylab.github.com/research/fuzzing-software-2)
+* [https://securitylab.github.com/research/fuzzing-sockets-FTP](https://securitylab.github.com/research/fuzzing-sockets-FTP)
+* [https://securitylab.github.com/research/fuzzing-sockets-FreeRDP](https://securitylab.github.com/research/fuzzing-sockets-FreeRDP)
+* [https://securitylab.github.com/research/fuzzing-apache-1](https://securitylab.github.com/research/fuzzing-apache-1)
+
+If you do not want to follow a tutorial but rather try an exercise type of
+training, then we can highly recommend the following:
+
+* [https://github.com/antonio-morales/Fuzzing101](https://github.com/antonio-morales/Fuzzing101)
+
+If you are interested in fuzzing structured data (where you define what the
+structure is), these links have you covered:
+
+* Superion for AFL++: [https://github.com/adrian-rt/superion-mutator](https://github.com/adrian-rt/superion-mutator)
+* libprotobuf for AFL++: [https://github.com/P1umer/AFLplusplus-protobuf-mutator](https://github.com/P1umer/AFLplusplus-protobuf-mutator)
+* libprotobuf raw: [https://github.com/bruce30262/libprotobuf-mutator_fuzzing_learning/tree/master/4_libprotobuf_aflpp_custom_mutator](https://github.com/bruce30262/libprotobuf-mutator_fuzzing_learning/tree/master/4_libprotobuf_aflpp_custom_mutator)
+* libprotobuf for old AFL++ API: [https://github.com/thebabush/afl-libprotobuf-mutator](https://github.com/thebabush/afl-libprotobuf-mutator)
+
+If you find other good ones, please send them to us :-)
\ No newline at end of file