Skip to content

Polymorph is a real-time network packet manipulation framework with support for almost all existing protocols

License

Notifications You must be signed in to change notification settings

fo0nikens/polymorph

 
 

Repository files navigation

POLYMORPH

Polymoprh is a framework written in the Python3 programming language that allows the modification of network packets in real time, providing maximum control to the user over the contents of the packet. This framework is intended to provide an effective solution for real-time modification of network packets that implement practically any existing protocol, including private protocols that do not have a public specification. In addition to this, one of its main objectives is to provide the user with the maximum possible control over the contents of the packet and with the ability to perform complex processing on this information.

INSTALLATION

Download and installation on Linux (Recommended)

Polymoprh is specially designed to be installed and run on a Linux operating system, such as Kali Linux. Before installing the framework, the following requirements must be installed:

apt-get install build-essential python-dev libnetfilter-queue-dev tshark tcpdump python3-pip wireshark

After the installation of the dependencies, the framework itself can be installed with the Python pip package manager in the following way:

pip3 install --process-dependency-links polymorph

Download and installation on Windows

Polymorph can also be installed on Windows operating systems. The requirements necessary for the framework to work correctly are the following:

  • Installation of Python3 (add it to PATH). Download
  • Installation of Wireshark (add it to the PATH). Download
  • Installation of Visual C ++ Build Tools. Download
  • WinPcap installation (If you have not installed it with Wireshark) Download

Once the dependencies are installed, the only thing that the user must do is open a console and execute the following command.

pip install --process-dependency-links polymorph

After completing the installation, Polymorph will be accessible from the terminal from any system path. It is important to note that in Windows, Polymorph must be executed in a console with administrative privileges.

Docker enviroment

The implementation of this environment consists of three steps:

  • Download and install Docker on the host machine, to do so go to the Docker homepage and follow the installation instructions for the desired operating system.
  • Once the user has downloaded and started docker, he can access the project in the path /polymorph and execute docker-compose up -d
  • Docker will then take care of creating the containers following the specifications set in the Dockerfile and in the YAML of the compose, as soon as the configuration is finished the three machines will be up and ready to be used. Each time the docker service is restarted, it will be necessary to execute docker-compose up -d
  • To access any of the machines the user must execute: docker exec -ti [polymorph | alice | bob] bash

EXAMPLES AND DOCUMENTATION

For examples and documentation about the framework, please refer to:

CONTACT

[email protected]

About

Polymorph is a real-time network packet manipulation framework with support for almost all existing protocols

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.8%
  • Other 0.2%