Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
sparrow-wifi — 차세대 GUI 기반 WiFi 및 Bluetooth 분석기 (Linux용) | Kitploit
도구/GitHubGitHub/ghostop14/sparrow-wifi
OSINT (Open Source Intelligence)ReconnaissanceWi-Fi AuditingBluetooth SecurityNetwork MappingInformation GatheringWireless SecurityLog Analysis
GitHubghostop14/sparrow-wifi

sparrow-wifi

차세대 GUI 기반 WiFi 및 Bluetooth 분석기 (Linux용)

저장소 보기
1.6k190321일 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Sparrow-WiFi

Sparrow-WiFi는 Linux용 2.4GHz 및 5GHz WiFi 및 Bluetooth 스펙트럼 인식 도구입니다. WiFi 스캐닝, Bluetooth Low Energy 및 Classic 탐지, 소프트웨어 정의 무선 스펙트럼 분석(HackRF, Ubertooth), GPS 추적, FAA RemoteID 드론 탐지, 드론/로버 탑재 원격 운영, 그리고 ECS 8.17 인덱싱을 Elasticsearch 또는 OpenSearch에 통합하는 단일 플랫폼입니다. 전체가 Python 3로 작성되었습니다.

이 프로젝트는 독립적으로 또는 함께 작동하는 네 가지 구성 요소를 포함합니다:

구성 요소인터페이스목적
Sparrow-WiFiPyQt5 데스크톱 GUIWiFi/BT 스캐닝, 스펙트럼 분석, 소스 추적, 워드라이빙
Sparrow Agent헤드리스 HTTP 서버원격 스캐닝, 드론/로버 배포, 타사 통합
Sparrow DroneID웹 기반 (브라우저)WiFi 및 Bluetooth LE를 통한 FAA RemoteID 드론 탐지
Sparrow Elastic Bridge헤드리스 CLI 서비스WiFi/BT 관측 데이터의 ECS 8.17 인덱싱 → Elasticsearch / OpenSearch

Sparrow Agent와 Sparrow DroneID는 JSON REST API를 노출하여 다른 애플리케이션이 스캔 결과를 조회하고, 스캔을 트리거하고, 드론 탐지 정보를 가져오고, 무선/드론 인식을 자체 워크플로에 통합할 수 있도록 합니다. Elastic Bridge는 에이전트의 REST API를 사용하고 ECS 8.17 문서를 번들 Kibana 대시보드와 함께 전송합니다.


새로운 기능 (2026년 4월)

이번 릴리스는 이전 버전에 비해 세 가지 중요한 개선 사항을 포함합니다:

  • Sparrow Agent: 단일-비행 WiFi 스캔 병합. 여러 HTTP 클라이언트(DroneID 앱, Elasticsearch 브리지, GUI)가 동시에 /wireless/networks/<iface>에 접근할 때, 에이전트는 이전에 중복된 N개의 iw scan 호출을 시작하여 인터페이스별 잠금에서 직렬화되어 스캔 지연 시간이 클라이언트 수만큼 곱해졌습니다. 이제 첫 번째 요청이 실제로 스캔하는 "리더"가 되며, 동시 요청은 threading.Event에서 대기하고 리더의 결과를 공유합니다. 또한 잠금 생성 TOCTOU 수정 및 인터페이스별 잠금에 대한 예외 안전성을 포함합니다.
  • Sparrow DroneID — WiFi(ASTM F3411 NAN, 비콘 공급업체 IE, DJI 독점 DroneID 프로토콜) 및 Bluetooth LE(BT4/BT5 Legacy advertising)를 통한 FAA RemoteID 탐지를 위한 새로운 웹 기반 애플리케이션입니다. 지오존 오버레이, Slack 통합을 포함한 다중 상태 알림, KML 내보내기, Cursor-on-Target 출력, Elasticsearch / OpenSearch로의 선택적 ECS 8.17 인덱싱(사용자 정의 droneid.* 네임스페이스 포함) 및 다중 장치 반응형 웹 UI를 포함합니다. 아래 Sparrow DroneID 섹션을 참조하십시오.
  • 현대화된 Elasticsearch / OpenSearch 브리지 — sparrow-elastic.py 브리지가 ECS 8.17 문서를 생성하도록 재작성되었으며(이전 ECS 1.5), 이제 Elasticsearch 8.x 및 OpenSearch 2.x를 모두 지원하고, ILM/ISM 수명 주기 정책 및 롤오버 쓰기 별칭이 포함된 컴포저블 인덱스 템플릿을 자동으로 부트스트랩하며, OUI 공급업체 보강 및 규칙 기반 장치 분류(선택적 Fingerbank 핑거프린팅 포함)를 수행하고, 4개의 번들 Kibana 대시보드와 6개의 레거시 보존 시각화를 제공합니다. 레거시 ECS 1.5 브리지는 legacy/sparrow-elastic.py에 보존되어 있습니다. Elasticsearch / OpenSearch 통합을 참조하십시오.

