
Strumento proxy multi-hop per penetration tester che consente il routing del traffico attraverso più nodi, tunneling SOCKS5/SSH, port forwarding, shell remota e comunicazione crittografata tra nodi.

Stowaway è uno strumento proxy multi-livello sviluppato in Go, progettato specificamente per i penetration tester.
Gli utenti possono utilizzare questo programma per instradare il traffico esterno attraverso più nodi proxy verso la rete interna, bypassando le restrizioni di accesso alla rete, costruendo una rete di nodi ad albero e gestendola facilmente.
Grazie a tutti per le stelle, e benvenuti a segnalare problemi e bug dopo l'uso 😘
Si prega di leggere attentamente le istruzioni e le note alla fine del documento prima di utilizzarlo.
Questo progetto è destinato esclusivamente alla ricerca sulla sicurezza informatica e a scopi didattici. È severamente vietato utilizzarlo per scopi illegali. Assicurati di avere l'autorizzazione esplicita del sistema di destinazione prima di eseguire qualsiasi test con questo strumento e di rispettare rigorosamente le leggi e i regolamenti pertinenti del tuo paese/regione. Qualsiasi conseguenza diretta o indiretta derivante dall'uso di questo strumento (incluse ma non limitate a: perdita di dati, danni al sistema, responsabilità legali) è a carico dell'utente. L'autore del progetto non si assume alcuna responsabilità per abusi o responsabilità legali derivanti da tali abusi. L'utilizzo di questo strumento implica che hai letto, compreso e accettato tutti i termini di questa dichiarazione di esclusione di responsabilità.
make per compilare direttamente il programma completo per più piattaforme, oppure consulta il Makefile per compilare un programma specificoStowaway include due ruoli:
admin: il controller principale usato dal penetration testeragent: il nodo controllato distribuito dal penetration testerI comandi seguenti avviano rapidamente l'istanza più semplice di Stowaway:
./stowaway_admin -l 9999./stowaway_agent -c <IP_di_stowaway_admin>:9999Parametri:
-l Indirizzo di ascolto in modalità passiva [ip]:<porta>
-s Chiave di crittografia della comunicazione tra nodi (admin && agent devono corrispondere)
-c Indirizzo del nodo di destinazione in modalità attiva
--socks5-proxy Indirizzo del server proxy SOCKS5
--socks5-proxyu Nome utente del server proxy SOCKS5 (opzionale)
--socks5-proxyp Password del server proxy SOCKS5 (opzionale)
--http-proxy Indirizzo del server proxy HTTP
--down Protocollo downstream, default: traffico TCP grezzo, opzioni: HTTP/WS
--tls-enable Abilita TLS per la comunicazione tra nodi. Se abilitato, la crittografia AES viene disattivata
--domain Specifica il dominio TLS SNI/WebSocket, se vuoto, default: indirizzo del nodo di destinazione
--heartbeat Abilita i pacchetti heartbeat
Parametri:
-l Indirizzo di ascolto in modalità passiva [ip]:<porta>
-s Chiave di crittografia della comunicazione tra nodi
-c Indirizzo del nodo di destinazione in modalità attiva
--socks5-proxy Indirizzo del server proxy SOCKS5
--socks5-proxyu Nome utente del server proxy SOCKS5 (opzionale)
--socks5-proxyp Password del server proxy SOCKS5 (opzionale)
--http-proxy Indirizzo del server proxy HTTP
--reconnect Intervallo di riconnessione in secondi
--rehost Indirizzo IP da riutilizzare per il riutilizzo delle porte
--report Porta da riutilizzare per il riutilizzo delle porte
--up Protocollo upstream, default: traffico TCP grezzo, opzioni: HTTP/WS
--down Protocollo downstream, default: traffico TCP grezzo, opzioni: HTTP/WS
--cs Codifica della shell della piattaforma in esecuzione, default: utf-8, opzione: gbk
--tls-enable Abilita TLS per la comunicazione tra nodi. Se abilitato, la crittografia AES viene disattivata
--domain Specifica il dominio TLS SNI/WebSocket, se vuoto, default: indirizzo del nodo di destinazione
Questo parametro ha lo stesso uso per admin && agent, applicabile solo in modalità passiva
Se non si specifica un indirizzo IP, l'ascolto avviene su 0.0.0.0
admin: ./stowaway_admin -l 9999 oppure ./stowaway_admin -l 127.0.0.1:9999
agent: ./stowaway_agent -l 9999 oppure ./stowaway_agent -l 127.0.0.1:9999
Questo parametro ha lo stesso uso per admin && agent, applicabile sia in modalità attiva che passiva
Opzionale: se omesso, la comunicazione non sarà crittografata; altrimenti verrà crittografata con la chiave fornita dall'utente
admin: ./stowaway_admin -l 9999 -s 123
agent: ./stowaway_agent -l 9999 -s 123
Questo parametro ha lo stesso uso per admin && agent, applicabile solo in modalità attiva
Rappresenta l'indirizzo del nodo a cui connettersi
admin: ./stowaway_admin -c 127.0.0.1:9999
agent: ./stowaway_agent -c 127.0.0.1:9999
Questi quattro parametri hanno lo stesso uso per admin && agent, applicabili solo in modalità attiva
--socks5-proxy specifica l'indirizzo del server proxy SOCKS5; --socks5-proxyu e --socks5-proxyp sono opzionali
--http-proxy specifica l'indirizzo del server proxy HTTP, utilizzato come il SOCKS5
Senza nome utente/password:
admin: ./stowaway_admin -c 127.0.0.1:9999 --socks5-proxy xxx.xxx.xxx.xxx
agent: ./stowaway_agent -c 127.0.0.1:9999 --socks5-proxy xxx.xxx.xxx.xxx
Con nome utente/password:
admin: ./stowaway_admin -c 127.0.0.1:9999 --socks5-proxy xxx.xxx.xxx.xxx --socks5-proxyu xxx --socks5-proxyp xxx
agent: ./stowaway_agent -c 127.0.0.1:9999 --socks5-proxy xxx.xxx.xxx.xxx --socks5-proxyu xxx --socks5-proxyp xxx
Questi due parametri hanno lo stesso uso per admin && agent, applicabili sia in modalità attiva che passiva
Nota: admin non ha il parametro --up