Code Monkey home page Code Monkey logo

marissa's Introduction

MARISSA

Marissa is a tool for protocol reverse engineerings and is part of my Bachelor's Thesis for the Telecommunications Engineering degree. It takes a previous network comunication as input and infer the messages by clustering and multiple sequence aligment.

Installation

Prequisites

  1. Clone the repository: git clone https://github.com/pruizlezcano/MARISSA.git
  2. Install dependencies: poetry install
  3. Download Clustal Omega and add it to your PATH

Usage

  1. Prepare a .pcap file with the network communication you wish to analyze.
  2. Run Marissa with the necessary options. Here's an example command:
protocol-inference --input yourfile.pcap -v --packet-length 1500 --packet-length-variance 100 --percent-equal 0.8 --header-length 20 --distance-algorithm ssdeep --cluster-algorithm optics

Options

  • --input, -i TEXT: The .pcap file to read. This option is required.
  • --verbose, -v: Prints the output of the commands run by the script.
  • --packet-length, -l INTEGER: The length of the packets to filter. If not specified, all packets are considered.
  • --packet-length-variance, -p INTEGER: The variance in the length of the packets to filter.
  • --percent-equal, -e FLOAT: The percentage of equal packets to consider for writting the result file. Accepts values between 0 and 1. Default is 1.
  • --header-length, -h INTEGER: The length of the packet headers. This is used to ignore the headers in the analysis.
  • --distance-algorithm, -d [tlsh|ssdeep|hamming]: The distance algorithm to use for comparing packet similarity. Default is ssdeep.
  • --cluster-algorithm, -c [optics|kmeans|kmeans_hierarchical]: The clustering algorithm to use. Default is optics.
  • --help: Show the help message and exit.

License

Licensed under the GNU GPLv3 license.

marissa's People

Contributors

pruizlezcano avatar

Watchers

 avatar

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.