Installation
With python3 and pip:
Linux :
install the deps
$ pip install -r requirements.txt
launch the server with su permissions (required)
$ sudo python serv.py
Using a python3 virtual environment (venv) :
Create a venv and activate it
$ python -m venv venv
$ . venv/bin/activate
Install the deps
$ pip install -r requirements.txt
Launch the server with su permissions (required)
$ sudo python serv.py
Documentation
use '-s' or '--server' parameter to lauch the program in server mode and communicate with websocket, otherwise the program wil be launched in standalone mode
The server use json through websockets to communicate with the client :
["command", "arg1", "arg2", [...]]
You can find an instance of a python client in testClient.py
Here are the request that the server currently recognize :
-
nmap_scan
Return IP of every connected device using nmap
args
- (optional) network adress with cidr notation
default to "192.168.0.0/24"
returns the list of local devices ip
example : ["192.168.0.11", "192.168.0.21", "192.168.0.23"]
- (optional) network adress with cidr notation
-
arp_scan
Return IP & Mac of every connected client, faster than a nmap scan but less reliable
args
- (optional) network adress with cidr notation
default to "192.168.0.0/24"
returns the list of local devices ip and mac
example : [{"ip": "192.168.0.33", "mac": "70:85:c2:83:00:70"}, {"ip": "192.168.0.41", "mac": "68:a3:78:50:67:8a"}, {"ip": "192.168.0.22", "mac": "20:47:da:28:8c:51"}]
- (optional) network adress with cidr notation
-
arp_spoof
launch an arp spoofing attaque
args
- target's ip (required)
- gateway's ip (optional)
default to "192.168.0.254"
-
sniff
work in progress
sniff the packet of the target and send them to the gateway
args
- target's ip (required)
- gateway's ip (optional)
default to "192.168.0.254"
-
set_gateway
change the default gateway's value
args
- gateway's ip (required)
example "192.168.0.254"
- gateway's ip (required)
-
spoof_stop
stop the spoofing of a specific adress
args
- target's ip (required)
-
sniff_stop
stop the sniffing of a specific adress
args
- target's ip (required)
-
get_spoofed
return the ip of the devices getting spoofed
-
get_sniffed
return the ip of the devices getting sniffed