Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/araujo88/goudpflood
UDP flood attack example in Go
https://github.com/araujo88/goudpflood
udp-flood udpflood
Last synced: 21 days ago
JSON representation
UDP flood attack example in Go
- Host: GitHub
- URL: https://github.com/araujo88/goudpflood
- Owner: araujo88
- License: gpl-3.0
- Created: 2023-12-30T08:50:34.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-03T03:49:39.000Z (about 1 year ago)
- Last Synced: 2024-01-03T05:46:13.975Z (about 1 year ago)
- Topics: udp-flood, udpflood
- Language: Go
- Homepage:
- Size: 1.13 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GoUDPflood
This repository contains a Go application designed to create and send UDP packets with a raw socket. It's intended for educational purposes to understand network protocols and raw socket programming in Go.
## Disclaimer
This tool is provided for educational purposes only. Any misuse of this software will not be the responsibility of the author or of any affiliates. The end-user is solely responsible for complying with all applicable laws and regulations in their jurisdiction.
## Prerequisites
- Go 1.20
- Root or Administrator privileges (for raw socket operations)
- Wireshark (for packet analysis, optional)## Installation
Clone the repository to your local machine:
```sh
git clone https://github.com/araujo88/GoUDPflood.git
cd GoUDPflood
```## Usage
To run the application, use the following command:
```sh
sudo go run main.go
```Replace ``, ``, and `` with the appropriate values.
Example:
```sh
sudo go run main.go 127.0.0.1 8080 "Hello, World"
```## Features
- UDP packet crafting with customizable payload.
- IP and UDP checksum calculation.
- IP header inclusion with the `IP_HDRINCL` option.
- Spoofed source IP address generation.## How It Works
The application crafts a UDP packet with a manually constructed IP header, followed by a UDP header and a data payload. It sets the `IP_HDRINCL` socket option to signal the kernel that the packet will include the IP header. The checksums for both IP and UDP headers are calculated to ensure the packet's integrity.
## Contributing
Contributions to this project are welcome. Please fork the repository and submit a pull request with your features or fixes.
## License
This project is licensed under the GPL License - see the [LICENSE](LICENSE) file for details.
## Contact
If you have any questions or feedback, please open an issue in the GitHub repository issue tracker.