AFL++ Instrumentation in Practice: A Trace from Compilation to Fuzz II

In the previous post, we stopped at the point where AFL++ had produced instrumented binaries with PCGUARD and LTO. In this installment, we pick up the story at runtime: tracing the execution of those binaries, observing how coverage signals are collected, and following how afl-fuzz consumes that feedback to discover new paths. This is where […]


AFL++ Instrumentation in Practice: A Trace from Compilation to Fuzz I

In the previous post, we laid out the theoretical map of AFL++’s instrumentation modes, from the classic edge coverage to modern LLVM-based techniques. With that foundation in place, it’s time to move from theory to practice. This article focuses on the compilation process with afl-cc: how LTO and PCGUARD instrumentation are inserted into the binary, […]



All about virtual memory III – Practical Example

In the latest post we did a deep overview on how virtual memory works, but without focusing in any architecture. In this post we will discuss how virtual memory is implemented in x86_64 arch, by building a Linux kernel module. At the end, you will find a link to download the source code. Virtual memory […]

WordPress Cookie Plugin by Real Cookie Banner