Keep 'em down
DDoS utility for education purposes only. Allows to specify a number of targets inside a json file and send a tremendous amount of request. The requests are distributed across the specified targets, to allow keeping as much targets down as possible, while limiting the necessary resources.
Usage
- Clone the project
- Define the targets in a
targets.json
file - Use
cargo
to build and run the projectcargo run
Supported Protocols
- TCP
- HTTP: Sends a GET request to the provided URL or IP-Address
- HTTPS: Sends a GET request to the provided url or IP-Address
Defining targets
The targets are defined inside a json file. The file must be located in the same directory as the executable. The order of the elements inside the targets
array is important and should represent the desired prioritization.
Example:
{
"targets": [
{
"ip_or_url": "185.106.xxx.xxx",
"protocol": "tcp",
"port": [
53,
80
]
},
{
"ip_or_url": "185.106.xxx.xxx",
"protocol": "tcp",
"port": [
53,
80
]
},
{
"ip_or_url": "example.com",
"protocol": "http",
"port": [
80
]
}
],
"duration": 10,
"total_connections": 10000
}
The duration
needs to be defined in seconds. After the specified time, the attack will be stopped. The total_connections
make it possible to limit the used resources by the program.
Distribution
The distribution algorithm can be found in src/distributor.rs. Right now only a really simple redistribution algorithm is defined. This can be improved in the future.
Disclaimer
The software is provided only as is under MIT License. Use is intended solely for testing purposes in your own systems. It is illegal to use it against third-party systems - l3montree accepts no responsibility for this. l3montree accepts no liability for damage to material or persons resulting from the use of the software.