mirror of
https://github.com/mariocandela/beelzebub.git
synced 2025-07-01 18:47:26 -04:00
refactoring example and readme.md
This commit is contained in:
172
README.md
172
README.md
@ -1,68 +1,112 @@
|
||||
  
|
||||
# Beelzebub
|
||||
[](https://postimg.cc/yWfPNqH7)
|
||||
# Beelzebub: A Highly Secure Honeypot Framework with Low Code and Virtualization using GPT-3
|
||||
|
||||
A secure honeypot framework low code, extremely easy to configure by yaml 🚀
|
||||
[](https://github.com/mariocandela/beelzebub/actions/workflows/ci.yml) [](https://github.com/mariocandela/beelzebub/actions/workflows/docker-image.yml) [](https://github.com/mariocandela/beelzebub/actions/workflows/codeql.yml)
|
||||
|
||||
## OpenAI GPT integration
|
||||
How to integrate with OpenAI GPT-3: [`Medium Article`](https://medium.com/@mario.candela.personal/how-to-build-a-highly-effective-honeypot-with-beelzebub-and-chatgpt-a2f0f05b3e1)
|
||||
## Overview
|
||||
|
||||
Beelzebub is an advanced honeypot framework designed to provide a highly secure environment for detecting and analyzing cyber attacks. It offers a low code approach for easy implementation and utilizes virtualization techniques powered by GPT-3, the OpenAI language model.
|
||||
|
||||

|
||||
|
||||
## OpenAI GPT Integration
|
||||
|
||||
Learn how to integrate Beelzebub with OpenAI GPT-3 by referring to our comprehensive guide on Medium: [Medium Article](https://medium.com/@mario.candela.personal/how-to-build-a-highly-effective-honeypot-with-beelzebub-and-chatgpt-a2f0f05b3e1)
|
||||
|
||||
For a visual representation of the integration, you can explore the following diagram:
|
||||
|
||||
[](https://static.swimlanes.io/24d6634a381aa8eb0decf5bac7ae214d.png)
|
||||
|
||||
## Telegram bot realtime attacks
|
||||
## Telegram Bot for Real-Time Attacks
|
||||
|
||||
bot: [`telegram channel`](https://t.me/beelzebubhoneypot)
|
||||
Stay updated on real-time attacks by joining our dedicated Telegram channel: [Telegram Channel](https://t.me/beelzebubhoneypot)
|
||||
|
||||
## Examples
|
||||
|
||||
[`mariocandela/beelzebub-example`](https://github.com/mariocandela/beelzebub-example)
|
||||
To better understand the capabilities of Beelzebub, you can explore our example repository: [mariocandela/beelzebub-example](https://github.com/mariocandela/beelzebub-example)
|
||||
|
||||
## Quick Start
|
||||
|
||||
Using [`docker-compose`](https://docs.docker.com/compose/)
|
||||
We provide two quick start options for build and run Beelzebub: using Docker Compose or the Go compiler.
|
||||
|
||||
### Using Docker Compose
|
||||
|
||||
1. Build the Docker images:
|
||||
|
||||
```bash
|
||||
$ docker-compose build
|
||||
```
|
||||
|
||||
2. Start Beelzebub in detached mode:
|
||||
|
||||
```bash
|
||||
$ docker-compose up -d
|
||||
```
|
||||
|
||||
Using [`go compiler`](https://go.dev/doc/install)
|
||||
### Using Go Compiler
|
||||
|
||||
1. Download the necessary Go modules:
|
||||
|
||||
```bash
|
||||
$ go mod download
|
||||
```
|
||||
|
||||
2. Build the Beelzebub executable:
|
||||
|
||||
```bash
|
||||
$ go build
|
||||
```
|
||||
|
||||
3. Run Beelzebub:
|
||||
|
||||
```bash
|
||||
$ ./beelzebub
|
||||
```
|
||||
|
||||
### Unit Test:
|
||||
## Testing
|
||||
|
||||
We provide two types of tests: unit tests and integration tests.
|
||||
|
||||
### Unit Tests
|
||||
|
||||
To run unit tests:
|
||||
|
||||
```bash
|
||||
$ make test.unit
|
||||
```
|
||||
|
||||
### Integration test:
|
||||
### Integration Tests
|
||||
|
||||
To run integration tests:
|
||||
|
||||
Run integration testing
|
||||
```bash
|
||||
$ make test.integration
|
||||
```
|
||||
|
||||
## Key Features
|
||||
|
||||
## Features
|
||||
Beelzebub offers a wide range of features to enhance your honeypot environment:
|
||||
|
||||
- OpenAPI ChatBot GPT-3 Linux virtualization
|
||||
- SSH Honeypot
|
||||
- HTTP Honeypot
|
||||
- TCP Honeypot
|
||||
- Prometheus openmetrics
|
||||
- Docker
|
||||
- Prometheus openmetrics integration
|
||||
- Docker integration
|
||||
- RabbitMQ integration
|
||||
|
||||
## Example configuration service
|
||||
## Example Configuration
|
||||
|
||||
The configurations are inside the /configurations/services directory, just add a new file for each service/port.
|
||||
Beelzebub allows easy configuration for different services and ports. Simply create a new file for each service/port within the `/configurations/services` directory.
|
||||
|
||||
### Example HTTP Honeypot on 80 port
|
||||
To execute Beelzebub with your custom path, use the following command:
|
||||
|
||||
```bash
|
||||
$ ./beelzebub --confCore ./configurations/beelzebub.yaml --confServices ./configurations/services/
|
||||
```
|
||||
|
||||
Here are some example configurations for different honeypot scenarios:
|
||||
|
||||
#### Example HTTP Honeypot on Port 80
|
||||
|
||||
###### http-80.yaml
|
||||
|
||||
@ -72,26 +116,62 @@ protocol: "http"
|
||||
address: ":80"
|
||||
description: "Wordpress 6.0"
|
||||
commands:
|
||||
- regex: "index.php"
|
||||
handler: ""
|
||||
- regex: "^(/index.php|/index.html|/)$"
|
||||
handler:
|
||||
<html>
|
||||
<header>
|
||||
<title>Wordpress 6 test page</title>
|
||||
</header>
|
||||
<body>
|
||||
<h1>Hello from Wordpress</h1>
|
||||
</body>
|
||||
</html>
|
||||
headers:
|
||||
- "Content-Type: text/html"
|
||||
- "Server: Apache/2.4.53 (Debian)"
|
||||
- "X-Powered-By: PHP/7.4.29"
|
||||
statusCode: 200
|
||||
- regex: "^(wp-login.php|/wp-admin)$"
|
||||
handler: ""
|
||||
- regex: "^(/wp-login.php|/wp-admin)$"
|
||||
handler:
|
||||
<html>
|
||||
<header>
|
||||
<title>Wordpress 6 test page</title>
|
||||
</header>
|
||||
<body>
|
||||
<form action="" method="post">
|
||||
<label for="uname"><b>Username</b></label>
|
||||
<input type="text" placeholder="Enter Username" name="uname" required>
|
||||
|
||||
<label for="psw"><b>Password</b></label>
|
||||
<input type="password" placeholder="Enter Password" name="psw" required>
|
||||
|
||||
<button type="submit">Login</button>
|
||||
</form>
|
||||
</body>
|
||||
</html>
|
||||
headers:
|
||||
- "Content-Type: text/html"
|
||||
- "Server: Apache/2.4.53 (Debian)"
|
||||
- "X-Powered-By: PHP/7.4.29"
|
||||
statusCode: 200
|
||||
- regex: "^.*$"
|
||||
handler:
|
||||
<html>
|
||||
<header>
|
||||
<title>404</title>
|
||||
</header>
|
||||
<body>
|
||||
<h1>Not found!</h1>
|
||||
</body>
|
||||
</html>
|
||||
headers:
|
||||
- "Content-Type: text/html"
|
||||
- "Server: Apache/2.4.53 (Debian)"
|
||||
- "X-Powered-By: PHP/7.4.29"
|
||||
statusCode: 404
|
||||
```
|
||||
|
||||

|
||||
|
||||
|
||||
### Example HTTP Honeypot on 8080 port
|
||||
#### Example HTTP Honeypot on Port 8080
|
||||
|
||||
###### http-8080.yaml
|
||||
|
||||
@ -109,11 +189,9 @@ commands:
|
||||
statusCode: 401
|
||||
```
|
||||
|
||||

|
||||
#### Example SSH Honeypot
|
||||
|
||||
### Example SSH Honeypot
|
||||
|
||||
###### Honeypot with ChatBot GPT-3 ssh-2222.yaml
|
||||
###### Honeypot with GPT-3 on Port 2222
|
||||
|
||||
```yaml
|
||||
apiVersion: "v1"
|
||||
@ -128,15 +206,19 @@ serverName: "ubuntu"
|
||||
passwordRegex: "^(root|qwerty|Smoker666|123456|jenkins|minecraft|sinus|alex|postgres|Ly123456)$"
|
||||
deadlineTimeoutSeconds: 60
|
||||
plugin:
|
||||
openAPIChatGPTSecretKey: "Here your ChatBot SecretKey "
|
||||
openAPIChatGPTSecretKey: "Your OpenAI Secret Key"
|
||||
```
|
||||
|
||||
###### SSH Honeypot on Port 22
|
||||
|
||||
###### ssh-22.yaml
|
||||
|
||||
```yaml
|
||||
apiVersion: "v1"
|
||||
protocol: "ssh"
|
||||
address: ":22"
|
||||
|
||||
|
||||
description: "SSH interactive"
|
||||
commands:
|
||||
- regex: "^ls$"
|
||||
@ -161,32 +243,20 @@ passwordRegex: "^(root|qwerty|Smoker666)$"
|
||||
deadlineTimeoutSeconds: 60
|
||||
```
|
||||
|
||||

|
||||

|
||||
|
||||
## TODO
|
||||
## Roadmap
|
||||
|
||||
- telnet
|
||||
- UDP
|
||||
|
||||
# ROADMAP
|
||||
|
||||
- SaaS Platform
|
||||
|
||||
|
||||
## Documentation
|
||||
|
||||
- [API Docs](https://) #TODO
|
||||
Our future plans for Beelzebub include developing it into a robust PaaS platform.
|
||||
|
||||
## Contributing
|
||||
|
||||
The beelzebub team enthusiastically welcomes contributions and project participation! There's a bunch of things you can do if you want to contribute! The [Contributor Guide](CONTRIBUTING.md) has all the information you need for everything from reporting bugs to contributing entire new features. Please don't hesitate to jump in if you'd like to, or even ask us questions if something isn't clear.
|
||||
|
||||
All participants and maintainers in this project are expected to follow [Code of Conduct](CODE_OF_CONDUCT.md), and just generally be excellent to each other.
|
||||
The Beelzebub team welcomes contributions and project participation. Whether you want to report bugs, contribute new features, or have any questions, please refer to our [Contributor Guide](CONTRIBUTING.md) for detailed information. We encourage all participants and maintainers to adhere to our [Code of Conduct](CODE_OF_CONDUCT.md) and foster a supportive and respectful community.
|
||||
|
||||
Happy hacking!
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under [GNU GPL 3 License](LICENSE).
|
||||
Beelzebub is licensed under the [GNU GPL 3 License](LICENSE).
|
||||
|
||||
[](https://www.paypal.com/donate/?business=P75FH5LXKQTAC&no_recurring=0¤cy_code=EUR)
|
||||
[](https://www.paypal.com/donate/?business=P75FH5LXKQTAC&no_recurring=0¤cy_code=EUR)
|
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user