
Herramienta de proxy de múltiples saltos para pentesters que permite el enrutamiento de tráfico a través de múltiples nodos, túneles SOCKS5/SSH, reenvío de puertos, shell remota y comunicación cifrada entre nodos.

Stowaway es una herramienta de proxy multinivel escrita en Go, diseñada específicamente para profesionales de pruebas de penetración.
Los usuarios pueden usar este programa para enrutar el tráfico externo a través de múltiples nodos hacia la red interna, superar las restricciones de acceso a la red interna, construir una red de nodos en forma de árbol y gestionar fácilmente las funciones.
Gracias a todos por sus estrellas. También damos la bienvenida a preguntas y errores después de usar el programa 😘
También, asegúrese de leer detenidamente las instrucciones de uso y las notas al final antes de usar.
Este proyecto está destinado únicamente a la investigación y enseñanza de seguridad en redes. Está estrictamente prohibido su uso con fines ilegales. Asegúrese de obtener autorización explícita del sistema objetivo antes de realizar cualquier prueba con esta herramienta, y cumpla estrictamente con las leyes y regulaciones pertinentes de su país/región. Cualquier consecuencia directa o indirecta derivada del uso de esta herramienta (incluyendo, pero no limitado a: pérdida de datos, daños del sistema, responsabilidad legal) es responsabilidad exclusiva del usuario. El autor de este proyecto no se hace responsable de ningún uso indebido ni de las responsabilidades legales que pueda conllevar. El uso de esta herramienta implica que ha leído, comprendido y aceptado todo el contenido de este descargo de responsabilidad.
Stowaway incluye dos roles:
admin: el controlador principal utilizado por el probador de penetración.agent: el agente controlado desplegado por el probador de penetración.Los siguientes comandos inician rápidamente la instancia más simple de Stowaway.
./stowaway_admin -l 9999./stowaway_agent -c <IP de stowaway_admin>:9999Parámetros:
-l Dirección de escucha en modo pasivo [ip]:<puerto>
-s Clave de cifrado de comunicación entre nodos; todos los nodos (admin && agent) deben ser iguales.
-c Dirección del nodo objetivo en modo activo.
--socks5-proxy Dirección del servidor proxy SOCKS5.
--socks5-proxyu Nombre de usuario del servidor proxy SOCKS5 (opcional).
--socks5-proxyp Contraseña del servidor proxy SOCKS5 (opcional).
--http-proxy Dirección del servidor proxy HTTP.
--down Tipo de protocolo downstream; por defecto tráfico TCP puro, opcional HTTP/WS.
--tls-enable Habilita TLS para la comunicación entre nodos; al habilitar TLS, se deshabilitará el cifrado AES.
--domain Especifica el dominio SNI TLS/WebSocket; si está vacío, por defecto es la dirección del nodo objetivo.
--heartbeat Habilita paquetes de heartbeat.
Parámetros:
-l Dirección de escucha en modo pasivo [ip]:<puerto>
-s Clave de cifrado de comunicación entre nodos.
-c Dirección del nodo objetivo en modo activo.
--socks5-proxy Dirección del servidor proxy SOCKS5.
--socks5-proxyu Nombre de usuario del servidor proxy SOCKS5 (opcional).
--socks5-proxyp Contraseña del servidor proxy SOCKS5 (opcional).
--http-proxy Dirección del servidor proxy HTTP.
--reconnect Intervalo de reconexión en segundos.
--rehost Dirección IP para reutilización de puertos.
--report Puerto para reutilización de puertos.
--up Tipo de protocolo upstream; por defecto tráfico TCP puro, opcional HTTP/WS.
--down Tipo de protocolo downstream; por defecto tráfico TCP puro, opcional HTTP/WS.
--cs Codificación de shell de la plataforma de ejecución; por defecto utf-8, opcional gbk.
--tls-enable Habilita TLS para la comunicación entre nodos; al habilitar TLS, se deshabilitará el cifrado AES.
--domain Especifica el dominio TLS SNI/WebSocket; si está vacío, por defecto es la dirección del nodo objetivo.
Este parámetro se usa igual en admin y agent, solo en modo pasivo.
Si no se especifica la IP, por defecto escucha en 0.0.0.0.
admin: ./stowaway_admin -l 9999 o ./stowaway_admin -l 127.0.0.1:9999
agent: ./stowaway_agent -l 9999 o ./stowaway_agent -l 127.0.0.1:9999
Este parámetro se usa igual en admin y agent, tanto en modo activo como pasivo.
Opcional. Si está vacío, la comunicación no está cifrada; de lo contrario, la comunicación se cifra con la clave proporcionada por el usuario.
admin: ./stowaway_admin -l 9999 -s 123
agent: ./stowaway_agent -l 9999 -s 123
Este parámetro se usa igual en admin y agent, solo en modo activo.
Representa la dirección del nodo al que se desea conectar.
admin: ./stowaway_admin -c 127.0.0.1:9999
agent: ./stowaway_agent -c 127.0.0.1:9999
Estos cuatro parámetros se usan igual en admin y agent, solo en modo activo.
--socks5-proxy representa la dirección del servidor proxy SOCKS5; --socks5-proxyu y --socks5-proxyp son opcionales.
--http-proxy representa la dirección del servidor proxy HTTP, se usa de la misma manera que SOCKS5.
Sin nombre de usuario y contraseña:
admin: ./stowaway_admin -c 127.0.0.1:9999 --socks5-proxy xxx.xxx.xxx.xxx
agent: ./stowaway_agent -c 127.0.0.1:9999 --socks5-proxy xxx.xxx.xxx.xxx
Con nombre de usuario y contraseña:
admin: ./stowaway_admin -c 127.0.0.1:9999 --socks5-proxy xxx.xxx.xxx.xxx --socks5-proxyu xxx --socks5-proxyp xxx
agent: ./stowaway_agent -c 127.0.0.1:9999 --socks5-proxy xxx.xxx.xxx.xxx --socks5-proxyu xxx --socks5-proxyp xxx
Estos dos parámetros se usan igual en admin y agent, tanto en modo activo como pasivo.
Pero tenga en cuenta que admin no tiene el parámetro --up.
Estos parámetros son opcionales. Si están vacíos, el tráfico upstream/downstream es TCP puro.
Si desea que el tráfico upstream/downstream sea HTTP/WS, configure estos parámetros como http o ws respectivamente.
admin: ./stowaway_admin -c 127.0.0.1:9999 --down ws
agent: ./stowaway_agent -c 127.0.0.1:9999 --up ws o ./stowaway_agent -c 127.0.0.1:9999 --up ws --down ws
Además, tenga en cuenta dos puntos:
Primero, cuando configure el tráfico upstream/downstream de un nodo como TCP/HTTP/WS, el tráfico downstream/upstream del nodo padre/hijo debe ser consistente. Por ejemplo:
admin: ./stowaway_admin -c 127.0.0.1:9999 --down ws
agent: ./stowaway_agent -l 9999 --up ws
En este caso, el agente debe configurar --up como ws; de lo contrario, ocurrirán errores de red.
Lo mismo aplica entre agentes.
Supongamos que agent-1 está escuchando en 127.0.0.1:10000 esperando la conexión de un nodo hijo y ha configurado --down ws. Entonces agent-2 también debe configurar --up como ws; de lo contrario, se producirán errores.
./stowaway_agent -c 127.0.0.1:10000 --up wsSegundo, dado que HTTP es un protocolo semidúplex, no es muy adecuado para la comunicación full-duplex de Stowaway. Por lo tanto, aquí el protocolo HTTP solo implementa el formato de mensaje HTTP, no un flujo de trabajo HTTP completo. Así que aún puede usar este protocolo, pero el tráfico entre Stowaway en formato de mensaje HTTP no puede ser reenviado a través de nginx. Esta parte del código y la funcionalidad se mantienen para el uso en ciertas situaciones especiales con HTTP, y también para proporcionar una plantilla de tráfico personalizada para que los usuarios la tomen como referencia al personalizar protocolos.
Si necesita usar nginx u otros proxies inversos, utilice el protocolo WS junto con TLS para la comunicación.
Este parámetro solo se usa en agent y solo en modo activo.
Opcional. Si no se establece, el nodo no intentará reconectarse después de que se desconecte la conexión de red. Si se establece, el nodo intentará reconectarse al nodo padre cada x segundos (el número que configure).
admin: ./stowaway_admin -l 9999
agent: ./stowaway_agent -c 127.0.0.1:9999 --reconnect 10
En el caso anterior, si la conexión entre el agent y el admin se rompe, el agente intentará reconectarse al admin cada diez segundos.
Lo mismo aplica entre agentes.
Además, el parámetro --reconnect se puede usar junto con --socks5-proxy/--socks5-proxyu/--socks5-proxyp/--http-proxy; el agente intentará reconectarse a través del proxy según la configuración inicial.
Estos dos parámetros son especiales; solo se usan en agent. Consulte la sección de reutilización de puertos para más detalles.
Este parámetro solo se usa en agent, tanto en modo activo como pasivo.
Está diseñado principalmente para resolver problemas de codificación en la función 'shell'. Cuando el agente se ejecuta en una plataforma con codificación de consola gbk (por ejemplo, Windows en general) y el admin se ejecuta en una plataforma con codificación utf-8, asegúrese de establecer este parámetro en 'gbk'.
./stowaway_agent -c 127.0.0.1:9999 -s 123 --cs gbkEste parámetro se usa igual en admin y agent, tanto en modo activo como pasivo.
Al habilitar esta opción, el tráfico entre nodos se cifrará con TLS.
Ejemplo:
./stowaway_admin -l 10000 --tls-enable -s 123./stowaway_agent -c localhost:10000 --tls-enable -s 123Nota: Cuando esta opción está habilitada, el cifrado AES se deshabilita por defecto; el parámetro -s solo se usará para autenticación mutua entre nodos y para la función de reutilización de puertos.
Además, cuando esta opción está habilitada, asegúrese de que todos los nodos en la red (incluyendo admin) tengan esta opción habilitada.
Este parámetro se usa igual en admin y agent, solo en modo activo.
Al establecer esta opción, se puede configurar la opción SNI durante la negociación TLS o el Host de destino para WebSocket.
Ejemplo:
./stowaway_admin -l 10000 --tls-enable -s 123./stowaway_agent -c xxx.xxx.xxx.xxx:10000 --tls-enable -s 123 --domain xxx.comEste parámetro solo se usa en admin, tanto en modo activo como pasivo.
Al habilitar esta opción, el admin enviará continuamente paquetes de heartbeat al primer nodo, manteniendo así una conexión larga en presencia de un proxy inverso intermedio.
Supongamos que hay un proxy inverso como nginx entre admin y agent que proxy el puerto 8080 al puerto 8000. Ejemplo:
./stowaway_admin -l 8000 --tls-enable -s 123 --down ws --heartbeat./stowaway_agent -c xxx.xxx.xxx.xxx:8080 --tls-enable -s 123 --domain xxx.com --up wsActualmente, Stowaway ofrece reutilización de puertos basada en las características SO_REUSEPORT y SO_REUSEADDR, y reutilización de puertos basada en IPTABLES.
Modo SO_REUSEPORT y SO_REUSEADDR
Suponga que el agente utiliza el mecanismo de reutilización de puertos para reutilizar el puerto 80.
En este caso, el agente debe configurar los parámetros --rehost, --report y -s.
--rehost: Representa la dirección IP que se desea reutilizar; no puede ser 0.0.0.0, generalmente debe ser la dirección externa de la tarjeta de red.--report: Representa el puerto que se desea reutilizar.-s: Representa la clave de comunicación.Principalmente compatible con Windows y Mac; también funciona en Linux, pero con más restricciones.
./stowaway_admin -c 192.168.0.105:80 -s 123./stowaway_agent --report 80 --rehost 192.168.0.105 -s 123Modo IPTABLES
Suponga que el agente utiliza el mecanismo de reutilización de puertos para reutilizar el puerto 22.
En este caso, el agente debe configurar los parámetros -l, --report y -s.
-l: Representa el puerto que no puede ser accedido normalmente, es decir, el puerto donde realmente desea que el agente escuche y acepte conexiones.--report: Representa el puerto que se desea reutilizar.-s: Representa la clave de comunicación.Solo compatible con Linux; el agente modificará automáticamente las reglas de IPTABLES, requiere privilegios root.
agent: ./stowaway_agent --report 22 -l 10000 -s 123
Después de iniciar el agente, use el script reuse.py en el directorio script.
Primero, establezca el valor de SECRET (el valor de SECRET es la clave de comunicación establecida al iniciar cada nodo).
Luego ejecute: python reuse.py --start --rhost xxx.xxx.xxx.xxx --rport xxx
--rhost: Representa la dirección del agente.--rport: Representa el puerto reutilizado; en este ejemplo, debería ser 22.Ahora el admin puede conectarse: ./stowaway_admin -c 192.168.0.105:22 -s 123
kill -9, no se limpiarán automáticamente.
Por lo tanto, para evitar que las reglas de iptables no se limpien después de una salida anormal del agente y que el servicio reutilizado no se pueda acceder,
cuando necesite cerrar, ejecute: python reuse.py --stop --rhost xxx.xxx.xxx.xxx --rport xxx
Esto desactivará las reglas de reenvío, permitiendo que el servicio original sea accesible normalmente.-l.En los ejemplos anteriores, solo aparecen admin y un agente.
La característica principal es la red multinivel.
En Stowaway, para formar una red multinivel, se deben usar los comandos listen, connect y sshtunnel en el admin.
Pongamos un ejemplo simple:
./stowaway_admin -l 9999 -s 123Ahora agent-1 ya está conectado al admin.
agent-1: ./stowaway_agent -c 127.0.0.1:9999 -s 123
Ahora el usuario quiere conectar agent-2, así:
agent-2: ./stowaway_agent -l 10000 -s 123
Entonces, el usuario puede, a través del admin, escribir use 0 -> connect IP de agent-2:10000 para agregarlo a la red, convirtiéndolo en un nodo hijo de agent-1.
Si el usuario desea conectar otro nodo, agent-3, pero agent-1 no puede acceder a agent-3.
Entonces, el usuario puede, a través del admin, escribir use 0 -> listen -> seleccionar 1.Normal Passive -> introducir 10001, para que agent-1 escuche en el puerto 10001 y espere conexiones de nodos hijos.
Una vez que el admin haya completado la operación, agent-3 se inicia de la siguiente manera:
./stowaway_agent -c 127.0.0.1:10001 -s 123De esta manera, agent-3 se agrega a la red como otro nodo hijo de agent-1.
Para una introducción detallada a listen y sshtunnel, consulte la sección de comandos a continuación.
Stowaway actualmente admite varios métodos de reconexión. Resumiendo brevemente:
En primer lugar, cuando el nodo padre se desconecta, solo un tipo de nodo saldrá activamente: aquellos que se iniciaron en modo activo y no configuraron reconexión.
Si se configuró la reconexión, el nodo intentará reconectarse en el intervalo de tiempo especificado.
Además, todos los nodos iniciados en modo pasivo no saldrán activamente; en su lugar, volverán a escuchar en el puerto especificado según los parámetros de inicio. En ese momento, el usuario aún puede usar connect y sshtunnel para volver a conectar estos nodos a la red.
Si, debido a fluctuaciones de red o desconexión de un nodo intermedio, una rama se desconecta, al reconectar activamente asegúrese de conectar el nodo principal de la cadena faltante. Por ejemplo: admin seguido de node1, node1 se divide en dos ramas: node1->node2->node3->node4 y node1->node5->node6. Si node2 se desconecta, node3 y node4 no se desconectarán, sino que permanecerán activos. En ese momento, el usuario tiene dos opciones para volver a agregar node3 y node4 a la red: una es que si node1 puede acceder directamente a node3, el usuario puede en cualquier momento desde node1 usar el comando connect o sshtunnel para volver a agregar node3 a la red (recuerde, incluso si node1 también puede acceder a node4, no conecte directamente node4; conecte el nodo principal de la cadena faltante (node3), que es node3, para volver a agregar tanto node3 como node4 a la red). La otra opción es que si node1 no puede acceder directamente a node3 (es decir, debe pasar por node2), entonces primero reinicie node2 y agréguelo a la red, luego desde node2 use el comando connect o sshtunnel para conectar node3, agregando así node3 y node4 a la red.
Cuando un nodo se desconecta, todos los servicios socks, backward y forward relacionados con ese nodo y sus nodos hijos serán forzados a detenerse.
En la consola de admin, el usuario puede usar Tab para autocompletar comandos y las flechas del teclado para navegar por el historial/mover el cursor.
La consola de admin tiene dos niveles. El primer nivel es el panel principal, que contiene los siguientes comandos:
help: Muestra la ayuda del panel principal.(admin) >> help
help Mostrar ayuda
detail Mostrar detalles de nodos conectados
topo Mostrar topología de nodos
use <id> Seleccionar el nodo objetivo que desea usar
exit Salir de Stowaway
detail: Muestra información detallada de los nodos en línea.(admin) >> detail
Node[0] -> IP: 127.0.0.1:10000 Hostname: ph4ntoms-MBP.lan User: ph4ntom
Memo:
topo: Muestra la relación padre-hijo de los nodos en línea.(admin) >> topo
Node[0]'s children ->
Node[1]
Node[1]'s children ->
use: Usa un agente específico.(admin) >> use 0
(node 0) >>
exit: Sale de Stowaway.(admin) >> exit
[*] Do you really want to exit stowaway?(y/n): y
[*] BYE!
Cuando el usuario selecciona un agente con el comando use, entra al segundo nivel, el panel de nodo, que contiene los siguientes comandos:
help: Muestra la ayuda del panel de nodo.(node 0) >> help
help Mostrar ayuda
status Mostrar estado del nodo, incluyendo socks/forward/backward
listen Iniciar escucha de puerto en el nodo actual
addmemo <string> Agregar memo para el nodo actual
delmemo Eliminar memo del nodo actual
ssh <ip:port> Iniciar SSH a través del nodo actual
shell Iniciar un shell interactivo en el nodo actual
socks <lport> [username] [pass] Iniciar un servidor socks5
stopsocks Detener servicios socks
connect <ip:port> Conectar a un nuevo nodo
sshtunnel <ip:sshport> <agent port> Usar túnel SSH para agregar el nodo a nuestra topología
upload <local filename> <remote filename> Subir archivo al nodo actual
download <remote filename> <local filename> Descargar archivo del nodo actual
forward <lport> <ip:port> Reenviar puerto local a una IP:puerto remota específica
stopforward Detener servicios forward
backward <rport> <lport> Reenviar puerto remoto (agent) a puerto local (admin)
stopbackward Detener servicios backward
shutdown Terminar el nodo actual
back Volver al panel padre
exit Salir de Stowaway
status: Muestra el estado de socks/forward/backward del nodo actual.(node 0) >> status
Socks status:
ListenAddr: 0.0.0.0:10000 Username: Password:
-------------------------------------------------------------------------------------------
Forward status:
[1] Listening Addr: [::]:20000 , Remote Addr: 192.168.1.1:22 , Active Connections: 0
[2] Listening Addr: [::]:30000 , Remote Addr: 192.168.1.1:22 , Active Connections: 0
-------------------------------------------------------------------------------------------
Backward status:
[1] Remote Port: 40000 , Local Port: 50000 , Active Connections: 0
listen: Ordena al agente escuchar en un puerto y esperar la conexión de nodos hijos.(node 0) >> listen
[*] MENTION! If you choose IPTables Reuse or SOReuse, you MUST CONFIRM that the node was initially started in the corresponding way!
[*] When you choose IPTables Reuse or SOReuse, the node will use the initial config(when node started) to reuse port!
[*] Please choose the mode(1.Normal passive / 2.IPTables Reuse / 3.SOReuse): 1
[*] Please input the [ip:]<port> : 10001
[*] Waiting for response......
[*] Node is listening on 10001
Tenga en cuenta que listen es un comando especial. Como se puede ver, listen tiene tres modos:
Normal passive: Esta opción significa que el agente escuchará de manera normal en el puerto objetivo y esperará la conexión de nodos hijos.IPTables Reuse: Esta opción significa que el agente reutilizará el puerto usando el método IPTables Reuse y esperará la conexión de nodos hijos.SOReuse: Esta opción significa que el agente reutilizará el puerto usando el método SOReuse y esperará la conexión de nodos hijos.El primer modo es el más común. Si el nodo padre escucha de esta manera, el nodo hijo solo necesita -c ip:puerto del nodo padre para unirse a la red.
El segundo y tercer modo son especiales. Si el usuario elige el segundo o tercer modo, debe asegurarse de que el nodo actual se haya iniciado con el método de reutilización de puertos correspondiente; de lo contrario, no podrá usar estos modos.
En el segundo y tercer modo, el usuario no necesita ingresar ninguna información; el nodo usará automáticamente sus propios parámetros de inicio para reutilizar el puerto y prepararse para aceptar conexiones de nodos hijos.
Además, listen solo acepta la conexión de un nodo hijo a la vez. Si se necesitan múltiples nodos hijos, ejecute el comando listen tantas veces como sea necesario.
addmemo: Agrega una nota al nodo actual.(node 0) >> addmemo test
[*] Memo added!
(node 0) >> exit
(admin) >> detail
Node[0] -> IP: 127.0.0.1:10000 Hostname: ph4ntoms-MBP.lan User: ph4ntom
Memo: test
delmemo: Elimina la nota del nodo actual.(node 0) >> delmemo
[*] Memo deleted!
(node 0) >> exit
(admin) >> detail
Node[0] -> IP: 127.0.0.1:10000 Hostname: ph4ntoms-MBP.lan User: ph4ntom
Memo:
ssh: Ordena al nodo conectarse a una máquina objetivo vía SSH.(node 0) >> ssh 127.0.0.1:22
[*] Please choose the auth method(1.username&&password / 2.certificate): 1
[*] Please enter the username: ph4ntom
[*] Please enter the password: *****
[*] Waiting for response.....
[*] Connect to target host via ssh successfully!
# ph4ntom @ ph4ntoms-MBP in ~ 👑 [17:03:56]
$ whoami
ph4ntom
# ph4ntom @ ph4ntoms-MBP in ~ 👑 [17:04:16]
$
En este modo, la tecla Tab está deshabilitada.
shell: Obtiene el shell del nodo actual.(node 0) >> shell
[*] Waiting for response.....
[*] Shell is started successfully!
bash: no job control in this shell
The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
bash-3.2$ whoami
ph4ntom
bash-3.2$
En este modo, la tecla Tab está deshabilitada.
socks: Inicia un servicio socks5 en el nodo actual.(node 0) >> socks 7777
[*] Trying to listen on 0.0.0.0:7777......
[*] Waiting for response......
[*] Socks start successfully!
(node 0) >>
Tenga en cuenta que el puerto 7777 aquí no se abre en el agente, sino en el admin.
Si necesita configurar nombre de usuario y contraseña, cambie el comando a: socks 7777 <su nombre de usuario> <su contraseña>.
Si necesita especificar la interfaz de escucha, cambie el comando a: socks xxx.xxx.xxx.xxx:7777.
stopsocks: Detiene el servicio socks5 en el nodo actual.(node 0) >> stopsocks
Socks Info ---> ListenAddr: 0.0.0.0:7777 Username: <null> Password: <null>
[*] Do you really want to shut down socks?(yes/no): yes
[*] Closing......
[*] Socks service has been closed successfully!
(node 0) >>
connect: Ordena al nodo actual conectarse a otro nodo hijo.agent-1: ./stowaway_agent -l 10002
(node 0) >> connect 127.0.0.1:10002
[*] Waiting for response......
[*] New node online! Node id is 1
(node 0) >>
sshtunnel: Ordena al nodo actual conectarse a otro nodo hijo a través de un túnel SSH.agent-2: ./stowaway_agent -l 10003
(node 0) >> sshtunnel 127.0.0.1:22 10003
[*] Please choose the auth method(1.username&&password / 2.certificate): 1
[*] Please enter the username: ph4ntom
[*] Please enter the password: ******
[*] Waiting for response.....
[*] New node online! Node id is 2
(node 0) >>
En entornos de red estrictamente restringidos, se puede usar el túnel SSH para disfrazar el tráfico de Stowaway como tráfico SSH, evitando así las restricciones del firewall.
upload: Sube un archivo al nodo actual.(node 0) >> upload test.7z test.xxx
[*] File transmitting, please wait...
136.07 KiB / 136.07 KiB [-----------------------------------------------------------------------------------] 100.00% ? p/s 0s
download: Descarga un archivo del nodo actual.(node 0) >> download test.xxx test.xxxx
[*] File transmitting, please wait...
136.07 KiB / 136.07 KiB [-----------------------------------------------------------------------------------] 100.00% ? p/s 0s
forward: Mapea un puerto del admin a una dirección remota.(node 0) >> forward 9000 127.0.0.1:22
[*] Trying to listen on 0.0.0.0:9000......
[*] Waiting for response......
[*] Forward start successfully!
(node 0) >>
$ ssh 127.0.0.1 -p 9000
Password:
# ph4ntom @ ph4ntoms-MBP in ~ 👑 [17:19:51]
$
stopforward: Detiene el mapeo remoto del nodo actual.(node 0) >> stopforward
[0] All
[1] Listening Addr : [::]:9000 , Remote Addr : 127.0.0.1:22 , Active Connections : 1
[*] Do you really want to shut down forward?(yes/no): yes
[*] Please choose one to close: 1
[*] Closing......
[*] Forward service has been closed successfully!
backward: Mapea inversamente un puerto del agente actual al puerto local del admin.(node 0) >> backward 9001 22
[*] Trying to ask node to listen on 0.0.0.0:9001......
[*] Waiting for response......
[*] Backward start successfully!
(node 0) >>
$ ssh 127.0.0.1 -p 9001
Password:
# ph4ntom @ ph4ntoms-MBP in ~ 🌈 [17:22:14]
$
stopbackward: Detiene el mapeo inverso del nodo actual.(node 0) >> stopbackward
[0] All
[1] Remote Port : 9001 , Local Port : 22 , Active Connections : 1
[*] Do you really want to shut down backward?(yes/no): yes
[*] Please choose one to close: 1
[*] Closing......
[*] Backward service has been closed successfully!
shutdown: Ordena al nodo actual desconectarse.(node 1) >> shutdown
(node 1) >>
[*] Node 1 is offline!
back: Vuelve al panel principal.(node 1) >> back
(admin) >>
exit: Sale de Stowaway.(node 1) >> exit
[*] Do you really want to exit stowaway?(y/n): y
[*] BYE!
ansicon.exe -i; de lo contrario, la consola del admin puede mostrar caracteres ilegibles.UDP ASSOCIATE según el estándar RFC1928. Al usar el proxy SOCKS5 UDP, tenga en cuenta que el programa que utilice (por ejemplo, escáneres) debe construir paquetes de acuerdo con el estándar RFC1928 y debe manejar la pérdida de paquetes por sí mismo.
Stowaway ahora se ha unido al Proyecto 404 StarLink
Agradecemos la ayuda de los siguientes maestros y proyectos durante el desarrollo de Stowaway: