Skip to content
Fuzz servers and clients using pcaps or mitm based approaches
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


Fuzz (multiplayer) servers and clients using pcaps or mitm based approaches. This is UDP only as it was developed to fuzz games in the first place.

It supports fuzzing based on a pre-captured pcap file that will serve as a base for fuzzing. The packets will be read, modified and replayed in order to cause crashes of the server. The second mode involves a man-in-the-middle (MITM) setup where acts as a proxy that fuzzes network packets on-the-fly to target the client and the server at once. The fuzzer creates a fuzzer and error log file to debug things and recreate crashes. You can also use wireshark to capture the traffic generated by this fuzzer for easier replay.

Please refer to the Pipfile and use it to install the Python2.7 dependencies using pipenv Additionally, get and compile radamsa.

Client/Server Settings

Edit the RADAMSA_PATH, HOST, PORT and CLIENT settings of to get started.

pcap Mode

First, create a pcap file, for example by joining a CS:GO server and capturing all related packets. This can cover packets originating from and going to the client/server -- however at the moment only the packets sent to the server are being replayed in this mode. After that edit the settings part of to use the desired pcap file. Call pcapFuzz in the main method to start the fuzzing process.


Use the following iptables rules to make a proxy between the client and the server:

sudo iptables -A OUTPUT -d <Server-IP> -j NFQUEUE --queue-num 1 # Fuzz the server
sudo iptables -A INPUT  -s <Server-IP> -j NFQUEUE --queue-num 1 # Fuzz the client

After that, edit's main method to call mitmFuzz and run it as root. This ultimately fuzzes the client and the server while you play the game.

You can’t perform that action at this time.