<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Fuzzing on Testing Handbook</title><link>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/</link><description>Recent content in Fuzzing on Testing Handbook</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/index.xml" rel="self" type="application/rss+xml"/><item><title>Python</title><link>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/python/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/python/</guid><description>Python # We recommend using Atheris to fuzz Python code.
Installation # Atheris supports 32-bit and 64-bit Linux, and macOS. We recommend fuzzing on Linux because it&amp;rsquo;s simpler to manage and often faster. If you&amp;rsquo;d like to run Atheris in a Linux environment on a Mac or Windows system, we recommend using Docker Desktop.
If you&amp;rsquo;d like a fully operational Linux environment, see the Dockerfile section below.
If you&amp;rsquo;d like to install Atheris locally, first install a recent version of clang, preferably the latest release, then run the following command:</description></item><item><title>Ruby</title><link>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/ruby/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/ruby/</guid><description>Ruby # We recommend using Ruzzy to fuzz Ruby code.
Installation # Ruzzy supports Linux x86-64 and AArch64/ARM64. If you&amp;rsquo;d like to run Ruzzy on a macOS or Windows, you can build the Dockerfile and/or use the development environment. Ruzzy requires a recent version of clang (tested back to 14.0.0), preferably the latest release.
Install Ruzzy with the following command:
MAKE=&amp;#34;make --environment-overrides V=1&amp;#34; \ CC=&amp;#34;/path/to/clang&amp;#34; \ CXX=&amp;#34;/path/to/clang++&amp;#34; \ LDSHARED=&amp;#34;/path/to/clang -shared&amp;#34; \ LDSHAREDXX=&amp;#34;/path/to/clang++ -shared&amp;#34; \ gem install ruzzy There&amp;rsquo;s a lot going on here, so let&amp;rsquo;s break it down:</description></item><item><title>OSS-Fuzz</title><link>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/oss-fuzz/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/oss-fuzz/</guid><description>OSS-Fuzz # OSS-Fuzz is an open-source project developed by Google that aims to improve the security and stability of open-source software by providing free distributed infrastructure for continuous fuzz testing. Using a pre-existing framework like OSS-Fuzz has many advantages over manually running harnesses: it streamlines the process and facilitates simpler modifications. Although only select projects are accepted into OSS-Fuzz, because the project’s core is open-source, anyone can host their own instance of OSS-Fuzz and use it for private projects!</description></item><item><title>Snapshot Fuzzing</title><link>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/snapshot-fuzzing/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/snapshot-fuzzing/</guid><description>Snapshot fuzzing enables security engineers to effectively test software that is traditionally difficult to analyze, such as kernel-level software (though the technique is not limited to such software). Whether you&amp;rsquo;re auditing drivers or other kernel-mode components, including antivirus software, snapshot fuzzing provides a robust way to discover critical vulnerabilities. Consult this section for a walkthrough on how to conduct snapshot fuzzing on your system.</description></item><item><title>Additional resources</title><link>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/resources/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://trailofbits.github.io/testing-handbook-preview/pr-preview/pr-128/docs/fuzzing/resources/</guid><description>Additional resources # Learning # Awesome fuzzing list 1: GitHub-hosted list focused on scientific publications about fuzzing. Awesome fuzzing list 2: GitHub-hosted list about fuzzers and fuzzing related books. Fuzzing handbook: A fuzzing handbook written from an academic perspective. CNCF-Fuzzing handbook: Handbook created by the CNCF. Fuzzing101: Tutorial and training for various fuzzing methods by GitHub Security Lab. &amp;ldquo;How to Spot Good Fuzzing Research&amp;rdquo;: ToB blogpost 39c3 &amp;ldquo;Demystifying Fuzzer Behaviour&amp;rdquo;: interesting perspective on fuzz testing How to Build a Fuzzing Corpus Fuzzing corpus data # https://github.</description></item></channel></rss>