Qznec / russia_ddos

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DRipper

Build status Docker Pulls Docker Image Version (latest semver)

DESCRIPTION

This is reworked version of DRipper. This script support HTTP/TCP/UDP flood attack. We recommend using this script for your own test purposes in the local (on-premise) environment to improve your own web services against DDoS attacks.

Prerequisites

  • Python 3.9 or better
  • Docker (optional) if you'd like to run script with docker

How it looks

                                                                                
              ██████╗ ██████═╗██╗██████╗ ██████╗ ███████╗██████═╗               
              ██╔══██╗██╔══██║██║██╔══██╗██╔══██╗██╔════╝██╔══██║               
              ██║  ██║██████╔╝██║██████╔╝██████╔╝█████╗  ██████╔╝               
              ██║  ██║██╔══██╗██║██╔═══╝ ██╔═══╝ ██╔══╝  ██╔══██╗               
              ██████╔╝██║  ██║██║██║     ██║     ███████╗██║  ██║               
              ╚═════╝ ╚═╝  ╚═╝╚═╝╚═╝     ╚═╝     ╚══════╝╚═╝  ╚═╝               
                                                          v2.0.0                
                                                                                
        It is the end user's responsibility to obey all applicable laws.        
        It is just like a server testing script and Your IP is visible.         
                                                                                
                      Please, make sure you are ANONYMOUS!                      
                                                                                
 ────────────────────────────────────────────────────────────────────────────── 
  Description                       Status                                      
 ────────────────────────────────────────────────────────────────────────────── 
  Start Time                        2022-02-24 04:00:00                         
  Your Public IP / Country          131.*.*.* / AR                              
  Host IP / Country                 192.168.0.1:80 / RU                        
  Load Method                       UDP                                         
 ────────────────────────────────────────────────────────────────────────────── 
  Threads                           50                                          
  vCPU Count                        16                                          
  Random Packet Length              True / Max length: 2048                     
 ────────────────────────────────────────────────────────────────────────────── 
  CloudFlare DNS Protection         Not protected                               
  Last Availability Check           04:10:52                                    
  Host Availability                 Accessible in 21 of 21 zones (100%)         
 ────────────────────────────────────────────────────────────────────────────── 
  UDP Statistic                                                                 
 ────────────────────────────────────────────────────────────────────────────── 
  Duration                          0:12:11                                     
  Sent Packets                      10,332,191                                     
  Sent Bytes                        2.22 GB                                   
  Connection Success                2                                           
  Connection Failed                 29                                          
  Connection Success Rate           6%                                          
 ────────────────────────────────────────────────────────────────────────────── 
                        Press CTRL+C to interrupt process.                       
                                                                                
                               #StandWithUkraine                               

Usage

DRipper can run on Windows/Linux/macOS from command line. We recommend to use PowerShell for Windows users to run the script, Linux/macOS users can use any shell.

Run python DRipper --help to see detailed params description.

██████╗ ██████═╗██╗██████╗ ██████╗ ███████╗██████═╗
██╔══██╗██╔══██║██║██╔══██╗██╔══██╗██╔════╝██╔══██║
██║  ██║██████╔╝██║██████╔╝██████╔╝█████╗  ██████╔╝
██║  ██║██╔══██╗██║██╔═══╝ ██╔═══╝ ██╔══╝  ██╔══██╗
██████╔╝██║  ██║██║██║     ██║     ███████╗██║  ██║
╚═════╝ ╚═╝  ╚═╝╚═╝╚═╝     ╚═╝     ╚══════╝╚═╝  ╚═╝
                                           v2.0.0

It is the end user's responsibility to obey all applicable laws.
It is just like a server testing script and Your IP is visible.

Please, make sure you are ANONYMOUS!

Usage: python DRipper.py [options] arg

Options:
  -h, --help            show this help message and exit
  -p PORT, --port=PORT  port (default: 80)
  -t THREADS, --threads=THREADS
                        threads (default: 100)
  -r RANDOM_PACKET_LEN, --random_len=RANDOM_PACKET_LEN
                        Send random packets with random length (default: 1
  -l MAX_RANDOM_PACKET_LEN, --max_random_packet_len=MAX_RANDOM_PACKET_LEN
                        Max random packets length (default: 48)
  -m ATTACK_METHOD, --method=ATTACK_METHOD
                        Attack method: udp (default), tcp, http
  -s HOST, --server=HOST
                        Attack to server IP

Example: python DRipper.py -s 192.168.0.1 -p 80 -t 100

How to Run

Using Docker

# HTTP flood
docker run -it --rm alexmon1989/dripper:latest -s 127.0.0.1 -p 80 -t 100 -m http

# TCP flood
docker run -it --rm alexmon1989/dripper:latest -s 127.0.0.1 -p 80 -t 100 -m tcp -l 2048

# UDP flood
docker run -it --rm alexmon1989/dripper:latest -s 127.0.0.1 -p 80 -t 100 -m upd -l 2048

Directly with Python.

Ensure you have Python 3.9 or better installed. Then clone this repo and run DRipper.py with params you need

git clone https://github.com/alexmon1989/russia_ddos.git
cd russia_ddos

# Install python dependencies:
pip install -r requirements.txt

# Run script
python -u DRipper.py -s 127.0.0.1 -p 80 -t 100 -r 1 -m udp
# OR
python3 -u DRipper.py -s 127.0.0.1 -p 80 -t 100 -r 1 -m udp

Kubernetes

You can deploy and run DRipper in Kubernetes cluster using kube-dripper terraform configuration. For details - see the README from kube-dripper project.

How to run unit tests

Prepare

pip install pytest

Run

pytest

License

This project is distributed under the MIT License, see LICENSE for more information.

About

License:MIT License


Languages

Language:Python 99.4%Language:Dockerfile 0.6%