
Open-Source-Täuschungsplattform, die jede Linux-Maschine in eine hochsignalisierende Kanarienvogel-Falle verwandelt. Setzen Sie Tripwire-Sensoren auf Dateien, Ports und Netzwerkdienste ein, um Eindringlinge mit sofortiger Forensik und Push-Benachrichtigungen zu erkennen.
HoneyWire ist ein leichtgewichtiger, verteilter High-Signal-Sicherheits-Frühwarnsystem-Baukasten, der für interne Netzwerke entwickelt wurde. Er nutzt seine Architektur und UX, um den Aufbau eines neuen Cyber-Canary-Servers oder die Bereitstellung von HoneyWires auf bestehenden Servern unglaublich einfach zu machen. Mithilfe von Täuschungstechnologie ersetzt es den „Vergrößerungsglas“-Ansatz herkömmlicher SIEMs, die Analysten oft in False Positives ertränken, indem legitimer Datenverkehr mit einem High-Fidelity-Tripwire-Modell überwacht wird.
Platziere einen Sensor genau dort, wo du ihn haben möchtest. Wenn er auslöst, hast du einen Eindringling.
Richte mehrere ein und du bekommst ein ziemlich klares Bild von der Lateral Movement eines Eindringlings. Kein Tuning, kein Rauschen, nur sofortige Forensik. Wenn legitime automatisierte Sicherheitsscanner HoneyWires auslösen, kannst du sie einfach über die Einstellungen des Hubs auf die Whitelist setzen.
Hinweis: Wenn du deinen Sensor mit den offiziellen HoneyWire-SDKs baust, werden diese JSON-Formatierung und -Zustellung automatisch für dich übernommen.
Die wahre Stärke von HoneyWire liegt darin, dass Hub und Wizard vollständig sensor-agnostisch sind. Du bist nicht auf die enthaltenen offiziellen Sensoren beschränkt.
Indem du dich an den HoneyWire-Ereignisstandard V2.0 hältst, kannst du ein Skript in jeder Sprache (Bash, Go, Rust, Python) schreiben, um alles zu überwachen, und die Sentinel-Benutzeroberfläche wird deine forensischen Daten dynamisch parsen, syntax-highlighten und rendern.
Ob es sich um eine Deep-Packet-Inspection-Engine (DPI), eine DNS-Sinkhole, ein Canary-Token in einer PDF-Datei, eine E-Mail-Honeypot oder einen einfachen TCP-Port-Tripwire handelt – sende einfach die JSON-Payload des Universellen Ereignisstandards an den Hub.
HoneyWire ist in vier unabhängige Microservices aufgeteilt:
/Hub: Das zentrale Gehirn. Eine reine Go-Binärdatei mit eingebetteter SQLite-Datenbank und dem Vue.js-Dashboard. Sie läuft als Nicht-Root-Benutzer in einem Distroless-Container und mountet Daten sicher auf ein dediziertes Volume./Sensors: Die Decoy-Knoten. Statisch gelinkte Go-Binärdateien, die auf verwundbaren Ports lauschen, Angreifer anlocken und Eindringdaten sicher an den Hub zurücksenden./SDKs: Offizielle Bibliotheken (wie sdk-go), die die sichere Hub-Kommunikation übernehmen, damit Community-Entwickler problemlos neue Sensoren bauen können./wizard: Setup-Wizard-CLI-Tool zur Automatisierung von Operator-Aufgaben wie Erkennung, Bereitstellung und Test von HoneyWires.Die vollständige Architekturdokumentation ansehen Das Benutzer-Operationshandbuch lesen
Die Bereitstellung des HoneyWire-Hubs dauert mit unseren vorgefertigten GitHub-Container-Images weniger als 60 Sekunden.
Erstelle ein neues Verzeichnis auf deinem Server, erstelle eine docker-compose.yml-Datei und füge Folgendes ein:
services:
# 1. DER BERECHTIGUNGS-FIXER: Wird einmal ausgeführt, um sicherzustellen, dass der Hub in das Daten-Volume schreiben kann
permission-fixer:
image: alpine:latest
container_name: honeywire-permission-fixer
command: sh -c "chown -R 65532:65532 /data"
volumes:
- ./honeywire_data:/data
# 2. DER HUB: Das zentrale Go-basierte Dashboard und die API
hub:
image: ghcr.io/andreicscs/honeywire-hub:latest
container_name: honeywire-hub
restart: unless-stopped
ports:
- "8080:8080"
volumes:
- ./honeywire_data:/data
depends_on:
permission-fixer:
condition: service_completed_successfully
# Strenges Sicherheits-Sandboxing
user: "65532:65532"
read_only: true
cap_drop: ["ALL"]
security_opt: ["no-new-privileges:true"]
environment:
- HW_ENV=development # Erforderlich, wenn kein HTTPS verwendet wird, sonst wird das Cookie mit dem Secure-Flag gesetzt. In der Produktion wird dringend empfohlen, dies zu entfernen und hinter einem Reverse-Proxy mit HTTPS zu betreiben
- HW_PORT=8080
- HW_DB_PATH=/data/honeywire.db
# Optional: Dashboard-Passwort fest codieren (deaktiviert die Passwort-Zurücksetzungsfunktion der Benutzeroberfläche)
# - HW_DASHBOARD_PASSWORD=admin
Starte den Hub:
docker compose up -d
Navigiere in deinem Browser zu http://<deine-server-ip>:HW_PORT. Du wirst vom Bildschirm Sentinel initialisieren begrüßt.
honeywire apply auf dem Node aus, um den gewünschten Zustand abzugleichen, oder führe honeywire discover aus, damit der Setup-Wizard automatisch scannt und HoneyWires basierend auf der Umgebung vorschlägt.Sobald deine Container laufen, sollte der Tarpit-Sensor innerhalb von 30 Sekunden als ONLINE erscheinen.
Führe honeywire firedrill aus, damit die HoneyWires ein Mock-Ereignis an den Hub senden, um die Konnektivität zu testen.
Hinweis: Für einen tieferen Einblick in die Verwaltung von Nodes, das Aktualisieren von Sensoren und die Handhabung von Rollbacks siehe das Benutzer-Operationshandbuch.
Node Key für die Kommunikation mit dem Hub verwenden. Der Hub lehnt alle Payloads mit abweichenden oder ungültigen Schlüsseln ab.gcr.io/distroless/static-debian12:nonroot. Wir befolgen das Prinzip der geringsten Privilegien, um sicherzustellen, dass bei einer Kompromittierung eines Containers der Schaden begrenzt bleibt.net/http (Standardbibliothek), SQLite (ModernC Pure Go Treiber)HoneyWire entwickelt sich aktiv zu einer vollständigen GitOps-gesteuerten Enterprise-Deception-Plattform.
Hub-Endpoint:
GET /api/v2/version → gibt { "version": "v2.x.x" } zurück