Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
rosemary — Rosemary: Pivoting a nivel de kernel multiplataforma sobre QUIC. Sin TUN/TAP. Sin proxychains. Sin configuración de proxy. | Kitploit
Herramientas/GitHubGitHub/blue0x1/rosemary
ReconocimientoMovimiento LateralSeguridad de RedesPruebas de PenetraciónComando y ControlRed TeamingAnálisis de DNS
GitHubblue0x1/rosemary

rosemary

Rosemary: Pivoting a nivel de kernel multiplataforma sobre QUIC. Sin TUN/TAP. Sin proxychains. Sin configuración de proxy.

Ver Repositorio
121hace 17 díasAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Sitio web

Rosemary

Plataforma de pivoteo a nivel de kernel multiplataforma sobre QUIC. Sin TUN/TAP. Sin proxychains. Sin configuración de proxy.
Docs Go Version Go Report Card Release Downloads Stars


logo-dark

Rosemary intercepta de forma transparente el tráfico en hosts remotos a nivel de kernel: sin configuración de proxy, sin dispositivos TUN/TAP, sin proxychains. Los agentes se conectan de vuelta al servidor mediante QUIC. Llegas a toda la red remota como si estuvieras directamente en ella.


Tabla de Contenidos

  • Cómo Funciona
  • Características
  • Plataformas
  • Capturas de Pantalla
  • Inicio Rápido
  • Agente PowerShell
  • Notas de la Versión
  • Referencia de CLI
  • API
  • Compilación
  • Seguridad
  • Licencia
  • Autor

Cómo Funciona

Ejecuta el servidor en tu máquina y despliega un agente en cualquier host remoto. El agente se conecta de vuelta mediante QUIC, el servidor instala reglas de interceptación a nivel de kernel para las subredes del agente, y a partir de ese momento todo el tráfico hacia esas subredes, incluido DNS, se reenvía de forma transparente a través del agente, sin configuración de proxy, sin dispositivo TUN, sin cambios en la configuración de DNS, sin cambios en tus aplicaciones.

root@kitploit:~
curl http://192.168.1.50   ───►  agent dials 192.168.1.50 and bridges it back
ssh  [email protected]
ping 192.168.1.1

Conecta varios agentes a la vez y el tráfico se enruta automáticamente al agente que posee el destino.


Características


Plataformas

Agente se ejecuta en todas las plataformas anteriores. No se requiere root en el lado del agente.


Capturas de Pantalla

Mostrar capturas de pantalla

Panel | Vista de Gráfico de Agentes

Gráfico de red interactivo que muestra los agentes conectados y sus relaciones

image

Panel | Vista de Tabla

Información detallada del agente, incluidos SO, hostname, subredes y estado de conexión

image

Extensión de Chrome

Extensión de navegador para acceso fácil y enrutamiento de tráfico a través del túnel

image

Instalación:

  1. Abre Chrome y ve a chrome://extensions/
  2. Habilita el modo desarrollador (interruptor en la esquina superior derecha)
  3. Haz clic en Cargar descomprimida
  4. Selecciona la carpeta extension/ del repositorio

El icono de la extensión aparecerá en la barra de herramientas de tu navegador.

Gestión de Reenvíos de Puertos


Nota: La vista de gráfico distribuye automáticamente los agentes y visualiza las relaciones de subred. Las aristas entre agentes indican subredes compartidas, lo que permite la visualización del pivoteo de múltiples saltos.


Inicio Rápido

Instalación

root@kitploit:~
# Install via go install
go install github.com/blue0x1/rosemary/rosemary@latest
go install github.com/blue0x1/rosemary/agent@latest # For install agent

# Copy to system path for sudo use
sudo cp ~/go/bin/rosemary /usr/local/bin/

O descarga los binarios precompilados desde Releases.

1. Iniciar el Servidor

root@kitploit:~
# Auto-generate a key
sudo rosemary

# Or provide your own
sudo rosemary -key YOUR_BASE64_KEY

Panel disponible en http://server-ip:1024: inicia sesión con tu clave.

2. Desplegar un Agente

root@kitploit:~
# Standard QUIC/UDP mode (agent connects to server)
./agent-linux-amd64 -s server-ip:2048 -k YOUR_KEY

# Background mode
./agent-linux-amd64 -b -s server-ip:2048 -k YOUR_KEY

# Windows
agent-windows-amd64.exe -s server-ip:2048 -k YOUR_KEY

Una vez conectado, las subredes del agente se enrutan automáticamente a través de él.

3. Modo Bind (agente detrás de NAT)

root@kitploit:~
# On the agent host: agent listens for the server to connect
./agent-linux-amd64 -m agent-bind -l 0.0.0.0:9001 -k YOUR_KEY

# On the server CLI
rosemary> connect agent-ip:9001

4. Agente PowerShell (Invoke-Rosemary)

Invoke-Rosemary.ps1 admite tanto el modo de agente saliente como el modo bind. El modo bind funciona en hosts de Windows PowerShell heredados. El modo de agente saliente usa QUIC y requiere PowerShell 7 en un runtime .NET donde System.Net.Quic y libmsquic estén disponibles.

root@kitploit:~
# Import
. .\Invoke-Rosemary.ps1

# Help
Invoke-Rosemary -Help

Invoke-Rosemary -Mode agent -Server 192.168.1.10:2048 -Key YOUR_KEY

Invoke-Rosemary -Mode agent-bind -Listen 0.0.0.0:9001 -Key YOUR_KEY

Invoke-Rosemary -Mode agent -Server 192.168.1.10:2048 -Key YOUR_KEY -Background

Invoke-Rosemary -Mode agent -Server 192.168.1.10:2048 -Key YOUR_KEY -Verbose

Verifica el soporte de QUIC antes de usar el modo saliente de PowerShell:

root@kitploit:~
[type]::GetType('System.Net.Quic.QuicConnection, System.Net.Quic') -ne $null
[System.Net.Quic.QuicConnection]:https://raw.githubusercontent.com/blue0x1/rosemary/HEAD/:IsSupported

Si alguna de las comprobaciones falla, usa el agente Go de Windows para el modo saliente o ejecuta el agente PowerShell en modo agent-bind.

Parámetros

5. Egress: Enrutar Todo el Tráfico de Internet

root@kitploit:~
rosemary> egress agent-1
[+] Default egress set to agent-1

Todo el tráfico a IPs fuera de las subredes conocidas del agente ahora fluye a través de agent-1. DNS continúa funcionando para dominios tanto privados como públicos.


Notas de la Versión

Esta versión migra los agentes salientes al transporte QUIC/UDP, mantiene los agentes bind en tramas TCP cifradas, actualiza el agente PowerShell para ambos modos y renueva la salida de la lista de CLI con tablas consistentemente alineadas para agentes, rutas, reenvíos, reenvíos inversos, proxies SOCKS5 y tokens de API.

Notas de compatibilidad:

  • Los agentes WebSocket/smux existentes deben reemplazarse con los nuevos agentes Go.
  • El modo saliente de PowerShell requiere PowerShell 7 con soporte de .NET QUIC.
  • El modo bind de PowerShell sigue siendo la alternativa para hosts con Windows PowerShell 5.1.

Referencia de CLI

Escribe help o help <command> dentro del REPL para obtener todos los detalles.

Agentes

root@kitploit:~
agents                         List all connected agents
disconnect <agent-id|all>      Disconnect agent(s)
reconnect  <agent-id>          Force agent to reconnect
connect    <ip:port>           Connect to a bind-mode agent

Enrutamiento

root@kitploit:~
routes                         Show routing table
routes enable  <subnet>        Re-enable a disabled route
routes disable <subnet>        Disable a route without disconnecting
routes default <agent-id>      Set default egress agent
routes default off             Clear default egress
egress <agent-id>              Alias: set default egress agent
egress none                    Alias: clear default egress

Reenvíos de Puertos

root@kitploit:~
forward add <local-port> <agent-id> <host> <port> [tcp|udp]
forward del <id>
forwards                       List active forwards

Reenvíos Inversos

root@kitploit:~
rforward add <listen-port> <agent-id> <host> <port>
rforward del <id>
rforward list

SOCKS5

root@kitploit:~
socks <agent-id> <port> [username] [password]
socks list
socks stop <id>

Descubrimiento

root@kitploit:~
ping     <agent-id> <target> [count]
discover <agent-id> <subnet> [timeout_ms] [workers]
portscan <agent-id> tcp|udp <target> [ports]

Servidor

root@kitploit:~
settings                       Show current config
verbose                        Toggle debug logging
rotate-key                     Regenerate encryption key
save-config <path>             Export config to JSON
load-config <path>             Import config from JSON
token list|create|view|revoke  Manage API tokens
exit                           Shutdown

API

Referencia completa de la API

La documentación completa de endpoints con ejemplos está disponible en:

root@kitploit:~
http://<server>:1024/docs

Autentícate una vez para obtener un token y luego úsalo para todas las solicitudes.

root@kitploit:~
# Authenticate
curl -X POST http://server:1024/api/v1/auth \
  -H "Content-Type: application/json" \
  -d '{"key":"YOUR_KEY"}'

# List agents
curl -H "Authorization: Bearer tun_xxx" \
  http://server:1024/api/v1/agents

# Port forward
curl -X POST http://server:1024/api/v1/forwards \
  -H "Authorization: Bearer tun_xxx" \
  -H "Content-Type: application/json" \
  -d '{"action":"add","agent_id":"agent-1","local_port":8080,"target_host":"192.168.1.10","target_port":80}'

# SOCKS5 proxy
curl -X POST http://server:1024/api/v1/socks \
  -H "Authorization: Bearer tun_xxx" \
  -H "Content-Type: application/json" \
  -d '{"agent_id":"agent-1","port":1080}'

# Run any CLI command
curl -X POST http://server:1024/api/v1/cli \
  -H "Authorization: Bearer tun_xxx" \
  -H "Content-Type: application/json" \
  -d '{"command":"discover agent-1 10.10.10.0/24"}'

Endpoints: /api/v1/auth · /api/v1/agents · /api/v1/routes · /api/v1/forwards · /api/v1/rforwards · /api/v1/socks · /api/v1/cli · /api/v1/settings · /api/v1/tokens · /api/v1/shutdown

Niveles de permiso de token: read · write · admin


Compilación

root@kitploit:~
git clone https://github.com/blue0x1/rosemary.git
cd rosemary

# Build all platforms and architectures
bash build.sh

# Build specific target
bash build.sh rosemary linux amd64
bash build.sh agent  windows arm64

# Output goes to dist/

Arquitecturas soportadas:

  • linux, freebsd, openbsd: amd64 arm64 arm 386
  • windows: amd64 arm64 386
  • darwin: amd64 arm64

Servidor Windows: Requisito de WinDivert

El servidor de Windows usa WinDivert para la interceptación de paquetes a nivel de kernel. Antes de compilar:

  1. Descarga WinDivert.dll y WinDivert64.sys desde reqrypt.org/windivert.html (v2.x, 64 bits)
  2. Coloca ambos archivos en el directorio rosemary/

Se incrustan en el binario en el momento de la compilación.


Seguridad

  • Cifrado: AES-256-GCM en toda la comunicación agente ↔ servidor
  • Autenticación: transporte de agente autenticado con clave compartida
  • Panel: inicio de sesión basado en sesión con protección de token CSRF
  • Tokens de API: permisos con alcance: read / write / admin
  • Separación de privilegios: los agentes no requieren root; solo el servidor necesita derechos elevados

Licencia

GNU General Public License v3.0: consulta LICENSE


Autor

blue0x1 (Chokri Hammedi)

GitHub · Sponsor
Buy Me A Coffee


Úsalo solo en sistemas que sean tuyos o sobre los que tengas permiso explícito por escrito para realizar pruebas. El uso no autorizado está prohibido.

Descargar herramienta
CategoríaCapacidad
InterceptaciónTCP · UDP · ICMP · DNS transparentes, sin configuración de cliente requerida
EgressEl agente de egress predeterminado enruta todo el tráfico de Internet a través de un agente elegido
SOCKS5Proxy SOCKS5 por agente con autenticación opcional de usuario/contraseña
ReenvíosReenvíos de puertos TCP/UDP · Reenvíos de puertos inversos (el servidor escucha, el agente llama)
DescubrimientoPing · Barrido de ping · Escaneo de puertos TCP/UDP mediante agente
DNSIntercepta DNS, resuelve a través de agentes, dominios privados y públicos
PivoteoMúltiples saltos a través de varios agentes (probado con 5+ saltos)
TransporteAgentes salientes QUIC/UDP · agentes bind de TCP cifrado
PanelInterfaz web con gráfico de agentes en tiempo real, tabla de enrutamiento, visor de registros
APIAPI REST completa con autenticación basada en tokens (read/write/admin)
CLIREPL interactivo + panel CLI basado en web
ExtensiónExtensión de Chrome para acceso rápido
AgentesModo background · modo bind · descubrimiento automático de subredes · detección de Internet
ConfigImportación/exportación JSON · rotación de claves en vivo · configuración por puerto
PlataformaTCPUDPDNSICMPSOCKS5Egress
Linux✓✓✓✓✓✓
Windows✓✓✓✓✓✓
macOS✓✓✓✓✓✓
FreeBSD✓✓✓✓✓✓
OpenBSD✓✓✓✓✓✓

Crea y gestiona reenvíos de puertos TCP/UDP a través de cualquier agente

image
image

Tabla de Enrutamiento

Visualiza y alterna rutas de subred con estado en tiempo real

image

Panel CLI

REPL integrado para el control completo del servidor

image

Panel CLI Web

image

Panel de Registros

Transmisión de eventos en tiempo real con opciones de filtrado y exportación

image

Gestión de Proxies SOCKS5

Inicia/detiene proxies SOCKS5 a través de cualquier agente con autenticación opcional

image

Modal de Configuración

Configura puertos del servidor, claves de cifrado y tokens de API image

Tokens de API

Crea y gestiona tokens de API REST con permisos granulares

image

Menú Contextual del Agente

Acciones rápidas: etiquetar, reenviar, ping, escaneo de puertos, reconectar, desconectar

image
ParámetroDescripción
-KeyClave de cifrado Base64: debe coincidir con la del servidor
-Modeagent (saliente) o agent-bind (entrante)
-ServerDirección del servidor host:port - requerida en modo agente
-ListenDirección de bind para el modo agent-bind (por defecto 0.0.0.0:9001)
-BackgroundRelanza como un proceso oculto en segundo plano y regresa inmediatamente
-VerboseMuestra el diagnóstico de salida de conexión y sesión