GithubHelp home page GithubHelp logo

6e006b / fuddly Goto Github PK

View Code? Open in Web Editor NEW

This project forked from k0retux/fuddly

0.0 0.0 0.0 7.12 MB

Fuzzing and Data Manipulation Framework (for GNU/Linux)

License: GNU General Public License v3.0

Python 100.00%

fuddly's Introduction

fuddly: a fuzzing and data manipulation framework

Documentation

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:
    1. go to the folder docs/
    2. execute make html to generate HTML documentation
    3. execute make latexpdf to generate PDF documentation
    4. generated documentation is located in docs/build/

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 folder>/imported_data/ with sample files for data models that need it
  • Note that when the fuddly shell is launched, the path of the fuddly data folder is displayed as well as its configuration folder

Dependencies

  • Compatible with Python3
  • Mandatory:
  • Optional:
    • xtermcolor: Terminal color support
    • graphviz: For graphic visualization (e.g., scenario display)
    • paramiko: Python implementation of the SSHv2 protocol
    • serial: For serial port access
    • cups: Python bindings for libcups
    • rpyc: Remote Python Call (RPyC), a transparent and symmetric RPC library
    • pyxdg: XDG Base Directory support
  • For testing:
    • ddt: Used for data-driven tests
    • mock: Used for mocking
  • 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

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.