Sparrow-WiFi (데스크톱 GUI)

원래 Sparrow 애플리케이션은 inSSIDer 및 LinSSID와 같은 도구를 대체하는 포괄적인 GUI 기반 솔루션을 제공하며, 기본 스캐닝을 훨씬 넘어서는 기능을 갖추고 있습니다:

  • WiFi 스캐닝 — 2.4GHz 및 5GHz SSID 탐지, 신호 강도, 채널 사용률
  • 소스 추적 — 높은 샘플링 속도와 텔레메트리 윈도우를 사용하여 WiFi 및 Bluetooth 소스를 찾는 헌트 모드
  • 스펙트럼 분석 — Ubertooth One 또는 HackRF One을 통한 실시간 2.4/5GHz 스펙트럼 오버레이
  • Bluetooth — BLE 광고 스캐닝, iBeacon 탐지/광고, 클래식 + LE를 위한 Ubertooth 무차별 모드
  • 원격 에이전트 — 분산 스캐닝, 드론/로버 탑재 운영 및 Raspberry Pi 배포를 위한 헤드리스 에이전트(sparrowwifiagent.py)
  • GPS 통합 — gpsd, 정적 좌표 또는 MAVLink (드론 GPS)
  • 매핑 — GPS 트랙이 포함된 스캔 결과의 Google Maps / OpenStreetMap 시각화
  • 가져오기/내보내기 — CSV, JSON 및 원시 iw scan 출력
  • Elasticsearch / OpenSearch — ILM/ISM 수명 주기 관리, 장치 분류, 선택적 Fingerbank 핑거프린팅 및 번들 Kibana 대시보드가 포함된 WiFi 및 Bluetooth 스캔 데이터의 ECS 8.17 호환 인덱싱
  • Falcon 플러그인 — 침투 테스트를 위한 Aircrack-ng 통합 (모니터 모드, 숨겨진 SSID 탐지, deauth, WEP/WPA 캡처)

스크린샷


Sparrow DroneID (웹 애플리케이션)

FAA 의무 원격 식별(RemoteID) 브로드캐스트를 디코딩하는 독립형 웹 기반 드론 탐지 및 추적 시스템입니다. Python HTTP 서버로 실행되며 네트워크상의 모든 장치에서 접근 가능한 브라우저 기반 UI를 제공합니다.

기능

  • WiFi 캡처 — ASTM F3411 NAN 액션 프레임, 비콘 공급업체 IE 및 DJI 독점 DroneID 디코딩
  • Bluetooth LE 캡처 — ASTM F3411 BT4/BT5 Legacy 광고 디코딩(UUID 0xFFFA)
  • 실시간 지도 — 쿼드콥터 아이콘, 방향 표시기, 운용자 위치 마커 및 드론-운용자 라인이 있는 Leaflet 기반 지도
  • 한눈에 보는 라벨 — 지도상의 각 드론 아이콘 아래에 운용자 ID 및 지상 고도(AGL) 표시
  • 세부 팝업 — 드론 클릭 시 일련번호, 등록 ID, 운용자 ID, 유형, 속도, 방향, 고도, 수신자로부터의 방위/거리, BVLOS 상태 확인
  • 알림 시스템 — 새로운 드론, 고도 위반, 속도 위반 및 신호 손실에 대한 구성 가능한 알림, 오디오 톤, 시각 토스트, Slack 웹훅 알림 및 일반 외부 알림 수집 API로의 선택적 bearer-token JSON POST 포함 (아래 API 기반 알림 참조)
  • 알림 확인 — 세 가지 상태 워크플로(활성/확인됨/해결됨)와 운용자 ID, 모든 연결된 장치에서 공유
  • 공항 지오존 — 주변 공항(OurAirports 데이터) 및 FAA 금지/제한 공역 다각형 자동 다운로드 및 표시, 오프라인 작동을 위해 로컬에 캐시됨
  • GPS — gpsd 통합 또는 구성 가능한 정적 좌표
  • 기록 및 재생 — SQLite 기반 탐지 기록, 타임라인 재생 및 KML 내보내기
  • Cursor-on-Target (CoT) — SA 통합을 위한 멀티캐스트 CoT 출력
  • 다중 장치 — 웹 UI가 데스크톱, 태블릿 및 휴대폰에서 동시에 작동
  • 미터법 / 야드파운드법 — UI 및 알림 전반에 걸친 전체 단위 선호도 지원

