Torna agli aggiornamenti
New releaseSep 3, 2026

HoneyWire hub/v2.1.0

Piattaforma open-source di deception che trasforma qualsiasi macchina Linux in una canary ad alto segnale. Distribuisci sensori tripwire su file, porte e servizi di rete per rilevare intrusi con analisi forensi istantanee e notifiche push.

Condividi

HoneyWire Logo

HoneyWire

Latest Release License: GPLv3 Risky Bulletin Docker Native OpenSSF Best Practices

📋 Indice dei contenuti

Panoramica

HoneyWire è un costruttore di sistemi di allarme preventivo di sicurezza distribuiti ad alto segnale, leggero, progettato per reti interne. Sfrutta la sua architettura e UX per rendere estremamente semplice la creazione di un nuovo server Cyber Canary o la distribuzione di HoneyWires su server esistenti. Utilizzando la tecnologia di deception, sostituisce l'approccio della "lente d'ingrandimento" dei tradizionali SIEM, che spesso sommergono gli analisti di falsi positivi sorvegliando il traffico legittimo, con un modello di Tripwire ad alta fedeltà.

Posiziona un sensore esattamente dove vuoi. Se scatta, hai un intruso.

  • Tripwire di produzione: Fanno scattare l'allarme quando i servizi attivi vengono sondati in modi che non dovrebbero. Posizionando un sensore su un file sensibile che non dovrebbe mai essere letto o su una porta di servizio che non dovrebbe mai essere accessibile, identifichi gli intrusi dalla loro deviazione dal "percorso autorizzato".
  • Deception sintetica: Distribuisci esche come l'ICMP Canary o il Network Scan Detector per fungere da decoy. Poiché questi sensori non forniscono alcun valore commerciale legittimo, il 100% del loro traffico è intelligence utilizzabile.

Configurane diversi e inizierai ad avere un'idea abbastanza chiara del movimento laterale di un intruso. Nessuna regolazione, nessun rumore, solo forensics immediata. Se hai scanner di sicurezza automatizzati legittimi che fanno scattare gli HoneyWires, basta inserirli nella whitelist dalle impostazioni dell'Hub.

Dimostrazione

🔌 Lo Standard Universale degli Eventi (Porta il tuo sensore)

Sensori della community

Nota: Se costruisci il tuo sensore utilizzando gli SDK ufficiali di HoneyWire, la formattazione JSON e la consegna vengono gestite automaticamente per te.

Il vero potere di HoneyWire è che l'Hub e il Wizard sono completamente agnostici rispetto ai sensori. Non sei limitato ai sensori ufficiali inclusi.

Aderendo allo Standard Universale degli Eventi HoneyWire V2.0, puoi scrivere uno script in qualsiasi linguaggio (Bash, Go, Rust, Python) per monitorare qualsiasi cosa, e l'interfaccia Sentinel analizzerà dinamicamente, evidenzierà la sintassi e renderizzerà i tuoi dati forensi.

Che si tratti di un motore di Deep Packet Inspection (DPI), un DNS sinkhole, un Canary Token incorporato in un PDF, un Email Honeypot o un semplice TCP Port Tripwire, basta inviare il payload JSON dello Standard Universale degli Eventi all'Hub.

Visualizza il contratto completo dei dati degli eventi qui

Funzionalità

  • L'interfaccia Sentinel Hub: Una dashboard completamente reattiva basata su Vue 3, con ispezione dinamica dei payload forensi, distribuzione e gestione di Nodes e Sensors, inclusi gli aggiornamenti dei sensori, direttamente dall'interfaccia.
    • Notifiche push universali: Integrazione nativa, senza dipendenze, per instradare gli avvisi critici verso Discord, Slack, Ntfy e Gotify.
    • Integrazione SIEM enterprise: Inoltro nativo Syslog RFC5424 (TCP/UDP) per inviare senza soluzione di continuità telemetria strutturata a Splunk, Elastic, Wazuh o Vector.
  • Il Setup Wizard: Uno strumento di automazione per distribuzione e test, sviluppato esplicitamente per non essere un agente in esecuzione 24/7. È semplicemente uno strumento CLI TUI che automatizza le attività dell'operatore come l'applicazione e la riconciliazione dello stato desiderato dell'Hub per un dato Node, gestendo automaticamente configurazione, distribuzione e rollback in caso di distribuzioni fallite.
  • Suite di HoneyWires ufficiali: Include il TCP Tarpit nativo, il Web Router Decoy, il File Canary (FIM), l'ICMP Canary e il Network Scan Detector.

Architettura

HoneyWire è suddiviso in quattro microservizi indipendenti:

  1. /Hub: Il cervello centrale. Un binario Go puro che esegue un database SQLite incorporato e la dashboard Vue.js. Viene eseguito come utente non-root all'interno di un contenitore Distroless, montando i dati in modo sicuro su un volume dedicato.
  2. /Sensors: I nodi decoy. Binari Go collegati staticamente che ascoltano su porte vulnerabili, intrappolano gli aggressori e inviano in modo sicuro i dati di intrusione all'Hub.
  3. /SDKs: Librerie ufficiali (come sdk-go) che gestiscono la comunicazione sicura con l'Hub, così gli sviluppatori della community possono creare facilmente nuovi sensori.
  4. /wizard: Strumento CLI del setup wizard per automatizzare le attività dell'operatore come scoperta, distribuzione e test degli HoneyWires.

