-
Notifications
You must be signed in to change notification settings - Fork 112
Module Organization
This modules are the data generation modules, they contain the primitives and blocks that forms a request.
- Static (s_static): Static content (not fuzzable). For when we want to place a set of data without fuzzing it.
- String (s_string): Variable length string
-
BitField (s_bit_field): A number of bits! It can be represented as "binary" (b'\x00') or "ascii" (b'0')
- Byte (s_byte): 8 bits sized BitField!
- Word (s_word): 2 bytes sized BitField!
- DWord (s_dword): 4 bytes sized BitField! (alias s_int)
- QWord (s_qword): 8 bytes sized BitField!
- Group (s_group): List of static values
- Delim (s_delim): A character delimiter (:, \n, <, >, etc.)
- RandomData (s_random): Random chunk of data with specified length.
- Block (s_block). A block containing primitives or other blocks
- Variable (s_variable). Takes the value of a variable set by a request, response or user.
- Repeat (s_repeat). Repeat a block multiple times
- Size (s_size). Calculates the size of a block or primitive. It can be ascii or binary, big or little endian, and have predefined size in bytes.
- Request (s_initialize). A Superblock, the main one! It inherits from a block
- Checksum (s_checksum). Calculate some usual checksums (md5, sha1, etc) of a block.
This module contains the main interface of a Fuzzer that needs to be implemented by each fuzzer made, and some implemented or example fuzzers.
This module contains the main interface that needs to be implemented by your monitors, and different monitors implemented
This module contains the main interface that needs to be implemented by your restarter and some generic restarters, that can be launched by the prompt, or automatically after the connection is lost to the target.
The responses can be instantiated after a request with s_response() and are called after receiving a response from the server. They are in charge of setting variables, allowing to easily define stateful fuzzers, and may contain other checks in the future
The session implements the main fuzzing functionality, contains all configuration parameters, etc.
The TestCase contains all the information to perform a test or show information about it
The Prompt module and submodules contains the implementation of the REPL, with the console behaviour and commands
It contains all the commands and implementation of them.
Contains code to set the session graph, which is able to get all different paths of a session.