Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
rosemary — Rosemary: QUIC 기반 크로스 플랫폼 커널 수준 피벗팅. TUN/TAP 불필요. proxychains 불필요. 프록시 설정 불필요. | Kitploit
도구/GitHubGitHub/blue0x1/rosemary
ReconnaissanceLateral MovementNetwork SecurityPenetration TestingCommand and ControlRed TeamingDNS Analysis
GitHubblue0x1/rosemary

rosemary

Rosemary: QUIC 기반 크로스 플랫폼 커널 수준 피벗팅. TUN/TAP 불필요. proxychains 불필요. 프록시 설정 불필요.

저장소 보기
12117일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
웹사이트

Rosemary

QUIC 기반 크로스플랫폼 커널 수준 피보팅 플랫폼. TUN/TAP 불필요. proxychains 불필요. 프록시 설정 불필요.
Docs Go Version Go Report Card Release Downloads Stars


logo-dark

Rosemary는 커널 수준에서 원격 호스트의 트래픽을 투명하게 가로챕니다. 프록시 설정, TUN/TAP 장치, proxychains가 필요 없습니다. 에이전트는 QUIC을 통해 서버로 다시 연결되며, 마치 해당 네트워크에 직접 연결된 것처럼 원격 네트워크 전체에 접근할 수 있습니다.


목차

  • 작동 방식
  • 기능
  • 지원 플랫폼
  • 스크린샷
  • 빠른 시작
  • PowerShell 에이전트
  • 릴리스 노트
  • CLI 참조
  • API
  • 빌드
  • 보안
  • 라이선스
  • 제작자

작동 방식

사용자 머신에서 서버를 실행하고 원격 호스트에 에이전트를 배포합니다. 에이전트는 QUIC을 통해 다시 연결되고, 서버는 에이전트의 서브넷에 대해 커널 수준 가로채기 규칙을 설치합니다. 그 시점부터 DNS를 포함한 해당 서브넷으로의 모든 트래픽은 프록시 설정, TUN 장치, DNS 설정 변경, 애플리케이션 수정 없이 에이전트를 통해 투명하게 전달됩니다.

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

여러 에이전트를 동시에 연결하면 트래픽은 대상 네트워크를 소유한 에이전트로 자동 라우팅됩니다.


기능


지원 플랫폼

에이전트는 위의 모든 플랫폼에서 실행됩니다. 에이전트 측에는 root 권한이 필요 없습니다.


스크린샷

스크린샷 보기

대시보드 | 에이전트 그래프 보기

연결된 에이전트와 그 관계를 보여주는 대화형 네트워크 그래프

image

대시보드 | 테이블 보기

OS, 호스트 이름, 서브넷, 연결 상태를 포함한 상세 에이전트 정보

image

Chrome 확장 프로그램

터널을 통한 손쉬운 접근과 트래픽 라우팅을 위한 브라우저 확장 프로그램

image

설치 방법:

  1. Chrome을 열고 chrome://extensions/로 이동합니다.
  2. 개발자 모드를 켭니다 (오른쪽 상단 토글)
  3. 압축 해제된 확장 프로그램 로드를 클릭합니다.
  4. 저장소의 extension/ 폴더를 선택합니다.

확장 프로그램 아이콘이 브라우저 툴바에 나타납니다.

포트 포워딩 관리

모든 에이전트를 통해 TCP/UDP 포트 포워딩 생성 및 관리

image image

참고: 그래프 보기는 에이전트를 자동으로 배치하고 서브넷 관계를 시각화합니다. 에이전트 간의 엣지는 공유 서브넷을 나타내며, 멀티홉 피보팅 시각화를 지원합니다.


빠른 시작

설치

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/

또는 Releases에서 사전 빌드된 바이너리를 다운로드할 수 있습니다.

1. 서버 시작

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

# Or provide your own
sudo rosemary -key YOUR_BASE64_KEY

대시보드는 http://server-ip:1024에서 사용할 수 있습니다. 키로 로그인하세요.

2. 에이전트 배포

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

연결되면 에이전트의 서브넷이 자동으로 이를 통해 라우팅됩니다.

3. 바인드 모드 (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 에이전트 (Invoke-Rosemary)

Invoke-Rosemary.ps1는 아웃바운드 에이전트 모드와 바인드 모드를 모두 지원합니다. 바인드 모드는 레거시 Windows PowerShell 호스트에서 작동합니다. 아웃바운드 에이전트 모드는 QUIC을 사용하며, System.Net.Quic 및 libmsquic을 사용할 수 있는 .NET 런타임에서 PowerShell 7이 필요합니다.

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

PowerShell 아웃바운드 모드를 사용하기 전에 QUIC 지원 여부를 확인하세요:

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

두 확인 중 하나라도 실패하면 아웃바운드 모드용 Go Windows 에이전트를 사용하거나 PowerShell 에이전트를 agent-bind 모드로 실행하세요.

매개변수

5. Egress: 모든 인터넷 트래픽 라우팅

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

알려진 에이전트 서브넷 밖의 IP로 향하는 모든 트래픽은 이제 agent-1을 통해 전달됩니다. DNS는 사설 및 공용 도메인 모두에서 계속 작동합니다.


릴리스 노트

이 버전은 아웃바운드 에이전트를 QUIC/UDP 전송으로 전환하고, 바인드 에이전트는 암호화된 TCP 프레이밍을 유지하며, PowerShell 에이전트를 두 모드 모두에 맞게 업데이트하고, CLI 목록 출력을 에이전트, 라우트, 포워드, 역방향 포워드, SOCKS5 프록시, API 토큰에 대해 일관되게 정렬된 테이블로 개선했습니다.

호환성 참고 사항:

  • 기존 WebSocket/smux 에이전트는 새 Go 에이전트로 교체해야 합니다.
  • PowerShell 아웃바운드 모드에는 .NET QUIC을 지원하는 PowerShell 7이 필요합니다.
  • PowerShell 바인드 모드는 Windows PowerShell 5.1 호스트의 대체 모드로 유지됩니다.

CLI 참조

전체 세부 정보는 REPL에서 help 또는 help <command>를 입력하세요.

에이전트

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

라우팅

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

포트 포워딩

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

탐색

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

서버

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

전체 API 참조

전체 엔드포인트 문서와 예제는 다음에서 확인할 수 있습니다:

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

한 번 인증하여 토큰을 받은 후 모든 요청에 사용하세요.

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

엔드포인트: /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

토큰 권한 수준: read · write · admin


빌드

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/

지원 아키텍처:

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

Windows 서버: WinDivert 요구 사항

Windows 서버는 커널 수준 패킷 가로채기에 WinDivert를 사용합니다. 빌드 전에:

  1. reqrypt.org/windivert.html에서 WinDivert.dll 및 WinDivert64.sys를 다운로드합니다 (v2.x, 64비트)
  2. 두 파일을 rosemary/ 디렉터리에 넣습니다.

이 파일들은 빌드 시점에 바이너리에 포함됩니다.


보안

  • 암호화: 모든 에이전트 ↔ 서버 통신에 AES-256-GCM
  • 인증: 공유 키로 인증되는 에이전트 전송
  • 대시보드: CSRF 토큰 보호가 적용된 세션 기반 로그인
  • API 토큰: 범위가 제한된 권한: read / write / admin
  • 권한 분리: 에이전트는 root 권한이 필요 없으며, 서버에만 상승된 권한이 필요합니다

라이선스

GNU General Public License v3.0: LICENSE 참조


제작자

blue0x1 (Chokri Hammedi)

GitHub · 후원
Buy Me A Coffee


소유한 시스템 또는 명시적인 서면 테스트 허가를 받은 시스템에서만 사용하세요. 무단 사용은 금지됩니다.

도구 다운로드
분류기능
가로채기투명한 TCP · UDP · ICMP · DNS, 클라이언트 설정 불필요
Egress기본 egress 에이전트가 선택한 에이전트를 통해 모든 인터넷 트래픽을 라우팅
SOCKS5에이전트별 SOCKS5 프록시, 선택적 사용자 이름/비밀번호 인증
포워딩TCP/UDP 포트 포워딩 · 역방향 포트 포워딩 (서버 수신, 에이전트 발신)
탐색Ping · Ping 스윕 · 에이전트를 통한 TCP/UDP 포트 스캔
DNSDNS 가로채기, 에이전트를 통해 사설 및 공용 도메인 해석
피보팅여러 에이전트를 통한 멀티홉 (5홉 이상 테스트 완료)
전송QUIC/UDP 아웃바운드 에이전트 · 암호화된 TCP 바인드 에이전트
대시보드실시간 에이전트 그래프, 라우팅 테이블, 로그 뷰어를 갖춘 웹 UI
API토큰 기반 인증(read/write/admin)을 갖춘 전체 REST API
CLI대화형 REPL + 웹 기반 CLI 패널
확장 프로그램빠른 접근을 위한 Chrome 확장 프로그램
에이전트백그라운드 모드 · 바인드 모드 · 자동 서브넷 탐색 · 인터넷 감지
구성JSON 가져오기/내보내기 · 실시간 키 교체 · 포트별 구성
플랫폼TCPUDPDNSICMPSOCKS5Egress
Linux✓✓✓✓✓✓
Windows✓✓✓✓✓✓
macOS✓✓✓✓✓✓
FreeBSD✓✓✓✓✓✓
OpenBSD✓✓✓✓✓✓

라우팅 테이블

실시간 상태와 함께 서브넷 라우트 보기 및 전환

image

CLI 패널

전체 서버 제어를 위한 내장 REPL

image

웹 CLI 패널

image

로그 패널

필터링 및 내보내기 옵션을 갖춘 실시간 이벤트 스트리밍

image

SOCKS5 프록시 관리

선택적 인증과 함께 모든 에이전트를 통해 SOCKS5 프록시 시작/중지

image

설정 모달

서버 포트, 암호화 키, API 토큰 구성 image

API 토큰

세분화된 권한으로 REST API 토큰 생성 및 관리

image

에이전트 컨텍스트 메뉴

빠른 작업: 태그, 포워딩, ping, 포트 스캔, 재연결, 연결 끊기

image
매개변수설명
-KeyBase64 암호화 키 - 서버와 일치해야 함
-Modeagent(아웃바운드) 또는 agent-bind(인바운드)
-Server서버 주소 host:port - agent 모드에서 필수
-Listenagent-bind 모드의 바인드 주소 (기본값 0.0.0.0:9001)
-Background숨겨진 백그라운드 프로세스로 다시 실행하고 즉시 반환
-Verbose연결 및 세션 진단 출력 표시