Consulta la documentazione completa sull'architettura Leggi la Guida alle operazioni utente

🚀 Guida rapida

La distribuzione dell'Hub HoneyWire richiede meno di 60 secondi utilizzando le nostre immagini precompilate del Container GitHub.

1. Distribuisci l'Hub

Crea una nuova directory sul tuo server, crea un file docker-compose.yml e incolla quanto segue:

services:
  # 1. IL CORRETTORE DI PERMESSI: Viene eseguito una volta per garantire che l'Hub possa scrivere sul volume dati
  permission-fixer:
    image: alpine:latest
    container_name: honeywire-permission-fixer
    command: sh -c "chown -R 65532:65532 /data"
    volumes:
      - ./honeywire_data:/data

  # 2. L'HUB: La dashboard e API centrale basata su Go
  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
        
    # Sandbox di sicurezza rigorosa
    user: "65532:65532"
    read_only: true
    cap_drop: ["ALL"]
    security_opt: ["no-new-privileges:true"]
    
    environment:
      - HW_ENV=development # Richiesto se non si utilizza HTTPS, altrimenti il cookie avrà il flag secure impostato; in produzione è altamente consigliato rimuoverlo ed eseguire questo dietro un reverse proxy con https
      - HW_PORT=8080
      - HW_DB_PATH=/data/honeywire.db
      # Opzionale: Imposta la password della dashboard (disabilita la funzione di reset password dell'interfaccia)
      # - HW_DASHBOARD_PASSWORD=admin

Avvia l'Hub:

docker compose up -d

2. Inizializza il sistema

Naviga su http://<ip-del-tuo-server>:HW_PORT nel tuo browser. Verrai accolto dalla schermata Initialize Sentinel.

  1. Crea la tua Master Password.
  2. Verifica l'URL dell'endpoint dell'Hub (l'IP/URL dove i sensori raggiungeranno l'Hub).
  3. Clicca su "Initialize Hub".

3. Distribuisci i sensori

  1. Crea un nuovo Node e incolla il comando fornito per installare e collegare il Setup Wizard all'Hub
  2. Installa i sensori direttamente dall'Hub e poi esegui honeywire apply sul nodo per riconciliare lo stato desiderato, oppure esegui honeywire discover per lasciare che il setup wizard scansiona automaticamente e suggerisca HoneyWires in base all'ambiente.

4. Test degli HoneyWires

Una volta che i tuoi contenitori sono attivi, il sensore Tarpit dovrebbe apparire come ONLINE entro 30 secondi. Esegui honeywire firedrill per far inviare agli HoneyWires un evento fittizio all'Hub per testare la connettività.

Nota: Per un approfondimento sulla gestione dei nodi, l'aggiornamento dei sensori e la gestione dei rollback, consulta la Guida alle operazioni utente.


Note di sicurezza

  • Modello di minaccia: Per un approfondimento sui confini di fiducia, i rischi dell'architettura e le regole di sandboxing, consulta THREATMODEL.md.
  • Chiavi dei nodi: Assicurati che i tuoi sensori utilizzino la loro Node Key univoca per comunicare con l'Hub. L'Hub rifiuterà qualsiasi payload con chiavi non corrispondenti o non valide.
  • Armamento del sistema: Puoi attivare/disattivare il pulsante "System Armed" nell'interfaccia dell'Hub per disabilitare temporaneamente le notifiche push durante la manutenzione della rete interna o la scansione delle vulnerabilità.
  • Indurimento dei contenitori: HoneyWire utilizza gcr.io/distroless/static-debian12:nonroot. Seguiamo il principio del minimo privilegio per garantire che se un contenitore viene compromesso, l'esplosione sia contenuta.
  • Distribuzione distribuita: È altamente consigliato eseguire l'Hub e i suoi sensori su macchine fisiche o virtuali separate. Se un aggressore compromette un nodo sensore, non dovrebbe avere accesso locale immediato all'Hub centralizzato.
  • ⚠️ Crittografia (HTTPS): Servi sempre l'interfaccia Web e l'API dell'Hub su HTTPS utilizzando un reverse proxy (come Nginx, Caddy o Traefik) in produzione. In caso contrario, esponi la password della dashboard e le chiavi dei nodi allo sniffing di rete.

Stack tecnologico

  • Backend: Go 1.25, net/http (Libreria standard), SQLite (Driver Go puro ModernC)
  • Frontend: Vue 3 (Composition API), TailwindCSS, Chart.js
  • Infrastruttura: Docker, Docker Compose v5.0.0+

Roadmap e sviluppo

HoneyWire si sta evolvendo attivamente verso una piattaforma di deception enterprise completa guidata da GitOps.

  • Visualizza la Roadmap pubblica per vedere cosa stiamo costruendo attualmente (funzionalità v2.2.0, revisione IaC v3.0.0 e prossimi benchmark SIEM).
  • Vuoi influenzare la roadmap? Facciamo molto affidamento sul feedback della community. Vai alle nostre Discussioni GitHub per votare sulle funzionalità imminenti, proporre nuovi tipi di decoy o condividere come usi HoneyWire nel tuo laboratorio.

Versioning e riferimento API

  • Le versioni di HoneyWire sono gestite tramite Git Tags.
  • Endpoint Hub:
    • GET /api/v2/version → restituisce { "version": "v2.x.x" }
  • File della documentazione API: API.md con riferimento completo alle route backend e payload di esempio.

Categorie