Skip to content

A high-performance distributed network protocol fuzzer

Notifications You must be signed in to change notification settings

aslonv/Network-Protocol-Fuzzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Network Protocol Fuzzer

The Network Protocol Fuzzer is a high-performance distributed network protocol fuzzer implemented in Go. It is designed to discover vulnerabilities in network services by generating and mutating packets based on protocol definitions.

  • Flexible Protocol Definitions: Define network protocols using a JSON schema.
  • High-Speed Packet Generation: Capable of generating millions of packets per second.
  • Stateful Fuzzing Engine: Supports complex mutation strategies and stateful testing.
  • Distributed Fuzzing: Uses gRPC for distributed task management across multiple machines.

Structure

  • cmd/: Contains the entry points for the application.
    • fuzzer/: Main application for running the fuzzer.
  • pkg/: Contains reusable packages.
    • protocol/: Protocol definition and handling.
    • engine/: Packet generation and mutation.
    • fuzzer/: Main fuzzing logic.
  • internal/: Contains internal packages.
    • logger/: Logging and metrics.
    • distributed/: gRPC server and client for distributed fuzzing.
  • docs/: Documentation and protocol examples.
  • Dockerfile: Docker configuration for building and running the application.
  • .github/workflows/ci.yml: CI configuration for GitHub Actions.

About

A high-performance distributed network protocol fuzzer

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published