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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
whosthere — Go로 작성된 대화형 터미널 사용자 인터페이스(TUI)를 갖춘 근거리 통신망(LAN) 탐색 도구입니다. 직관적인 방식으로 LAN을 발견하고 탐색하며 이해하세요. 똑똑.. 누구세요? 🚪 | Kitploit
도구/GitHubGitHub/ramonvermeulen/whosthere
ReconnaissanceNetwork MappingPort ScanningInformation GatheringUtilities & FrameworksDNS Analysis
GitHubramonvermeulen/whosthere

whosthere

Go로 작성된 대화형 터미널 사용자 인터페이스(TUI)를 갖춘 근거리 통신망(LAN) 탐색 도구입니다. 직관적인 방식으로 LAN을 발견하고 탐색하며 이해하세요. 똑똑.. 누구세요? 🚪

저장소 보기
2.4k7242일 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Whosthere

Go Report Card Go Version License GitHub Downloads (all assets, all releases) GitHub Release GitHub Repo stars

Go로 작성된 대화형 터미널 사용자 인터페이스(TUI)를 갖춘 로컬 영역 네트워크 검색 도구입니다. 직관적인 방식으로 LAN을 발견하고 탐색하며 이해하세요.

Whosthere는 mDNS 및 SSDP 스캐너를 사용하여 권한 없는 동시 스캔을 수행합니다. 또한 TCP/UDP 연결을 시도하여 ARP 해상도를 트리거함으로써 로컬 서브넷을 스위핑한 다음 ARP 캐시를 읽어 로컬 영역 네트워크에서 장치를 식별합니다. 이 기술은 상승된 권한 없이 ARP 캐시를 채웁니다. 발견된 모든 장치는 OUI 조회를 통해 사용 가능한 경우 제조업체를 표시하도록 강화됩니다.

Whosthere는 모든 네트워크 관리자가 묻는 질문인 "네트워크에 누가 있나요?"에 친근하고 직관적인 방식으로 답변합니다.

demo gif

Features

  • 대화형 TUI: 발견된 장치를 직관적으로 탐색하고 탐색합니다.
  • 빠르고 동시성: 여러 검색 방법을 동시에 활용합니다.
  • 권한 상승 불필요: 완전히 사용자 공간에서 실행됩니다.
  • 장치 정보 보강: OUI 조회를 사용하여 장치 제조업체를 표시합니다.
  • 통합 포트 스캐너: 발견된 호스트에 대한 선택적 서비스 검색 (권한이 있는 장치만 스캔하세요!).
  • HTTP API를 갖춘 데몬 모드: 백그라운드에서 실행되고 다른 도구와 통합됩니다.
  • 테마 및 설정: YAML 구성을 통해 모양과 동작을 개인화합니다.

Installation

Homebrew를 통해 brew로:

root@kitploit:~
brew install whosthere

NixOS에서 nix로:

root@kitploit:~
nix profile install nixpkgs#whosthere

Arch Linux에서 yay로:

root@kitploit:~
yay -S whosthere-bin

패키지 관리자가 목록에 없으면 언제든지 Go로 설치할 수 있습니다:

root@kitploit:~
go install github.com/ramonvermeulen/whosthere@latest

또는 소스에서 빌드:

root@kitploit:~
git clone https://github.com/ramonvermeulen/whosthere.git
cd whosthere
make build

또한 릴리스 페이지에서 미리 빌드된 바이너리를 다운로드할 수 있습니다.

Usage

대화형 검색을 위해 TUI 실행:

root@kitploit:~
whosthere

단일 스캔을 수행하고 결과를 출력하기 위해 CLI로 실행:

root@kitploit:~
whosthere scan -t 5

JSON 파일로 결과 출력:

root@kitploit:~
whosthere scan -t 5 --json --pretty > devices.json

HTTP API를 갖춘 데몬으로 실행:

root@kitploit:~
whosthere daemon --port=8080

추가 명령줄 옵션은 다음을 실행하여 확인할 수 있습니다:

root@kitploit:~
whosthere --help

Key bindings (TUI)

Configuration

Whosthere는 다음 우선순위(높음에서 낮음 순)로 여러 구성 방법을 지원합니다:

  1. 명령줄 플래그 - 최고 우선순위. 사용 가능한 플래그는 whosthere --help를 참조하세요.
  2. 환경 변수 - WHOSTHERE__ 접두사 사용. 환경 변수를 통한 구성을 참조하세요.
  3. 구성 파일 - YAML 구성 파일. 구성 파일을 참조하세요.
  4. 기본값 - 대체 기본값. config.go의 DefaultConfig()를 참조하세요.

Configuration File

Whosthere는 다음 순서로 구성 파일을 찾으며, 처음 발견된 파일을 사용합니다:

  1. --config 플래그 또는 WHOSTHERE_CONFIG 환경 변수를 통해 지정된 경로
  2. $XDG_CONFIG_HOME/whosthere/config.yaml (XDG_CONFIG_HOME이 설정된 경우)
  3. ~/.config/whosthere/config.yaml (기본 위치)

구성 예제:

root@kitploit:~
# Uncomment the next line to configure a specific network interface - uses OS default if not set
# network_interface: eth0

# When enabled, devices from all network interfaces are shown and persist when switching interfaces
# Note: if two interfaces share the same subnet (e.g. both use 192.168.1.x), devices may get merged
# since they are identified by IP address. Use with caution on overlapping subnets.
all_interfaces: false

# How often to run discovery scans
scan_interval: 20s

# Maximum timeout for each scan, recommended to be less than the scan interval
scan_timeout: 10s

scanners:
  mdns:
    enabled: true
  ssdp:
    enabled: true
  arp:
    enabled: true

sweeper:
  enabled: true
  interval: 5m
  timeout: 20s

port_scanner:
  timeout: 5s
  # List of TCP ports to scan on discovered devices
  tcp: [21, 22, 23, 25, 80, 110, 135, 139, 143, 389, 443, 445, 993, 995, 1433, 1521, 3306, 3389, 5432, 5900, 8080, 8443, 9000, 9090, 9200, 9300, 10000, 27017]

splash:
  enabled: true
  delay: 1s

theme:
  # When disabled, the TUI will use the terminal it's default ANSI colors
  # Also see the NO_COLOR environment variable to completely disable ANSI colors
  enabled: true

  # See the complete list of available themes at https://github.com/ramonvermeulen/whosthere/tree/main/internal/ui/theme/theme.go
  # Set name to "custom" to use the custom colors below
  # For any color that is not configured it will take the default theme value as fallback
  name: default

  # Disable ANSI colors completely, overrides theme.enabled
  # Can also be set via NO_COLOR or WHOSTHERE__THEME__NO_COLOR environment variables
  # no_color: false

  # Custom theme colors (uncomment and set name: custom to use)
  # primitive_background_color: "#000a1a"
  # contrast_background_color: "#001a33"
  # more_contrast_background_color: "#003366"
  # border_color: "#0088ff"
  # title_color: "#00ffff"
  # graphics_color: "#00ffaa"
  # primary_text_color: "#cceeff"
  # secondary_text_color: "#6699ff"
  # tertiary_text_color: "#ffaa00"
  # inverse_text_color: "#000a1a"
  # contrast_secondary_text_color: "#88ddff"

Environment Variables

일반 환경 변수

환경 변수를 통한 구성

YAML 구성에서 사용 가능한 모든 구성 옵션은 WHOSTHERE__ 접두사(이중 밑줄 참고)를 사용하여 환경 변수를 통해 설정할 수 있습니다. 중첩된 구성 키는 이중 밑줄로 구분되며, 키는 대소문자를 구분하지 않습니다.

예시:

  • WHOSTHERE__SPLASH__ENABLED=false - 스플래시 화면을 비활성화하며, YAML 구성의 splash.enabled: false에 해당합니다.
  • WHOSTHERE__SPLASH__DELAY=2s - 스플래시 화면 지연을 2초로 설정하며, YAML 구성의 splash.delay: 2s에 해당합니다.
  • WHOSTHERE__SCAN_INTERVAL=30s - 스캔 간격을 30초로 설정하며, YAML 구성의 scan_interval: 30s에 해당합니다.
  • WHOSTHERE__SCANNERS__MDNS__ENABLED=false - mDNS 스캐너를 비활성화하며, YAML 구성의 scanners.mdns.enabled: false에 해당합니다.
  • WHOSTHERE__PORT_SCANNER__TCP=80,443,8080 - 사용자 정의 TCP 포트를 스캔하도록 설정하며, YAML 구성의 port_scanner.tcp: [80, 443, 8080]에 해당합니다.
  • WHOSTHERE__THEME__NAME=cyberpunk - 테마를 사이버펑크로 설정하며, YAML 구성의 theme.name: cyberpunk에 해당합니다.