웹 UI는 시작되면 http://localhost:8097에서 실행됩니다. 설정은 아래 설치를 참조하고, 프로그래밍 방식 액세스는 API 참조를 참조하십시오.

API 기반 알림

Slack 웹훅 외에도 Sparrow DroneID는 각 트리거된 알림을 일반 외부 알림 수집 엔드포인트에 POST할 수 있습니다. 이 채널은 기본적으로 비활성화되어 있습니다. 설정 → 알림 → API 기반 알림에서 구성하십시오:

  • 활성화 — 켜기/끄기 토글
  • API 엔드포인트 루트 — 경로 접두사를 포함한 전체 루트 URL, 예: http://MY_API_HOST:PORT/API_ROOT
  • 도메인 — 수신 API가 알림을 라우팅하는 데 사용하는 불투명 테넌트 문자열
  • Bearer 토큰 — Authorization: Bearer ... 헤더로 전송됨, 저장되면 UI에서 마스킹됨
  • TLS 확인 — 자체 서명 또는 사설 CA 엔드포인트의 경우 체크 해제
  • 인증 테스트 — 수신자의 확인 엔드포인트를 호출하고 명확한 통과/실패를 보고
  • 테스트 메시지 보내기 — 합성 알림(rule.category: "test", 일련번호 TEST-0000)을 POST하여 실제 드론을 기다리지 않고 수신자를 종단간 테스트할 수 있음

엔드포인트 계약

Sparrow DroneID는 구성된 루트 URL에 대해 두 가지 호출을 수행합니다:

동사경로목적
POST{root}/v1/alerts/verify자격 증명 확인 — 본문 {"domain": "<configured>"}. 수신자는 성공 시 200 {"status":"ok"}를, 잘못된 토큰 시 401을 응답해야 합니다.
POST{root}/v1/alerts알림 발생 — 본문은 아래 JSON입니다. 수신자는 성공 시 201 {"alert_id":"..."}를 응답해야 합니다. 503 응답은 지수 백오프(3회 재시도)로 재시도됩니다. 4xx는 재시도 없이 중단됩니다. 200 {"status":"dropped"}는 도메인이 업스트림에서 비활성화되었음을 나타냅니다.

두 호출 모두 Authorization: Bearer <token> 및 Content-Type: application/json 헤더를 전송합니다.

페이로드 형태```json

{ "domain": "", "alert": { "message": "", "observer": { "name": "<operator_name or 'Sparrow DroneID'>", "type": "drone-sensor", "geo": {"location": {"lat": 0.0, "lon": 0.0}} }, "rule": {"name": "", "category": "drone_detection"}, "event": { "severity": 40, "category": "network", "action": "new_drone" }, "labels": { "serial": "", "vendor": "", "ua_type": "", "alert_type": "new_drone | altitude_max | speed_max | signal_lost" }, "source": {"geo": {"location": {"lat": 0.0, "lon": 0.0}}}, "details": { "operator_id": "...", "registration_id": "...", "self_id_text": "...", "mac_address": "...", "protocol": "...", "rssi": -68, "range_m": 1234.5, "bearing_deg": 215.0, "bearing_cardinal": "SW", "speed_mps": 5.2, "direction_deg": 240.0, "altitude_m_agl": 42.0, "detail": "..." } } }

`observer.geo.location`는 수신기에 GPS 고정이 있을 때 포함되며, `source.geo.location`는 드론이 위치를 브로드캐스트할 때 포함됩니다. 심각도는 ECS 규칙을 따릅니다(낮을수록 더 긴급함): 경고(`new_drone`, `altitude_max`, `speed_max`)는 `40`, 정보성 이벤트(`signal_lost`)는 `70`입니다. 친구 태그가 지정된 드론은 운영자 측의 "친구 드론에 대한 알림" 토글이 꺼져 있을 때 알림을 발생시키지 않으므로 이 엔드포인트에도 도달하지 않습니다.

**테스트 메시지 보내기** 버튼으로 전송되는 합성 테스트 경보는 `rule.category: "test"`, `event.action: "test"`, `event.severity: 70`, 직렬 `TEST-0000`을 사용하여 수신기가 이를 인식하고 운영 대시보드에서 제외할 수 있도록 합니다.

---

## 시스템 요구 사항
도구 다운로드