moodmosaic

Blog

Fuzzing in Memory-Safe Languages

2023-10-15

Fuzzing in memory-safe languages has evolved beyond hunting memory corruption to target logic errors, panics, and concurrency bugs while property-based testing provides semantic validation.

Read more →

Wrap-Up: An Input Coverage Playbook

2023-08-11

Part of the Input Coverage series, providing a practical 9-step playbook for implementing property tests, libFuzzer, and AFL++ for comprehensive input coverage.

Read more →

Appendix: Commands, Flags, And Gotchas

2023-08-04

Part of the Input Coverage series, providing essential commands, installation instructions, and common gotchas for cargo-fuzz, cargo-afl, and Rust fuzzing tools.

Read more →

Appendix: Varint Shift Bug

2023-07-21

Part of the Input Coverage series, demonstrating a classic edge case where overlong LEB128 varint encoding causes panic due to missing shift cap validation.

Read more →

AFL++, Original AFL, And When To Care

2023-07-14

Part of the Input Coverage series, comparing AFL++ and original AFL for Rust fuzzing, covering when to use each tool and essential configuration settings.

Read more →

CI, Seeds, And Corpora Hygiene

2023-06-30

Part of the Input Coverage series, covering best practices for CI fuzzing runs, seed management, corpus hygiene, and crash handling to keep noise down.

Read more →

Mocking I/O To Go Faster

2023-06-23

Fuzzers need speed but I/O is slow. Learn how to use test doubles to replace real dependencies with fake implementations for faster fuzzing iterations.

Read more →