appsec.fyi

Fuzzing Resources

Post Share

A curated AppSec resource library covering XSS, SQLi, SSRF, IDOR, RCE, XXE, OSINT, and more.

Fuzzing

Fuzz testing (fuzzing) is an automated software testing technique that sends invalid, malformed, or unexpected inputs to a system to discover bugs, crashes, and security vulnerabilities. It has become one of the most effective methods for finding memory corruption, parsing errors, and input validation flaws at scale.

Fuzzing operates on a simple principle: programs that crash on unexpected input likely have exploitable bugs. Modern fuzzers go far beyond random input generation. Coverage-guided fuzzers like AFL++, libFuzzer, and Honggfuzz use code coverage feedback to evolve inputs that explore new code paths, dramatically increasing the chance of finding deep bugs. Grammar-based fuzzers generate structurally valid inputs for complex formats like JSON, XML, HTTP, and custom protocols.

In web application security, fuzzing is used for directory and file discovery, parameter brute-forcing, and finding injection points. Tools like ffuf, wfuzz, and Burp Intruder allow rapid testing of URL paths, query parameters, headers, and form fields against wordlists. API fuzzing tools specifically target REST and GraphQL endpoints with schema-aware mutation strategies.

At the systems level, fuzzing has uncovered thousands of vulnerabilities in browsers, operating system kernels, file format parsers, network protocol implementations, and cryptographic libraries. Google's OSS-Fuzz project alone has found over 10,000 bugs across hundreds of open-source projects.

This page collects fuzzing tools, techniques, research, and guides for both web application and systems-level fuzzing.

