
VPN mesh peer-to-peer crittografata per la forensic mobile remota, che abilita l'acquisizione wireless tramite ADB e libimobiledevice, il monitoraggio della rete e il rilevamento delle intrusioni attraverso NAT e firewall.
MESH è uno strumento di rete per supportare l'acquisizione forense logica remota su dispositivi mobili
MESH offre agli analisti un percorso diretto e crittografato verso i dispositivi mobili per il debug wireless, il monitoraggio di rete e l'acquisizione forense, anche quando tali dispositivi si trovano dietro NAT, firewall o reti mobili restrittive. Costruisce un overlay privato in modo che un dispositivo remoto si comporti come se fosse sulla stessa sottorete locale. Non richiede server VPN centrali, nessun port forwarding e nessuna infrastruttura permanente da mantenere o difendere. Ciò consente un monitoraggio di rete e un'acquisizione remota, semplici e senza interruzioni, via internet, utilizzando strumenti come MVT e AndroidQF.
Le mesh sono effimere e controllate dall'analista: porta i dispositivi online, raccogli i dati, poi smantella la rete. Non rimane nulla in esecuzione, a supporto dell'evitamento della profilazione dell'attività.
[!IMPORTANT] Alpha pubblica: Attualmente in alpha pubblica e in fase di sviluppo attivo. È stata completata una penetration test completa da parte di terzi e abbiamo risolto tutte le vulnerabilità principali. Le cose potrebbero cambiare e sono previste modifiche che potrebbero rompere la compatibilità. Attualmente richiede un certo livello di competenza tecnica. Segnala bug o problemi di sicurezza tramite GitHub Issues.
Per la documentazione completa:
https://docs.meshforensics.org/
docker compose, non il legacy docker-compose). Istruzioni di installazione.sudo snap install task --classicbrew install go-task[!NOTE] La maggior parte delle operazioni runtime funziona con semplici
docker compose, ma le attività di configurazione interattiva (gestione di.env, template di configurazione, rotazione delle chiavi di autenticazione) richiedono go-task.
git clone https://github.com/BARGHEST-ngo/mesh.git
cd MESH
task build
task controlPlane
task controlPlane ti guida attraverso la configurazione in modo interattivo e avvia tutti i servizi richiesti. Per la maggior parte degli utenti, selezionare Effimero con un dominio Automatico è la scelta consigliata: non richiede alcuna configurazione di server o DNS.
Scegli un tipo di distribuzione. Un piano di controllo effimero viene eseguito sulla tua workstation ed è accessibile via internet tramite un tunnel sicuro. Un piano di controllo persistente viene eseguito su un server dedicato con accesso internet che gestisci tu.
Scegli un dominio. Selezionando Automatico, MESH provvede un indirizzo HTTPS pubblico per te. Seleziona Manuale se vuoi utilizzare il tuo dominio.
Inserisci la chiave API. Se hai scelto un dominio Automatico, ti verrà chiesto di inserire una chiave API. Ti sarà fornita dal team di Barghest; contattaci per richiedere l'accesso.
Conferma la configurazione. Rivedi le impostazioni generate prima che MESH venga avviato.
Se queste impostazioni non sono corrette, o se la configurazione è stata interrotta, elimina .env ed esegui di nuovo task controlPlane per ricominciare.
CONTROL_PLANE_TYPE=Ephemeral
PROXY_DOMAIN_TYPE=Automatic
MESH_SUBDOMAIN=<slug casuale di 10 caratteri>
FRP_AUTH_TOKEN=<token segreto>
CONTROL_PLANE_URL=https://<slug>.tunnels.meshforensics.app
LOGIN_URL=https://<slug>.tunnels.meshforensics.app
I contenitori vengono avviati e viene generata una chiave API. Una volta che tutti i servizi sono funzionanti, MESH stampa una chiave API monouso per accedere all'interfaccia web.
Chiave API del piano di controllo (inseriscila nell'interfaccia web per accedere):
<CHIAVE API SEGRETA>
Naviga all'URL del tuo piano di controllo e inserisci la chiave API quando richiesto per accedere.
https://<slug>.tunnels.meshforensics.app
L'interfaccia web viene servita su HTTPS con un certificato emesso automaticamente da Let's Encrypt.
[!IMPORTANT] L'ACL predefinita consente ai nodi in ciascuna rete di comunicare tra loro. Le distribuzioni in produzione dovrebbero utilizzare policy restrittive. Modificale tramite la scheda ACL.
La tua rete MESH è ora pronta per accettare nodi.
Consulta la documentazione per la registrazione dei nodi e i flussi di lavoro forensi.
task down distrugge la rete MESH, disconnettendo tutti gli utenti, e se hai scelto una distribuzione Effimera con un dominio Automatico, questi e tutte le tracce vengono rimossi e non possono più essere accessibili.
MESH è un fork fortemente modificato del protocollo Tailscale, ma non richiede l'infrastruttura di Tailscale.
Per stabilire un canale peer-to-peer crittografato end-to-end, viene utilizzato l'UDP hole punching. Se UDP non è disponibile o è bloccato, si fallbacka a relay HTTPS crittografati end-to-end chiamati relay DERP. I server del protocollo DERP DERP (Designated Encrypted Relay for Packets) inoltrano il traffico tra i nodi quando una connessione diretta peer-to-peer non può essere stabilita.
MESH segue lo stesso modello. Per impostazione predefinita, se un operatore non ha configurato la propria infrastruttura DERP (che può essere realizzata utilizzando il piano di controllo di MESH), MESH utilizza i server DERP pubblici di Tailscale per garantire la connettività, specialmente in ambienti di rete restrittivi. Tuttavia, MESH non richiede l'infrastruttura di Tailscale: gli operatori possono distribuire e utilizzare i propri server DERP tramite il piano di controllo, che include un'implementazione DERP integrata. Ciò rende MESH completamente auto-ospitabile quando desiderato.
I server DERP agiscono puramente come relay di trasporto. Facilitano la connettività tra i dispositivi ma non hanno visibilità sui dati scambiati, che rimangono crittografati end-to-end.
I miglioramenti includono (ma non sono limitati a):
Il piano di controllo è responsabile solo della scoperta dei peer e dello scambio delle chiavi. Il traffico forense scorre direttamente tra gli endpoint quando possibile.
Le architetture VPN tradizionali e hub-and-spoke introducono:
MESH separa il coordinamento dal trasporto dei dati:
MESH è ottimizzato per ambienti transienti e ad alto rischio, piuttosto che per reti aziendali permanenti.
android-client — APK endpoint Androidcontrol-plane — Server di coordinamentoanalyst — Client CLI per analistiFlusso di lavoro:
mesh-analyst-client.main.MESH è concesso in licenza sotto GNU Affero General Public License v3.0 o successiva (AGPL-3.0-or-later).
Parti di questo software sono un'opera derivata di Tailscale, che è concesso in licenza sotto BSD 3-Clause License. Il copyright originale di Tailscale e la licenza sono preservati in conformità con i requisiti della BSD-3-Clause. Il codice di AmneziaWG/Wireguard è concesso sotto licenza MIT. Vedi .licenses/ per i dettagli.
Tutte le modifiche e aggiunte di BARGHEST sono Copyright (c) BARGHEST e concesse sotto AGPL-3.0-or-later.
WireGuard è un marchio registrato di Jason A. Donenfeld.