Daemon mode HTTP API

Whosthere를 데몬 모드로 실행하면 매우 간단한 HTTP API를 노출하며, 다음 엔드포인트가 있습니다:

메서드엔드포인트설명
GET/devices발견된 모든 장치 목록 가져오기
GET/device/{ip}

Themes

테마는 구성 파일을 통해 또는 런타임 시 CTRL+t 키 바인딩을 통해 구성할 수 있습니다. 사용 가능한 테마의 전체 목록은 여기에서 확인할 수 있으며, 자신의 테마를 추가하려면 PR을 열어 주세요!

테마 구성 예제:

root@kitploit:~
theme:
  enabled: true
  name: cyberpunk

name이 custom으로 설정되면 다른 색상 옵션을 사용하여 자신만의 사용자 정의 테마를 만들 수 있습니다. enabled 옵션이 false로 설정되면 TUI는 터미널의 기본 ANSI 색상을 사용합니다. NO_COLOR 환경 변수가 설정되면 모든 ANSI 색상이 비활성화됩니다.

Logging

로그는 애플리케이션의 상태 디렉터리에 기록됩니다:

  • $XDG_STATE_HOME/whosthere/app.log (XDG_STATE_HOME이 설정된 경우)
  • ~/.local/state/whosthere/app.log (대체 Linux/MacOS)
  • %LOCALAPPDATA%/whosthere/app.log (대체 Windows)

TUI 모드로 실행하지 않을 때는 콘솔에도 로그가 기록됩니다.

Platforms

Whosthere는 다음 플랫폼을 지원합니다:

  • Linux
  • macOS
  • Windows

Known Issues

클립보드 기능이 작동하려면 go-clipboard의 포크가 사용됩니다. OS에 맞는 적절한 복사 도구가 설치되어 있는지 확인하세요:

OS지원되는 복사 도구
Darwinpbcopy
Windowsclip.exe

Disclaimer

Whosthere는 자신의 홈 네트워크와 같이 네트워크 검색 및 스캔을 수행할 권한이 있는 네트워크에서 사용하도록 설계되었습니다. 허가되지 않은 네트워크 스캔은 불법이거나 비윤리적일 수 있습니다. 이 도구를 사용하기 전에 항상 적절한 승인을 받아야 합니다.

이 도구는 주로 교육 목적과 홈 네트워크 탐색을 위해 만들어졌습니다. 기능적이고 유용하지만 전문적인 수준의 네트워크 모니터링 솔루션으로 간주되어서는 안 됩니다. 결과는 권한 없는 스캔 기술을 기반으로 하며 포괄적이지 않을 수 있습니다. 중요한 네트워크 분석이나 보안 평가를 위해서는 공식 지원을 받는 전문 도구를 사용하는 것을 고려하세요.

Contributing

기능 요청, 버그 신고, 개선 사항 등의 기여와 제안을 환영합니다! GitHub 리포지토리에 이슈를 열거나 풀 리퀘스트를 제출해 주세요. 주요 변경 사항을 구현하기 전에 GitHub 이슈에서 논의해 주시기 바랍니다.

도구 다운로드
Key동작
/정규 표현식 검색 시작
k위
j아래
g맨 위로 이동
G맨 아래로 이동
y선택한 장치의 IP 복사
Y선택한 장치의 MAC 복사
enter장치 세부 정보 표시
CTRL+t테마 선택기 전환
CTRL+i인터페이스 선택기 전환
CTRL+c/q애플리케이션 중지
ESC검색 지우기 / 돌아가기
p (details view)장치에서 포트 스캔 시작
tab (modal view)버튼 선택 전환
변수설명
WHOSTHERE_CONFIG구성 파일의 경로로, 기본 위치를 재정의할 수 있습니다.
WHOSTHERE_LOG로그 레벨을 설정합니다 (예: debug, info, warn, error). 기본값은 info입니다.
NO_COLORTUI에서 ANSI 색상을 비활성화합니다.
특정 장치의 세부 정보 가져오기
GET/health상태 확인
Linux/FreeBSD/NetBSD/OpenBSD/DragonflyX11: xsel, xclip
Wayland: wl-copy