Skip to content

42 project - Prototype of an ARP Poisoning program

Notifications You must be signed in to change notification settings

Link-Wolf/inquisitor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Link-Wolf - inquisitor 42 grade - 125 / 100 Year - 2022 stars - inquisitor forks - inquisitor issues - inquisitor OS - linux

Logo

Piscine Cybersecurity - inquisitor

ARP Poisoning
A prototype of an ARP poisoning program

Report Bug · Request Feature

Table of Contents
  1. Goal
  2. Getting Started
  3. Usage examples
  4. Contributing

Goal

inquisitor

This cybersecurity project aims to emulate a classical Man in the Middle attack by ARP poisoning in a controlled environment. The goal is to be able to intercept the traffic between a client and a FTP server and to be able to read the packets sent by the client to the server and vice versa.

Since it's only a prototype, the poisoner isn't well hidden –actually, the target ­can see the changes when it occurs– and the poisoner only intercepts FTP packets.

The program is written in C++

(back to top)

Getting Started

Prerequisites

Having Docker installed on your system and be able to run the docker compose command on your system

Installation

  1. Clone the repo

    $> git clone https://github.com/Link-Wolf/inquisitor.git
  2. Launch the containers

    $> cd inquisitor
    $> make
  3. From the poisoner

    $> docker exec -it poisoner bash
    #> inquisitor [-v] IP_src MAC_src IP_target MAC_target

    The -v (verbose) option is used to display the packets sent and received by the program The IP_src and MAC_src are the IP and MAC addresses of the FTP server The IP_target and MAC_target are the IP and MAC addresses of the victim

  4. From the target

    $> docker exec -it target bash
    #> ftp source
    > ls|get FILE|pwd|...

    Source is the hostname of the FTP server FILE is the name of the file to download

(back to top)

Usage examples

Using the target container as a simple client that connect to a FTP server

Using the poisoner container to perform a MITM (Man In The Middle) attack on the target container

In this example, the poisoner container intercepts the FTP packets at the moment the target tries to download a file named my_awesome_file.exe.

(back to top)

Contributing

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)