Useful Links
Computer Science
Cybersecurity
Fuzzing
1. Introduction to Fuzzing
2. Core Concepts and Architecture
3. Types of Fuzzers
4. Input Generation and Mutation Strategies
5. Target Monitoring and Instrumentation
6. The Fuzzing Process
7. Crash Triage and Analysis
8. Advanced Fuzzing Techniques
9. Fuzzing in the Software Development Lifecycle
10. Common Vulnerabilities Discovered by Fuzzing
11. Common Fuzzing Tools and Frameworks
12. Fuzzing Best Practices
13. Challenges and Limitations
14. Future Directions and Research
Core Concepts and Architecture
The Fuzzing Loop
Input Generation
Execution of Target
Monitoring and Feedback
Crash Detection and Logging
Corpus Update
Key Components of a Fuzzer
Test Case Generator
Input Mutation
Input Generation from Grammar
Target Runner
Isolated Execution
Resource Management
Monitoring and Instrumentation Agent
Code Coverage Collection
Performance Monitoring
Crash Triage and Analysis Module
Crash Collection
Crash Deduplication
Automated Triage
The Fuzz Target
Defining the Entry Point
Main Function
API Entry Points
Harnessing Libraries and Applications
Writing a Fuzz Harness
Isolating Testable Components
Target Preparation
Compilation Requirements
Runtime Environment Setup
The Corpus
Initial Seed Corpus
Selecting Representative Inputs
Minimizing Redundancy
Evolving Corpus
Adding New Inputs
Removing Redundant Inputs
Corpus Minimization
Techniques for Minimization
Benefits of a Small Corpus
Corpus Distillation
Removing Duplicates
Focusing on Coverage-Enhancing Inputs
Previous
1. Introduction to Fuzzing
Go to top
Next
3. Types of Fuzzers