
Kit di strumenti per il pivoting di rete
PivotSuite è un toolkit di network pivoting portatile, indipendente dalla piattaforma e potente, che aiuta i Red Teamers / Penetration Tester a utilizzare un sistema compromesso per muoversi all'interno di una rete. È un'utilità standalone, che può essere utilizzata come Server o come Client.
Se l'host compromesso è direttamente accessibile (Forward Connection) dalla nostra macchina di pentest, allora possiamo eseguire PivotSuite come server sulla macchina compromessa e accedere ai diversi host della sottorete dalla nostra macchina di pentest, che erano accessibili solo dalla macchina compromessa.
Se l'host compromesso è dietro un Firewall / NAT e non è direttamente accessibile dalla nostra macchina di pentest, allora possiamo eseguire PivotSuite come server sulla macchina di pentest e PivotSuite come client sulla macchina compromessa per creare un tunnel inverso (Reverse Connection). Usando questo possiamo raggiungere diversi host della sottorete dalla nostra macchina di pentest, che erano accessibili solo dalla macchina compromessa.
Puoi scaricare l'ultima versione di PivotSuite clonando il repository Git o tramite il pacchetto PyPI.
git clone https://github.com/RedTeamOperations/PivotSuite.git
OPPURE
pip install PivotSuite
PivotSuite funziona immediatamente con Python versione 2.7.x e 3.6.x su qualsiasi piattaforma.
Scarica l'eseguibile standalone di PivotSuite dalla sezione Release di Github
https://github.com/RedTeamOperations/PivotSuite/releases
Nessuna installazione richiesta, nessun interprete Python richiesto
a. Sono richieste solo le librerie standard di Python
b. Compatibile sia con Python 2.7.x che con Python 3.6.x
c. Testato su Windows e Linux.
$ pivotsuite.py [options] SERVER-IP SERVER-PORT
Opzioni:
--version mostra il numero di versione del programma ed esce
-h, --help mostra questo messaggio di aiuto ed esce
-S, --server Esegue PivotSuite come Server
-C, --client Esegue PivotSuite come Client
- -server-ip=SERVER_IP
Indirizzo IP di ascolto/connessione del server, Default 0.0.0.0
--server-port=SERVER_PORT
Porta di ascolto/connessione del server, Default 7777
Opzioni del Server PivotSuite:
-F, --forward-connection
Traffico di rete in avanti
--server-option=SP/PF
Usa il server come Socks_Proxy(SP)/Port_Forward(PF),
Default SP
--network-protocol=T/U
Seleziona il protocollo per il Port Forwarding TCP(T)/UDP(U),
Default T
--forward-ip=Remote-Host-IP
IP dell'host remoto per il Port Forwarding
--forward-port=Remote-Host-Port
Porta dell'host remoto per il Port Forwarding
-W, --reverse-connection
Traffico di rete inverso
Opzioni del Client PivotSuite:
-O SP/PF/NE, --option=SP/PF/NE
Usa il client come Socks_Proxy(SP)/ Port_Forwarding(PF)/
Network_Enumeration(NE), Default SP
-L, --local-forward
Usa il Port Forwarding locale
-R, --remote-forward
Usa il Port Forwarding remoto
-P T/U, --protocol=T/U
Seleziona il protocollo per il Port Forwarding TCP(T)/UDP(U),
Default T
--local-ip=LOCAL_IP
IP locale per il Port Forwarding
--local-port=LOCAL_PORT
Porta locale per il Port Forwarding
--remote-ip=REMOTE_IP
IP remoto per il Port Forwarding
--remote-port=REMOTE_PORT
Porta remota per il Port Forwarding
Opzioni di autenticazione proxy NTLM:
--ntlm-proxy-ip=NTLM_PROXY_IP
Indirizzo IP del proxy NTLM
--ntlm-proxy-port=NTLM_PROXY_PORT
Porta del proxy NTLM
--username=USERNAME
Nome utente per autenticarsi con il proxy NTLM
--domain=DOMAIN Dominio per autenticarsi con il proxy NTLM
--password=PASSWORD
Password per autenticarsi con il proxy NTLM
--hashes=HASHES Hash per autenticarsi al posto della password.
Formato - LMHASH:NTHASH
SE l'host compromesso è direttamente accessibile dalla nostra macchina di pentest.
Quindi esegui PivotSuite come server sulla macchina compromessa secondo le nostre esigenze:
a. Port Forwarding dinamico (Server proxy Socks5) sulla macchina compromessa:
$ python pivotsuite.py -S -F --server-option SP --server-ip IP --server-port PORT
b. Port Forwarding singolo (Relay TCP/UDP) sulla macchina compromessa:
$ python pivotsuite.py -S -F --server-option PF --network-protocol T/U --remote-ip IP --remote-port PORT
--server-ip IP (local-ip) --server-port PORT (local-port)
SE l'host compromesso è dietro un Firewall/NAT e non è direttamente accessibile dalla nostra macchina di pentest.
Quindi esegui PivotSuite come Server sulla macchina di pentest e PivotSuite come Client sulla macchina compromessa.
i. Esegui PivotSuite come Server sulla macchina di pentest:
$ python pivotsute.py -S -W
ii. Esegui PivotSuite come Client sulla macchina compromessa secondo le nostre esigenze:
a. Port Forwarding dinamico (Server proxy Socks5) sulla macchina di pentest: