fuddly - Fuzzing and Data Manipulation Framework
List of features
- Graph-based data model that enables:
- to represent complex data formats and also to mix them
- complex data manipulations
- to dissect/absorb existing data
- generation & mutation fuzzing strategy
- Fuzzing automation framework:
- target abstraction
- monitoring means based on independant probes
- replay & logging
- data manipulation based on disruptors (objects that implement specific data transformation)
- scenario infrastructure (for modeling protocol logic)
- virtual operators
- and so on...
What's still missing
- Refer to TODO file
About documentation
- Documentation is available here.
- In order to generate the documentation from the source, follow these steps:
- go to the folder
docs/
- execute
make html
to generate HTML documentation - execute
make latexpdf
to generate PDF documentation - generated documentation is located in
docs/build/
- go to the folder
Launch fuddly test cases
The package
test
include all unit & integration test cases of fuddly
itself. Usage is as follows:- To launch all the tests, issue the command:
>> python -m test -a
- To launch all the tests but the longer ones, issue the command:
>> python -m test
- To avoid data model specific test cases use the option
--ignore-dm-specifics
- To launch a specific test category issue the following command:
>> python -m test test.<test_package>.<test_module>.<Test_Class>.<test_method>
Miscellaneous
- Don't forget to populate
~/fuddly_data/imported_data/
with sample files for data models that need it
Dependencies
- Compatible with Python2 and Python3
- Mandatory:
- Optional:
- For testing:
- For documentation generation:
- sphinx: sphinx >= 1.3 (with builtin napoleon extension)
- texlive (optional): Needed to generate PDF documentation
- readthedocs theme (optional): Privileged html theme for sphinx
Post a Comment