
Ein sicheres Low-Code-Deception-Runtime-Framework, das KI für die Systemvirtualisierung nutzt.
 # Beelzebub **Open-Source-Täuschungsframework.** Realistische Köder bereitstellen. Angreiferverhalten beobachten. Interaktionen in Sicherheitsnachweise verwandeln. **[Beelzebub Platform entdecken](https://beelzebub.ai/products/beelzebub-cloud/)** · [Dokumentation](https://docs.beelzebub.ai) · [Schnellstart](#get-started) [](https://github.com/beelzebub-labs/beelzebub/actions/workflows/main.yml) [](https://codecov.io/gh/beelzebub-labs/beelzebub) [](LICENSE) [](https://pkg.go.dev/github.com/beelzebub-labs/beelzebub/v3) [](https://github.com/avelino/awesome-go) Beelzebub bietet Sicherheitsteams eine konfigurierbare Möglichkeit, Aktivitäten zu untersuchen, die auf Köderdienste gerichtet sind. Definieren Sie die Umgebung, auf die ein Angreifer trifft, legen Sie fest, wie sie reagiert, und erfassen Sie die Interaktion für die Untersuchung. Betreiben Sie das Framework eigenständig oder verbinden Sie es mit der Beelzebub Platform. ## Warum Beelzebub - **Stellen Sie Köder bereit, die zu Ihrer Umgebung passen.** Definieren Sie Dienste, Routen und Antwortregeln in YAML. Verwenden Sie statische Handler für vorhersehbares Verhalten oder LLM-gestützte Antworten für adaptive Interaktionen. Erweitern Sie die Laufzeit mit vertrauenswürdigen Go-Plugins, wenn Sie benutzerdefiniertes Verhalten benötigen. - **Beobachten Sie, was nach dem Kontakt geschieht.** Erfassen Sie Nachweise aus Köder-Interaktionen, einschließlich Befehlen, Details zu HTTP-Anfragen und Sitzungskontext, je nach Protokoll. Geben Sie Analysten eine Aufzeichnung der auf den Dienst gerichteten Aktivität, um Untersuchungen zu unterstützen. - **Integrieren Sie Nachweise in Ihren Workflow.** Prüfen Sie Protokolle lokal, veröffentlichen Sie strukturierte Ereignisse an RabbitMQ oder aktivieren Sie die Berichterstattung an die Beelzebub Platform. Aktivieren Sie Prometheus-Metriken mit `core.prometheus.enabled: true`, um die Laufzeitaktivität zu überwachen; standardmäßig ist der Metriken-Listener deaktiviert und bindet keinen Port. ## In Aktion erleben Sehen Sie zu, wie ein LLM-gestützter Köder auf Angreifereingaben reagiert. Die Demo veranschaulicht, wie generierte Antworten eine Interaktion über einen festen Satz von Befehls-Handlern hinaus aufrechterhalten können.  ## So funktioniert es [](docs/public/readme/how-it-works.svg) Definieren Sie Dienste und Regeln in YAML, validieren Sie die Konfiguration und starten Sie die Laufzeit. Vertrauenswürdige Go-Plugins werden in die Laufzeit kompiliert, um Dienste und Antworten zu erweitern. Jeder Dienst verarbeitet eingehende Interaktionen und gibt Nachweise über die konfigurierte Ereignisausgabe aus. LLM-Antworten erfordern einen konfigurierten Anbieter; statische Handler können ohne einen solchen ausgeführt werden. Das Framework unterstützt **SSH, HTTP, TCP, TELNET und MCP**. MCP-Köder stellen Köder-Tools bereit, die verdächtige Aufrufe während kontrollierter Agent-Tests beobachtbar machen. Sie können Nachweise für Prompt-Injection-Versuche liefern; sie garantieren jedoch nicht die Erkennung jedes Versuchs. Zu den Bereitstellungsoptionen gehören eine lokale Go-Binärdatei, Docker Compose und Kubernetes mit Helm. Siehe den [Architekturleitfaden](https://docs.beelzebub.ai/concepts/architecture) für Laufzeitverhalten und Erweiterungsgrenzen. ## Die Köder entdecken Beginnen Sie mit einer der **18 Beispielkonfigurationen** in [configurations/services](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services). Öffnen Sie eine YAML-Datei, um ihre Regeln zu prüfen und sie an Ihre Umgebung anzupassen. | Kategorie | Beispiel-Köder | | --- | --- | | Fernzugriff | [SSH](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/ssh-22.yaml) · [SSH (LLM)](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/ssh-2222.yaml) · [TELNET](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/telnet-23.yaml) · [RDP](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-3389-rdp.yaml) · [VNC](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-5900-vnc.yaml) | | Web | [WordPress (LLM-Fallback)](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/http-80.yaml) · [HTTP 401](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/http-8080.yaml) · [HTTP-Methoden](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/http-methods-8081.yaml) · [Apache-Verzeichnislabyrinth](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/http-maze-8888.yaml) | | Datenbanken & Caches | [MySQL](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-3306.yaml) · [PostgreSQL (LLM)](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-5432-postgresql-llm.yaml) · [SQL Server](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-1433-mssql.yaml) · [Redis](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-6379-redis.yaml) · [Memcached](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-11211-memcached.yaml) | | Netzwerkdienste | [SMB](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-445-smb.yaml) · [LDAP](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-389-ldap.yaml) | | IoT | [MQTT](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/tcp-1883-mqtt.yaml) | | KI-Agenten | [MCP-Köderwerkzeuge](https://github.com/beelzebub-labs/beelzebub/blob/main/configurations/services/mcp-8000.yaml) | Die Beispiele reichen von Bannern und ausgewählten Antworten bis hin zu interaktiven Austauschen. **LLM**-Beispiele erfordern einen konfigurierten Anbieter; WordPress nutzt ihn für seine Catch-all-Route. Prüfen Sie die Portzuordnungen Ihrer Bereitstellung, wenn Sie zusätzliche Beispiele aktivieren. ## Erste Schritte Sie benötigen **Git, eine Shell und Docker Engine mit Compose v2**. Verwenden Sie einen **isolierten Labor-Host** mit Autorisierung für alle konfigurierten Listener: Der Installer startet ein Bündel von Beispieldiensten, einschließlich privilegierter Ports. Unter Linux kann er **Host-Netzwerk** aktivieren; Docker bietet in diesem Modus keine Netzwerkisolierung. Verwenden Sie synthetische Anmeldedaten und lesen Sie den [Leitfaden zur Produktionssicherheit](https://docs.beelzebub.ai/operations/production-safety), bevor Sie Dienste dem Internet aussetzen. ```bash git clone https://github.com/beelzebub-labs/beelzebub.git cd beelzebub ./install.sh --docker ``` Die Plattformberichterstattung ist optional. Lassen Sie das Plattform-Token leer, wenn Sie zur Eingabe aufgefordert werden, um unabhängig zu laufen. Die Laufzeitumgebung validiert ihre Konfiguration, bevor sie Listener startet. Testen Sie den standardmäßigen HTTP-Köder und prüfen Sie dessen Protokolle: ```bash curl -i http://localhost:8080/ docker compose logs -f beelzebub ``` Erwarten Sie **`401 Unauthorized`** vom mitgelieferten HTTP-Beispiel auf Port 8080. Dies ist die konfigurierte Antwort des Köders und bestätigt, dass der Listener erreichbar ist. Wenn der Installer einen belegten Port übersprungen hat, lösen Sie den Konflikt, bevor Sie testen. Drücken Sie `Ctrl+C`, um das Mitverfolgen der Logs zu beenden. Stoppen Sie das Lab, wenn Sie fertig sind: ```bash docker compose down ``` Für eine Einrichtung mit einem einzigen Dienst oder eine andere Bereitstellungsmethode folgen Sie der [Installationsanleitung](https://docs.beelzebub.ai/getting-started/installation). ## Beelzebub Platform Das Open-Source-Framework ist die Grundlage: Stellen Sie es unabhängig bereit, betreiben und erweitern Sie es. **Beelzebub Platform** ist das verwaltete Produkt für Teams, die Täuschung über Umgebungen hinweg koordinieren und Laufzeitnachweise mit einem umfassenderen Sicherheits-Workflow verbinden müssen. Entdecken Sie die Bereitstellungs-, Untersuchungs- und Berichtsfunktionen der Plattform und erfahren Sie, wie sie zu den Anforderungen Ihres Teams passen. **[Beelzebub Platform entdecken →](https://beelzebub.ai/products/beelzebub-cloud/)** ## Ressourcen und Community - **[Dokumentation](https://docs.beelzebub.ai):** Konfiguration, Protokolle, Betrieb, Integrationen und Rezepte. - **[Plugin-Erstellung](https://docs.beelzebub.ai/plugins/authoring):** Erstellen Sie Erweiterungen mit dem öffentlichen Go SDK. Plugins werden prozessintern ausgeführt; prüfen Sie deren Quellcode und binden Sie vertrauenswürdige Versionen fest. - **[Mitwirken](https://github.com/beelzebub-labs/beelzebub/blob/main/CONTRIBUTING.md):** Tragen Sie Code, Beispiele oder Dokumentation unter dem [Verhaltenskodex](https://github.com/beelzebub-labs/beelzebub/blob/main/CODE_OF_CONDUCT.md) bei. Melden Sie Schwachstellen vertraulich über [SECURITY.md](https://github.com/beelzebub-labs/beelzebub/blob/main/SECURITY.md). Verwenden Sie für die Entwicklung die in [go.mod](https://github.com/beelzebub-labs/beelzebub/blob/main/go.mod) deklarierte Go-Version, Git und Make. Erstellen Sie mit `make build`; führen Sie `make test.unit`, `go vet ./...` und `make validate-all` aus, bevor Sie Laufzeitänderungen einreichen. Der [Entwicklungs-Workflow](https://docs.beelzebub.ai/contributing/development) behandelt Integrationstests und deren Docker-Abhängigkeiten. Vielen Dank an [JetBrains](https://jb.gg/OpenSourceSupport) für die Unterstützung der Entwicklung mit Tools im Rahmen seines Open-Source-Supportprogramms. Lizenziert unter der [GNU General Public License v3.0](https://github.com/beelzebub-labs/beelzebub/blob/main/LICENSE).