Start here: the Fuzzing learning pathAn ordered route through this library — orientation, then methodology, then research. Read the Fuzzing guideA long-form, source-cited deep dive synthesized from every resource below. The comprehensive Fuzzing guide on chs.usA hand-written, in-depth practitioner guide — attacks, testing, and prevention.
Date Added Link Excerpt
2026-08-21 2026Web fuzzing for hackers beginner 17 min readLibrary for web fuzzing techniques, detailing its importance for discovering unreferenced API endpoints, unexpected behavior, and security vulnerabilities. It emphasizes the criticality of crafting specific wordlists and outlines popular tools like ffuf, Burp Suite Intruder, OWASP Amass, Arjun, and Param Miner for various fuzzing objectives, including content discovery, subdomain bruteforcing, and parameter discovery. → intigriti.com
2026-08-17 2026When Filenames Become Attack Surfaces: Weaponizing NASA's CFITSIO Extended Filename Syntax advanced 12 min read RCEWriteup on CFITSIO's Extended Filename Syntax (EFS) demonstrating security primitives without memory corruption. The research, presented at BSides Luxembourg 2026, details how documented features of EFS, a mini-language within filenames, can be weaponized. This includes arbitrary file copy by specifying an output file alongside a sensitive input like `/etc/passwd`, forced downloads and Server-Side Request Forgery (SSRF) by using remote URLs and the outfile clause, and HTTP header injection via newline characters in the filename to compromise cloud metadata services. A Docker playground is provided for reproducing these findings. → blog.doyensec.com
2026-07-30 2026Your House Has an FFmpeg Problem - elttam intermediate 8 min read RCEWriteup detailing an argument injection vulnerability in ffmpeg used by Home Assistant's Wyoming protocol. The research uncovered how attacker-controlled input in the `media_id` parameter, when passed to ffmpeg, could be exploited using pseudo-protocols like `concat:` and `file:` to exfiltrate sensitive environment variables, including the `SUPERVISOR_TOKEN`, enabling remote code execution. This vulnerability was patched in Home Assistant version 2026.6.2. → elttam.com
2026-07-03 2026GPT-5.5-Cyber built a zlib fuzzing lab in a day beginner 5 min read AITool that demonstrates GPT-5.5-Cyber's capability to autonomously construct a zlib fuzzing lab within a single day, including writing harnesses for multiple entrypoints like inflate and uncompress2, leveraging ASan/UBSan builds, and repurposing edge-case tests for seeds, surpassing typical OSS-Fuzz coverage by targeting valid states and using OS backpressure. → blog.trailofbits.com
2026-06-30 2026Introducing Aardvark: OpenAIs agentic security researcher beginnerOpenAI has introduced Aardvark, an agentic security researcher. This AI-powered tool is designed to assist in identifying and analyzing security vulnerabilities. While the provided text mentions its introduction, it does not specify any bug bounty payout amounts related to Aardvark's findings or operation.
2026-06-29 2026WinPE as a stateless harness for Windows driver testing and fuzzing intermediate 6 min readLibrary for transforming Windows PE into an idempotent testing environment. This library details low-level mechanisms including BCD and QEMU modifications for faster VM spins, enabling kernel-mode driver testing and fuzzing. It covers aggressive boot optimizations with `bcdedit`, disabling VBS/HVCI via `hypervisorlaunchtype off` and `testsigning yes`, utilizing the older `pc` QEMU machine profile for stability, configuring KDNET with `busparams`, and customizing the boot process by disabling NDIS initialization and replacing `cmd.exe` with a custom test agent in `winpeshl.ini`.
2026-06-16 2026Extending developer security with dev-first dynamic testing news 7 min read API SecLibrary extending developer security, Snyk has acquired Probely, a provider of API Security Testing and Dynamic Application Security Testing (DAST). This acquisition integrates modern DAST capabilities, focusing on a developer-first approach with low false positive rates, simple implementation, and CI/CD pipeline integration, addressing the growing need for API security in the GenAI era and providing enhanced visibility into application risk. → snyk.io
2026-06-08 2026AI Smart Contract Vulnerability Detection: Web3 Guide beginner 10 min readGuide summarizing AI smart contract vulnerability detection, emphasizing a layered defense approach. It details how AI methods like deep learning on EVM bytecode, graph neural networks, and LLM auditing models complement traditional static analysis, fuzzing, and formal verification. The guide highlights tools such as Slither, Mythril, and Aderyn, and discusses the practical challenges and trade-offs of integrating AI into Web3 security workflows, noting that while AI improves recall, human review remains crucial for complex logic and access control bugs.
2026-06-08 2026Continuous Offensive Security: The Line We've Been Walking news 12 min read AILibrary for continuous offensive security testing, this resource details the evolution from traditional Dynamic Security Testing (DAST) to AI-driven pentesting. It distinguishes between heuristic-detectable vulnerabilities (like SQL injection) and context-dependent ones (such as BOLA and IDOR) that require human-like reasoning. The library enables automated discovery of context-dependent flaws by analyzing intent, and includes Agent Red Teaming for novel AI-specific attack surfaces like prompt injection and data exfiltration in LLM-integrated applications. → snyk.io
2026-06-08 2026Sparkplug B Protocol Fuzzing with AI Assistance intermediate 9 min read AITool for fuzzing the Sparkplug B protocol, an MQTT-based standard for industrial control systems. This fuzzer systematically targets message types, data types, and field paths, identifying crashes, protocol violations, and state-handling bugs. AI assistance refined the Python implementation, improving coverage, efficiency, and adding CLI functionality for security testing of ICS and SCADA devices. → bishopfox.com
2026-06-08 2026Breaking the Sound Barrier, Part II: Exploiting CVE-2024-54529 advanced 13 min read RCEWriteup details the exploitation of CVE-2024-54529, a type confusion vulnerability in macOS's CoreAudio framework. The author outlines the process of turning a crash into a working exploit, involving complex heap manipulation and control flow hijacking. This includes challenges with CFString objects and the development of custom tools like an object dumper utilizing Ivan Fratric’s TinyInst Hook API, alongside static analysis with IDAPython. The writeup also touches upon the failure of an out-of-bounds read approach due to object size constraints and the discovery of uninitialized memory in the `ngne` object using Guard Malloc with PreScribble. → projectzero.google
2026-06-08 2026On the Effectiveness of Mutational Grammar Fuzzing intermediate 8 min readTechnique analyzing the flaws of mutational grammar fuzzing, particularly how increased coverage doesn't always equate to more bugs and how samples tend to remain highly similar. It highlights issues found in XSLT implementations and JIT engines, suggesting potential improvements by exploring dataflow coverage or combining generative and mutational fuzzing approaches. → projectzero.google
2026-06-08 2026Extending Ruzzy with LibAFL intermediate 7 min readLibrary for extending Ruzzy, a coverage-guided fuzzer for Ruby code, with LibAFL. This integration leverages LibAFL's LLVM compatibility layer and addresses challenges like ELF `.preinit_array` section restrictions by utilizing LLVM `ld`, and resolves "No maps available; cannot fuzz!" errors by ensuring proper SanitizerCoverage initialization timing, critical for fuzzing campaigns. → blog.trailofbits.com
2026-06-08 2026Go fuzzing was missing half the toolkit. We forked the toolchain to fix it. intermediate 5 min readLibrary, gosentry, is a fork of the Go toolchain that enhances native fuzzing capabilities. It integrates LibAFL, Nautilus for grammar-based fuzzing, and capabilities for structured inputs, integer overflow detection (building on go-panikint), goroutine leak detection (via goleak), data race detection, and timeout detection. Existing Go fuzz harnesses can be used with gosentry without modification, offering improved bug detection and coverage reporting for vulnerabilities like those found in Optimism and Revm. → blog.trailofbits.com
2026-05-22 2026Autonomous fuzzing process under LLM supervision advanced 20 min readLibrary for autonomous fuzzing, codenamed fuzzlab, utilizes Large Language Models (LLMs) under strict procedural guidance to automate software security testing. This Python-based system analyzes code, generates test programs, classifies findings, and prepares reports. It has successfully identified vulnerabilities in ModSecurity and Oracle VirtualBox, demonstrating its capability to supervise fuzzing campaigns, adapt to anomalies, and improve test generation without constant human intervention, supporting various AI models through a standardized interface. → cert.pl
2026-05-15 2026Stopping bugs before they ship: The shift to preventative security beginnerThe article discusses a crucial shift in cybersecurity: moving from reactive bug fixing to proactive, preventative security measures. This approach aims to identify and resolve vulnerabilities earlier in the development lifecycle, before software is released to the public. The goal is to minimize the risk of security breaches and their associated costs, ultimately leading to more secure products and services. The emphasis is on integrating security practices throughout the entire development process, rather than treating it as an afterthought.
2026-05-10 2026Mozilla Uses AI to Help Discover a Security Vulnerability in Firefox 271 newsMozilla successfully employed AI to identify a security vulnerability in Firefox 271. This marks a significant step in leveraging artificial intelligence for cybersecurity, enabling more proactive discovery of potential threats. The AI's ability to analyze complex code and identify weaknesses could revolutionize vulnerability assessment and software security. This development highlights the growing importance of AI in protecting digital infrastructure and user data.
2026-05-07 2026AI-based fuzzing targets open-source LLM vulnerabilities advanced 6 min readLibrary that utilizes AI-enhanced fuzzing to discover vulnerabilities in open-source projects. This technique has already identified 26 new vulnerabilities, including a critical flaw in OpenSSL, by generating sophisticated and varied test inputs that explore new execution paths and uncover edge cases missed by traditional methods. The library aims to improve code coverage, increase efficiency, and automate vulnerability discovery, though users must be aware of potential drawbacks like false positives and the need for careful validation of AI-generated code. → reversinglabs.com
2026-04-22 2026Jazzer: Coverage-guided, in-process fuzzing for the JVM intermediate 6 min readLibrary for coverage-guided, in-process fuzzing of the JVM. Jazzer integrates with JUnit 5.9.0+ and supports Linux, macOS, and Windows platforms. It leverages libFuzzer's instrumentation for mutation-based input generation, allowing developers to write fuzz tests alongside unit tests. Jazzer can run in regression or fuzzing modes, identifying crashes and storing inputs for further analysis. It also includes built-in sanitizers to detect risky behaviors during fuzzing.
2026-04-22 2026Fuzzing 100+ open source projects with OSS-Fuzz - lessons learned intermediate 13 min readWriteup detailing continuous fuzzing efforts on over 100 open-source projects via OSS-Fuzz. This initiative reported 2104 bugs, including 559 security-relevant issues, with 1330 fixed. Notable findings include CVE-2020-28362 in Go-ethereum and contributions to Sudoers and Pidgin, highlighting the impact of sustained vulnerability analysis on critical software components.
2026-04-22 2026Large Language Model guided Protocol Fuzzing (NDSS) advanced 2 min readTool for LLM-guided protocol fuzzing, ChatAFL leverages pre-trained large language models to extract machine-readable protocol information from natural language specifications. This engine constructs grammars for message types and mutates or predicts message sequences, significantly enhancing state and code coverage compared to state-of-the-art fuzzers like AFLNet and NSFuzz. Experiments on ProFuzzbench demonstrated ChatAFL's effectiveness in discovering previously unknown vulnerabilities in real-world protocol implementations.
2026-04-22 2026Detect Go's silent arithmetic bugs with go-panikint intermediate 4 min readLibrary for detecting silent integer arithmetic bugs in Go projects. go-panikint modifies the Go compiler to transform integer overflows and truncations into explicit panics, making them detectable by fuzzers. It successfully identified an integer overflow vulnerability in the Cosmos SDK's RPC pagination logic. The library includes mechanisms to filter intentional overflows via source location whitelisting or in-code comments. → blog.trailofbits.com
2026-04-22 2026Denial of Fuzzing: Rust in the Windows kernel intermediate 13 min readLibrary for fuzzing Windows kernel GDI components, utilizing WinAFL and WinAFL Pet for efficient testing. It details techniques for metafile fuzzing with Enhanced Metafile Format Plus (EMF+) and identifies a denial-of-fuzzing condition triggered by mutations. The library includes methodologies for memory dump analysis using Volatility and MemProcFS, and a client-server approach to capture and store mutated files for faster reproduction of kernel crashes.
2026-04-22 2026Bringing Fuzz Testing to Kotlin with kotlinx.fuzz beginner 7 min readLibrary for fuzz testing Kotlin applications. Developed by JetBrains Research, this fuzzer, named kotlinx.fuzz, leverages existing Java fuzzers like Jazzer to identify edge cases and uncover hidden vulnerabilities by automatically generating random or invalid inputs for target functions such as `Duration.parseIsoStringOrNull`. It simplifies the fuzzing process, offering improved configuration, execution, and result analysis for Kotlin projects.
2026-04-22 2026Advanced binary fuzzing using AFL++-QEMU and libprotobuf advanced 20 min readTool for advanced binary-only fuzzing utilizing AFL++-QEMU, focusing on grammar-aware in-memory persistent fuzzing. This practical guide demonstrates step-by-step configuration, including instrumentation tuning for specific code paths and optimizing execution speed, using a case study of a weak X509 parser with a buffer overflow vulnerability in `parse_cert_buf`. It details corpus preparation with `afl-cmin` and `afl-tmin`, and explores AFL++-QEMU features like `AFL_CUSTOM_MUTATOR_LIBRARY` and persistent mode addresses for performance enhancements.
2026-04-22 2026deepSURF: Detecting Memory Safety Vulnerabilities in Rust Through Fuzzing LLM-Augmented Harnesses advanced 50 min readTool integrating static analysis and LLM-guided fuzzing to detect memory safety vulnerabilities in Rust's unsafe code. deepSURF handles generics by substituting them with custom types and LLM-augmented harnesses for complex API interactions. Evaluation on 27 Rust crates revealed 20 known and 6 previously unknown memory safety bugs, surpassing state-of-the-art tools. → arxiv.org
2026-04-22 2026Fixing Security Vulnerabilities with AI in OSS-Fuzz intermediate 41 min readLibrary that customizes the AutoCodeRover LLM agent, named CodeRover-S, for autonomously fixing security vulnerabilities detected by OSS-Fuzz. This approach leverages exploit input from fuzzing campaigns to extract dynamic call graph information and augment vulnerability reports. CodeRover-S aims to improve patch generation success rates by incorporating type-based analysis at identified faulty program locations, focusing on dynamic attributes for patch correctness over static code similarity metrics. → arxiv.org
2026-04-22 2026A Survey of Network Protocol Fuzzing: Model, Techniques and Directions intermediate 63 min readSurvey of network protocol fuzzing techniques; this paper systematically reviews advancements, proposes a unified process model, and discusses techniques for syntax acquisition, test case generation, execution, monitoring, and feedback utilization. It highlights challenges unique to network protocols, such as statefulness and structured input, and points to promising research directions, referencing vulnerabilities like Heartbleed (CVE-2014-0160) found in software like OpenSSL. → arxiv.org
2026-04-19 2026Generative Fuzzer-Driven Vulnerability Detection in IoT Networks advancedGenerative Fuzzer-Driven Vulnerability Detection in IoT Networks
2026-04-19 2026Automating Fuzz Driver Generation for Deep Learning Libraries with LLMs advancedAutomating Fuzz Driver Generation for Deep Learning Libraries with LLMs
2026-04-19 2026Fuzz to the Future: Uncovering Occluded Future Vulnerabilities advancedFuzz to the Future: Uncovering Occluded Future Vulnerabilities → dl.acm.org
2026-04-19 2026EdgeFuzz: A Middleware-Based Security Testing Tool intermediateEdgeFuzz: A Middleware-Based Security Testing Tool
2026-04-19 2026Software Fuzzing: The Cornerstone of Automated Vulnerability Discovery beginnerSoftware Fuzzing: The Cornerstone of Automated Vulnerability Discovery
2026-04-16 2026Fuzzing | Testing Handbook - AppSec Guide beginner 8 min readHandbook chapter detailing fuzzing as an essential dynamic testing method for uncovering security issues and bugs. It covers starting fuzzing projects quickly, delving into advanced techniques, and selecting appropriate fuzzers. The handbook explains how to write fuzzing harnesses, interpret their outputs, and apply them to real-world C/C++ projects, discussing both blackbox and feedback-driven graybox fuzzing approaches. It also explores mutation-based evolutionary fuzzing, the de facto algorithm, and defines key terminology such as SUT, fuzzer, harness, and corpus. → appsec.guide
2026-04-16 2026API Fuzzing for Security Testing: Complete Guide intermediate 7 min readLibrary for API fuzzing that automates vulnerability discovery by generating malformed, randomized, or boundary-case inputs to uncover weaknesses like injection attacks, authentication bypasses, and data exposure via error handling. It integrates into CI/CD pipelines, complementing static analysis and manual testing by detecting edge cases and logic flaws missed by traditional methods, significantly improving detection rates and reducing remediation costs.
2026-04-16 2026Recent Fuzzing Papers Collection advancedRecent Fuzzing Papers Collection
2026-04-16 2026Awesome-Fuzzing: Curated List of Fuzzing Resources beginner 8 min readLibrary collecting curated resources for learning fuzzing and exploit development, including books like "Fuzzing: Brute Force Vulnerability Discovery," courses, videos, tutorials, and vulnerable applications. It lists tools such as American Fuzzy Lop (AFL), Peach Fuzzer, honggfuzz, and Cloudfuzzer, alongside discussions of techniques like directed fuzzing and root cause analysis for vulnerabilities like integer overflows. The library also features resources on browser fuzzing frameworks like BFuzz and Grizzly.
2026-04-16 2026KernelGPT: Enhanced Kernel Fuzzing via LLMs advanced 4 min readLibrary for enhanced Linux kernel fuzzing using Large Language Models to automate Syzkaller specification generation and refinement. KernelGPT analyzes kernel source code, leverages LLMs for specification creation, and uses feedback for iterative improvement. This approach has successfully identified 24 new kernel bugs, including 11 with assigned CVEs, and many of its generated specifications have been integrated into the official Syzkaller repository.
2026-04-16 2026ksmbd: Fuzzing Improvements and Vulnerability Discovery intermediate 9 min readLibrary for improving fuzzing and discovering vulnerabilities in `ksmbd`, an SMB server implementation. This resource details techniques for expanding the attack surface by enabling configuration options like durable handles, oplocks, and SMB2 leases, and discusses fuzzer improvements. It specifically mentions patching NTLMv2 authentication, adjusting connection limits, and simulating valid SMB state transitions by parsing responses for TreeIDs and SessionIDs. The library also leverages protocol specifications to build grammars for commands like SMB2 IOCTL requests and explores fuzzing strategies such as focused area fuzzing to target specific code paths like `smb_check_perm_dacl`, which led to the discovery of integer overflows. → blog.doyensec.com
2026-04-16 2026AFL++ Fuzzing in Depth intermediate 29 min readLibrary for instrumenting and fuzzing source code targets with AFL++. This guide details the three-step process: compiling with special compilers like `afl-clang-lto` or `afl-gcc-fast`, preparing an input corpus, and executing the fuzzing process. It also covers compiler selection based on available versions (LLVM 11+, GCC 5+) and instrumentation options such as `laf-intel`, `redqueen`, and selective instrumentation via `allowlist.txt` or `denylist.txt` to optimize fuzzing efficiency.
2026-04-16 2026The Fuzzing Book: Generating Software Tests beginner 6 min readLibrary of practical examples and executable code, "The Fuzzing Book" teaches automated software testing techniques. It covers random fuzzing, mutation-based fuzzing, and grammar-based test generation, illustrated with Python code. The resource is suitable for university courses, supplementary material, or as a developer tool, and has been credited with finding over 2,600 bugs in JavaScript interpreters for browsers like Firefox, Chrome, and Edge.
2026-04-16 2026Fuzzing101: A Step-by-Step Fuzzing Tutorial beginner 2 min readTutorial on fuzzing basics using AFL++ and Ubuntu 20.04 LTS. This resource features ten real-world targets and exercises to help learners discover vulnerabilities in software projects. It explains coverage-guided evolutionary fuzzing techniques, a method employed by popular fuzzers like AFL, libFuzzer, and HonggFuzz.
2026-04-11 2026Getting Started with Python Fuzzing Using Atheris beginner 12 min readLibrary for fuzz testing Python applications, Atheris, developed by Google, simplifies the process of finding bugs through coverage-guided randomized testing. It allows users to easily create fuzz harnesses for arbitrary Python code, utilizing `FuzzedDataProvider` to generate diverse input types such as strings, integers, and lists. The library integrates seamlessly with targets, reporting crashes like `ZeroDivisionError` when it encounters unexpected inputs, aiding developers in identifying and fixing edge-case vulnerabilities.
2026-04-11 2026Unleashing Medusa: Smart Contract Fuzzing intermediate 2 min readLibrary for coverage-guided, parallel, and on-chain fuzzing of EVM smart contracts. Medusa v1, built on Geth and written in Go, uses Slither insights for smart mutational value generation and provides enhanced debugging with rich execution traces. It offers an alternative to Echidna, focusing on scalability and maintainability for faster vulnerability discovery in blockchain systems. → blog.trailofbits.com
2026-04-11 2026Mastering Boofuzz: From Basics to Advanced beginner 4 min readLibrary for stateful and stateless fuzzing, Boofuzz enables robust security testing of network protocols, file formats, and embedded systems. Leveraging Python, it supports custom protocol fuzzing with checksums like CRC32 and IPv4, and allows for multi-stage fuzzing through defined states. It includes built-in crash detection, a web interface for real-time monitoring, and examples for fuzzing HTTP POST requests and authenticated FTP sessions.
2026-04-11 2026cargo-fuzz - Testing Handbook beginner 5 min readTool for fuzzing Rust projects using Cargo, this handbook details setup and usage. It leverages libFuzzer and can automatically enable sanitizers like AddressSanitizer, which is useful for detecting memory errors in unsafe Rust code. The guide covers writing fuzz tests, initializing projects with `cargo fuzz init`, running fuzz targets with `cargo +nightly fuzz run`, and re-executing specific test cases. It also explores fuzzer options, including disabling sanitizers for performance boosts when not using unsafe Rust, and provides a real-world example fuzzing the `ogg` crate. → appsec.guide
2026-04-11 2026LLM-Based Harness Synthesis for Unfuzzed Projects advanced 11 min readLibrary for LLM-based fuzzing harness synthesis that automates the creation of OSS-Fuzz and ClusterFuzzLite projects for C/C++ software. It takes a GitHub repository URL as input and generates fuzzing harnesses by first building the project using generalized build heuristics, then extracting program analysis data with Fuzz Introspector, and finally synthesizing harnesses with LLMs based on that data. The process has demonstrated coverage increases and vulnerability discovery in prior work.
2026-04-11 2026HyperHook: A Harnessing Framework for Nyx advanced 11 min readFramework for Nyx-based fuzzers, HyperHook streamlines snapshot fuzzing for user-space applications by managing hypercalls, function hooks, and exception handlers for both Windows and Linux targets. It works by injecting a detour into the target function, initializing communication with the host, registering handlers, setting up an input buffer, and ultimately calling the target function with fuzz input.
2026-04-11 2026Practical Jazzer for the Snazzy Fuzzer intermediate 8 min readLibrary detailing practical tips for using Jazzer, a coverage-guided, in-process fuzzer for the JVM. It covers advanced techniques for enterprise Java applications, including implementing `fuzzerInitialize` and `fuzzerTearDown` methods for setup and cleanup, utilizing method hooks with reflection to inspect application state and detect vulnerabilities like context escapes, and managing timeouts with fork mode and `-ignore_timeouts`.
2026-04-11 2026Jazzer + LibAFL: Java Fuzzing Insights intermediate 6 min readLibrary for Java fuzzing, integrating LibAFL with Jazzer. This fork enhances Jazzer by replacing its LibFuzzer backend with LibAFL, incorporating custom implementations for `__sanitizer_cov_trace_cmp8_with_pc`, `__sanitizer_weak_hook_memmem`, `__sanitizer_weak_hook_strstr`, and `__sanitizer_weak_hook_compare_bytes` to improve coverage feedback and comparison analysis, addressing limitations encountered when adapting Jazzer's LibFuzzer fork to LibAFL's architecture.

Frequently Asked Questions

What is the difference between dumb and smart fuzzing?
Dumb fuzzing generates random inputs with no knowledge of the target's expected format. Smart fuzzing uses coverage feedback (coverage-guided) or grammar definitions (grammar-based) to generate inputs that explore new code paths and conform to expected structures. Smart fuzzers like AFL++ and libFuzzer find deeper bugs more efficiently.
How is web fuzzing different from binary fuzzing?
Web fuzzing tests HTTP parameters, paths, and headers using wordlists and mutation rules — tools like ffuf and Burp Intruder. Binary fuzzing tests compiled programs by mutating file inputs or network data to trigger crashes — tools like AFL++, libFuzzer, and Honggfuzz. Both aim to find bugs through unexpected inputs but operate at different layers.
What has fuzzing discovered in the real world?
Fuzzing has found thousands of critical vulnerabilities. Google's OSS-Fuzz has discovered over 10,000 bugs across hundreds of open-source projects including Chrome, OpenSSL, and the Linux kernel. Heartbleed-class vulnerabilities, parser bugs in image and document formats, and memory corruption in network protocol implementations have all been found through fuzzing.

Weekly AppSec Digest

Get new resources delivered every Monday.