Home / Companies / GitHub / Blog / Post Details
Content Deep Dive

Fuzzing sockets: Apache HTTP, Part 1: Mutations

Blog post from GitHub

Post Details
Company
Date Published
Author
Antonio Morales
Word Count
2,425
Language
English
Hacker News Points
-
Summary

In the final installment of a series on fuzzing sockets, the focus shifts to the Apache HTTP Server, one of the most widely used web servers, and explores the use of custom mutators to enhance fuzzing effectiveness. The author describes a variety of mutation strategies specifically designed for the HTTP protocol and conducts experiments to determine the most effective combinations for achieving high code coverage. The article also delves into utilizing grammar-based mutators and modifying Apache's configuration to optimize fuzzing processes. Additionally, it addresses the complexities of debugging, such as encountering non-deterministic bugs and the challenges posed by tooling like AFL++. Through persistent investigation, the author uncovers a memory corruption issue related to AFL++'s shared memory bitmap, offering insights into both the fuzzing techniques and the importance of understanding tool limitations. The article concludes by previewing the next part of the series, which promises to explore advanced fuzzing techniques and specific Apache modules.