Skip to content

davinmaritza/flood

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 

Repository files navigation

Flood - HTTP/2 Stress Testing Tool 🚀

Flood is a high-performance stress testing tool written in Node.js, designed to send a high volume of HTTP/2 requests to a server. This tool leverages multi-threading, proxy connections, and header randomization to simulate intense and realistic traffic.

The primary purpose of this tool is to test the resilience and performance of web servers under heavy load conditions.

✨ Key Features

Multi-Threading: Utilizes the Node.js cluster module to leverage all CPU cores, maximizing the number of requests that can be sent. HTTP/2 Support: Sends requests over the efficient HTTP/2 protocol. Proxy Support: Supports routing traffic through a list of proxies from a text file (.txt), distributing requests from various IP addresses. Advanced Header Randomization: Automatically generates and uses a wide variety of User-Agent, Accept-Language, and other headers to mimic traffic from different types of browsers and users. Resource Management: Monitors RAM usage and automatically restarts the script if memory consumption exceeds a set threshold (85%) to prevent crashes. Custom TLS Fingerprint: Employs a variety of cipher suites and signature algorithms to create more varied and less detectable TLS connections.


⚙️ Prerequisites

Before running this script, ensure you have the following installed:

Node.js (version 14.x or higher is recommended) A text file containing a list of proxies in the format ip:port, with one proxy per line.


🚀 Installation & Setup

  1. Save the code into a file named Flood.js.
  2. Open your terminal or command prompt in the same directory as the file.
  3. Install the required dependencies:
    npm install colors
  4. Prepare your proxy file (e.g., proxies.txt) with your list of proxies.

Usage

Run the script from your terminal using the following command format:

node Flood.js <target> <time> <rate> <threads> <proxyfile>

Parameter Descriptions:

<target>: The full URL of the target you want to test (e.g., https://example.com). <time>: The total duration of the test in seconds (e.g., 60). <rate>: The number of requests sent per interval by each thread (e.g., 128). <threads>: The number of worker threads to run (e.g., 4). <proxyfile>: The name of the file containing your list of proxies (e.g., proxies.txt).

Example Command:

node Flood.js https://example.com 60 128 4 proxies.txt

⚠️ Disclaimer

This tool is created for educational and security testing purposes only. Only use this script on servers and networks that you own or have explicit permission to test.

The developer is not responsible for any misuse or damage caused by this script. Act responsibly.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors