Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
rosemary — Rosemary: Pivoting a livello di kernel cross-platform tramite QUIC. Nessun TUN/TAP. Nessun proxychains. Nessuna impostazione proxy. | Kitploit
Strumenti/GitHubGitHub/blue0x1/rosemary
RicognizioneMovimento LateraleSicurezza di RetePenetration TestingCommand and ControlRed TeamingAnalisi DNS
GitHubblue0x1/rosemary

rosemary

Rosemary: Pivoting a livello di kernel cross-platform tramite QUIC. Nessun TUN/TAP. Nessun proxychains. Nessuna impostazione proxy.

Vedi Repository
12117 giorni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Sito web

Rosemary

Cross-platform kernel-level pivoting platform over QUIC. No TUN/TAP. No proxychains. No proxy settings.
Docs Go Version Go Report Card Release Downloads Stars


logo-dark

Rosemary intercetta trasparentemente il traffico su host remoti a livello kernel: nessuna impostazione proxy, nessun dispositivo TUN/TAP, nessun proxychains. Gli agenti si riconnettono al server tramite QUIC. Raggiungi l'intera rete remota come se fossi direttamente su di essa.


Table of Contents

  • How It Works
  • Features
  • Platforms
  • Screenshots
  • Quick Start
  • PowerShell Agent (Invoke-Rosemary)
  • Release Notes
  • CLI Reference
  • API
  • Build
  • Security
  • License
  • Author

How It Works

Esegui il server sulla tua macchina e distribuisci un agente su qualsiasi host remoto. L'agente si riconnette tramite QUIC, il server installa regole di intercettazione a livello kernel per le sottoreti dell'agente, e da quel momento tutto il traffico verso quelle sottoreti, incluso DNS, viene inoltrato trasparentemente attraverso l'agente, nessuna configurazione proxy, nessun dispositivo TUN, nessuna impostazione DNS da cambiare, nessuna modifica alle tue applicazioni.

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

Connetti più agenti contemporaneamente e il traffico viene automaticamente instradato verso l'agente che possiede la destinazione.


Features


Platforms

Agent funziona su tutte le piattaforme sopra. Non è richiesto root lato agente.


Screenshots

Mostra screenshot

Dashboard | Agent Graph View

Grafico di rete interattivo che mostra gli agenti connessi e le loro relazioni

Dashboard - Vista Grafico Agenti

Dashboard | Table View

Informazioni dettagliate sull'agente inclusi OS, hostname, sottoreti e stato della connessione

Dashboard - Vista Tabella

Chrome Extension

Estensione del browser per accesso facile e instradamento del traffico attraverso il tunnel

Estensione Chrome

Installazione:

  1. Apri Chrome e vai su chrome://extensions/
  2. Abilita Modalità sviluppatore (attiva in alto a destra)
  3. Clicca Carica estensione non pacchettizzata
  4. Seleziona la cartella extension/ dal repository

L'icona dell'estensione apparirà nella barra degli strumenti del browser.

Port Forward Management


Nota: La vista grafico dispone automaticamente gli agenti e visualizza le relazioni delle sottoreti. I bordi tra agenti indicano sottoreti condivise, consentendo la visualizzazione del pivoting multi-hop.


Quick Start

Install

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/

Oppure scarica i binari precompilati da Releases.

1. Start the Server

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

# Or provide your own
sudo rosemary -key YOUR_BASE64_KEY

Dashboard disponibile su http://server-ip:1024: accedi con la tua chiave.

2. Deploy an Agent

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 volta connesso, le sottoreti dell'agente vengono automaticamente instradate attraverso di esso.

3. Bind Mode (agent behind 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. PowerShell Agent (Invoke-Rosemary)

Invoke-Rosemary.ps1 supporta sia la modalità agente outbound che la modalità bind. La modalità bind funziona su host Windows PowerShell legacy. La modalità agente outbound utilizza QUIC e richiede PowerShell 7 su un runtime .NET dove System.Net.Quic e libmsquic sono disponibili.

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

Controlla il supporto QUIC prima di utilizzare la modalità outbound di 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

Se uno dei due controlli fallisce, utilizza l'agente Windows Go per la modalità outbound o esegui l'agente PowerShell in modalità agent-bind.

Parameters

5. Egress: Route All Internet Traffic

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

Tutto il traffico verso IP al di fuori delle sottoreti conosciute degli agenti ora fluisce attraverso agent-1. Il DNS continua a funzionare sia per domini privati che pubblici.


Release Notes

Questa versione sposta gli agenti outbound su trasporto QUIC/UDP, mantiene gli agenti bind su framing TCP criptato, aggiorna l'agente PowerShell per entrambe le modalità e rinfresca l'output della lista CLI con tabelle allineate in modo consistente per agenti, rotte, forward, reverse forward, proxy SOCKS5 e token API.

Note di compatibilità:

  • Gli agenti WebSocket/smux esistenti devono essere sostituiti con i nuovi agenti Go.
  • La modalità outbound di PowerShell richiede PowerShell 7 con supporto .NET QUIC.
  • La modalità bind di PowerShell rimane il fallback per gli host Windows PowerShell 5.1.

CLI Reference

Digita help o help <command> all'interno del REPL per dettagli completi.

Agents

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

Routing

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

Port Forwards

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

Reverse Forwards

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>

Discovery

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

Server

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

Riferimento API Completo

La documentazione completa degli endpoint con esempi è disponibile su:

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

Autenticati una volta per ottenere un token, poi usalo per tutte le richieste.

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"}'

Endpoint: /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

Livelli di permesso dei token: read · write · admin


Build

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/

Architetture supportate:

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

Windows Server: WinDivert Requirement

Il server Windows utilizza WinDivert per l'intercettazione dei pacchetti a livello kernel. Prima di compilare:

  1. Scarica WinDivert.dll e WinDivert64.sys da reqrypt.org/windivert.html (v2.x, 64-bit)
  2. Posiziona entrambi i file nella directory rosemary/

Vengono incorporati nel binario al momento della compilazione.


Security

  • Crittografia: AES-256-GCM su tutta la comunicazione agente ↔ server
  • Autenticazione: trasporto agente autenticato con chiave condivisa
  • Dashboard: login basato su sessione con protezione token CSRF
  • Token API: permessi con ambito: read / write / admin
  • Separazione dei privilegi: gli agenti non richiedono root; solo il server necessita di diritti elevati

License

GNU General Public License v3.0: see LICENSE


Author

blue0x1 (Chokri Hammedi)

GitHub · Sponsor
Offrimi un caffè


Utilizza solo su sistemi di tua proprietà o per cui hai esplicita autorizzazione scritta. L'uso non autorizzato è vietato.

Scarica lo strumento
CategoryCapability
InterceptionTCP · UDP · ICMP · DNS trasparenti, nessuna configurazione client richiesta
EgressAgente di egress predefinito che instrada tutto il traffico internet attraverso un agente scelto
SOCKS5Proxy SOCKS5 per agente con autenticazione opzionale username/password
ForwardsForward di porte TCP/UDP · Reverse port forwards (server ascolta, agente chiama)
DiscoveryPing · Ping sweep · Scansione porte TCP/UDP tramite agente
DNSIntercetta DNS, risolve tramite agenti, domini privati e pubblici
PivotingMulti-hop attraverso più agenti (5+ hop testati)
TransportAgenti outbound QUIC/UDP · Agenti bind TCP criptati
DashboardInterfaccia web con grafico agenti in tempo reale, tabella di routing, visualizzatore log
APIAPI REST completa con autenticazione basata su token (read/write/admin)
CLIREPL interattivo + pannello CLI basato su web
ExtensionEstensione Chrome per accesso rapido
AgentsModalità background · modalità bind · scoperta automatica sottoreti · rilevamento internet
ConfigImport/export JSON · rotazione chiavi in tempo reale · configurazione per porta
PlatformTCPUDPDNSICMPSOCKS5Egress
Linux✓✓✓✓✓✓
Windows✓✓✓✓✓✓
macOS✓✓✓✓✓✓
FreeBSD✓✓✓✓✓✓
OpenBSD✓✓✓✓✓✓

Crea e gestisci forward di porte TCP/UDP attraverso qualsiasi agente

Gestione Forward di Porte
Gestione Forward di Porte

Routing Table

Visualizza e attiva/disattiva le rotte delle sottoreti con stato in tempo reale

Tabella di Routing

CLI Panel

REPL integrato per il controllo completo del server

Pannello CLI

Web CLI Panel

Pannello CLI Web

Logs Panel

Streaming eventi in tempo reale con opzioni di filtro ed esportazione

Pannello Log

SOCKS5 Proxy Management

Avvia/ferma proxy SOCKS5 attraverso qualsiasi agente con autenticazione opzionale

Gestione Proxy SOCKS5

Settings Modal

Configura porte del server, chiavi di crittografia e token API Finestra Impostazioni

API Tokens

Crea e gestisci token API REST con permessi granulari

Token API

Agent Context Menu

Azioni rapide: tag, forward, ping, scansione porte, riconnessione, disconnessione

Menu Contestuale Agente
ParameterDescription
-KeyChiave di crittografia Base64 - deve corrispondere al server
-Modeagent (outbound) o agent-bind (inbound)
-ServerIndirizzo del server host:port - richiesto in modalità agent
-ListenIndirizzo di ascolto per la modalità agent-bind (predefinito 0.0.0.0:9001)
-BackgroundRiavvia come processo in background nascosto e ritorna immediatamente
-VerboseMostra output diagnostico di connessione e sessione