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

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
caeruleus — Linux/BlueZ에서 Bluetooth Low Energy 보안 테스트를 위한 단일 Go 바이너리: 스캔, GATT 열거, 읽기/쓰기/알림, characteristic 퍼징, JSON 출력으로 구조화된 평가 실행. | Kitploit
도구/GitHubGitHub/praetorian-inc/caeruleus
Bluetooth SecurityIoT SecurityVulnerability AnalysisScripting & AutomationInformation GatheringFuzzingWireless SecurityPenetration TestingHardware & IoT SecuritySecret DetectionRed Teaming
56456일 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHub
praetorian-inc/caeruleus

caeruleus

Linux/BlueZ에서 Bluetooth Low Energy 보안 테스트를 위한 단일 Go 바이너리: 스캔, GATT 열거, 읽기/쓰기/알림, characteristic 퍼징, JSON 출력으로 구조화된 평가 실행.

저장소 보기
Caeruleus - Bluetooth Low Energy 보안 테스트를 하나의 Go 바이너리로 통합

Caeruleus: BLE 테스팅 툴킷

Linux/BlueZ에서 전체 Bluetooth Low Energy 평가 워크플로우를 위한 하나의 Go 바이너리: 스캔, 열거, 읽기/쓰기/알림, 퍼징, 그리고 구조화된 보안 평가를 스크립트와 에이전트를 위한 JSON 출력과 함께 제공합니다.

Go License Go Report Card Release

Caeruleus는 Bluetooth Low Energy (BLE) 보안 테스트를 Linux BlueZ 스택 기반의 단일 Go 바이너리로 통합합니다. BlueZ D-Bus와 raw L2CAP/HCI 소켓을 통해 주변기기와 통신하며 전체 수명 주기를 다룹니다: 디바이스 검색, GATT 트리 탐색 및 읽기/쓰기, 알림 캡처, 쓰기 가능한 characteristic 퍼징, 그리고 반복 가능한 보안 평가 워크플로우 실행. 모든 명령은 스크립팅, 리포팅, LLM 에이전트를 위한 구조화된 -o json / -o jsonl 출력을 생성합니다.

공격적 보안 엔지니어가 기존의 bettercap, gatttool, hcitool, bluetoothctl, 그리고 일회성 Bleak 스크립트 더미를 대체하기 위해 만들었으며, Caeruleus는 사람이나 에이전트가 실제로 작업하는 수준에서 추상화를 유지합니다.

caeruleus: Bluetooth Low Energy의 "blue"를 뜻하는 라틴어

목차

  • 왜 Caeruleus인가?
  • 기능
  • 에이전트 환영
  • 설치
  • 빠른 시작
  • 명령 참조
  • 평가 워크플로우
  • Caeruleus 확장
  • 제한 사항
  • Praetorian 툴킷의 일부
  • FAQ
  • 기여
  • 보안
  • 라이선스

왜 Caeruleus인가?

BLE 보안 테스트의 표준 워크플로우는 함께 작동하도록 설계되지 않은 도구들을 뒤지는 보물찾기입니다:

  • hcitool / hciconfig — 어댑터 설정과 검색용이지만, 둘 다 BlueZ에서 더 이상 사용되지 않으며 많은 최신 배포판에서 누락되어 있습니다.
  • bettercap — ble.recon과 ble.enum용. 강력하지만, GATT 트리를 탐색하기 위해 전체 네트워크 공격 프레임워크를 설치해야 합니다.
  • gatttool — 핸들 읽기/쓰기용. 수년간 사용 중단되었지만 여전히 모든 튜토리얼에 등장합니다.
  • 커스텀 Bleak / pygatt 스크립트 — 더 깊은 작업을 위해.

각각 고유한 방언을 사용하며, 다음 단계로 파이프할 수 있는 기계 판독 가능한 출력을 내놓지 않으므로, 여러분이 직접 통합 계층이 되어 터미널 간에 MAC 주소와 핸들을 손으로 복사하게 됩니다. BlueZ 자체의 지원 프론트엔드(bluetoothctl, btmgmt)는 범용 관리 도구로, 평가 작업에 맞지 않는 추상화 수준에 있습니다.

Caeruleus는 그 전체 더미를 하나의 일관된 명령 표면으로 대체합니다:

사용 사례기존 방법Caeruleus 사용
주변 디바이스 검색hcitool lescan / bettercap ble.recon / bluetoothctl scan oncaeruleus scan
서비스/characteristic 나열 및 읽기bettercap ble.enum <mac>caeruleus enumerate -b <mac> --values
대화형 세션gatttool -I / bluetoothctlcaeruleus shell -b <mac>
핸들 읽기gatttool --char-read-hnd 0x0013caeruleus read -b <mac> -a 0x0013
핸들 쓰기gatttool -b <mac> --char-write-req -a 0x002c -n $(...)caeruleus write -b <mac> -a 0x002c --req -s "value"
알림 캡처커스텀 Bleak 로거caeruleus listen -b <mac> -a <handle>
인증되지 않은 노출 감사커스텀 Bleak 감사 스크립트caeruleus recon / caeruleus assess ...
characteristic 퍼징커스텀 퍼저 / boofuzzcaeruleus fuzz write -b <mac> -a <handle>
연결 파라미터, MTUhcitool con / btmgmt con-infocaeruleus conn-params -b <mac>
어댑터 전원 및 복구btmgmt power / hciconfig reset / rfkillcaeruleus doctor / caeruleus adapter power cycle

기능

모든 곳에서 구조화된 출력. 출력을 생성하는 모든 명령은 -o text|json|jsonl을 지원합니다. JSON은 부차적인 내보내기가 아닌 표준 표현이며, jsonl은 scan --live와 listen에 대해 이벤트당 하나의 레코드를 스트리밍합니다. enumerate --compact는 grep이나 LLM 컨텍스트 윈도우를 위해 characteristic당 하나의 key=value 라인을 출력합니다.

BLE 스택 상태. caeruleus doctor는 BlueZ와 커널 상태를 점검하고 OK/WARN/FAIL 체크리스트를 출력합니다: bluetoothd 실행 중, 어댑터 전원 켜짐, 누수된 검색 세션 없음, BlueZ 캐시 주소 vs MGMT 칩 라이브 주소, 2초 라이브 스캔 프로브, 그리고 안전한 대역의 ExchangeMTU. 각 비-OK 발견 사항은 구체적인 수정 명령을 포함하며, 종료 코드는 grep/diff 관례를 따릅니다 (0은 정상, 실패 시 2).

깔끔한 정리. SIGTERM/SIGHUP 시 도구는 연결 해제 경로를 실행하고 Connected=false가 BlueZ를 통해 전파될 때까지 폴링하므로, 주변기기는 감독 타임아웃 동안 멈추는 대신 즉시 재광고합니다. 크래시 후 "유령 연결"이 더 이상 없습니다.

스크립팅 및 자동화. serve/send는 Unix 소켓을 통해 하나의 GATT 링크를 열어 두므로 스크립트나 에이전트가 명령당 ~1.5초의 재연결 비용을 피할 수 있습니다; batch는 단일 영구 연결을 통해 stdin에서 명령을 실행합니다; listen --trigger-value는 알림을 설정하고, 쓰기를 발생시키고, 응답을 원자적으로 캡처합니다.

편의 세부 사항. GAP Appearance와 광고된 서비스로부터 디바이스 유형 추론 (시계는 원시 appearance 코드가 아닌 "Smartwatch"로 표시됨); 관대한 입력 파싱 (핸들을 0x002a, 0X2A, 또는 42로; 16진수를 deadbeef, de:ad:be:ef, 또는 0xdeadbeef로); caeruleus recipes는 19개의 일반적인 워크플로우를 나열하고 키워드 검색합니다; conn-params는 gatttool이나 bettercap 어느 쪽도 노출하지 않는 협상된 간격, 지연, 감독 타임아웃을 보여줍니다.

에이전트 환영

Caeruleus는 LLM 에이전트를 일급 사용자로 취급합니다. -o json / -o jsonl은 에이전트가 사람이 포맷한 테이블을 스크래핑하지 않고 파싱할 수 있는 토큰 효율적인 구조화 출력을 제공하며, 저장소는 모든 Agent Skills 호환 어시스턴트에게 명령 표면과 권장 평가 방법론을 가르치는 이식 가능한 Agent Skill (skills/caeruleus/SKILL.md)을 제공합니다. 에이전트를 디바이스로 향하게 하면 전체 방법론을 처음부터 끝까지 실행합니다.

벤치마크에서 Opus 4.8 (xHigh)이 Caeruleus와 그 스킬을 사용했을 때, 자유 도구 선택(이는 hcitool과 Bleak 스크립트에 손을 뻗었음)을 사용한 동일 모델 대비 **시간의 62%와 토큰의 70%**로 작업을 완료했습니다.

설치

Caeruleus는 BlueZ (bluetoothd)가 있는 Linux와 표준 BLE 어댑터를 대상으로 합니다. macOS나 Windows에서는 빌드되거나 실행되지 않습니다. 일부 raw-socket 명령은 root가 필요합니다.

Go 툴체인 사용:

go install github.com/praetorian-inc/caeruleus/cmd/caeruleus@latest

사전 빌드된 릴리스 바이너리 (x86_64 및 arm64): Releases 페이지에서 아키텍처에 맞는 아카이브를 다운로드하고, 압축을 풀고, caeruleus를 $PATH에 넣으세요.

소스에서:

git clone https://github.com/praetorian-inc/caeruleus
cd caeruleus
make build        # -> ./caeruleus
make test         # unit tests + shell tests

빠른 시작

어댑터를 점검한 다음, 주변에 무엇이 있는지 검색하세요:

$ caeruleus doctor
adapter: hci0
  [  OK] bluetoothd             active
  [  OK] Powered                true
  [  OK] Discovering            false
  [  OK] Address agreement      00:1A:7D:DA:71:13
  [  OK] LE scan healthy        saw advertisements
  [  OK] ExchangeMTU            247

$ caeruleus scan
ADDRESS            TYPE    RSSI  DEVICE  NAME
------------------------------------------------------------
9C:9C:1F:F2:88:86  public  -32           BLECTF_JohnsonSpace
C4:C0:B0:3B:5B:EF  random  -59           Aranet4 06D4B
DC:FD:B4:CA:B4:E9  random  -62           JBL Boombox 2

전체 GATT 트리를 탐색하고 모든 characteristic을 한 번에 읽은 다음, 개별 핸들을 찔러보세요:

$ caeruleus enumerate -b 9C:9C:1F:F2:88:86 --values
SVC HND  CHR HND  CHR UUID  PROPS   HEX               ASCII
0x0014   0x0015   0x2A00    R       424c457b46...     BLE{F4K3_1D3NT1TY}
0x0028   0x002d   0xFF03    R       424c457b50...     BLE{T0K3N_S4V3R}
0x0028   0x002f   0xFF05    R,W     577269746...      Write anything here

$ caeruleus read -b 9C:9C:1F:F2:88:86 -a 0x002d
0x002d hex=424c457b503447335f5455524e33527d ascii="BLE{T0K3N_S4V3R}"

$ caeruleus write -b 9C:9C:1F:F2:88:86 -a 0x002f -s "praetorian"
0x002f written=10 type=request

대화형 shell (gatttool 스타일 동사), stdin batch 모드, 그리고 serve/send 웜링크 데몬은 여러 작업에 걸쳐 하나의 연결을 유지해야 할 때 사용할 수 있습니다.

명령 참조

그룹명령
검색scan, enumerate, primary, characteristics
GATT 작업read, write, raw-write, listen, cccd, mtu
연결 관리pair/unpair, conn-params, disconnect, forget
스크립팅 및 자동화shell, batch, serve/send
보안 평가recon, assess check-auth, assess encryption, assess pairing, assess wwr, assess dfu
퍼징fuzz write (--raw 포함), fuzz replay
어댑터 및 진단doctor, adapter, bdaddr, monitor

모든 명령의 전역 플래그: -b/--bdaddr, -i/--adapter (기본값 hci0), -t/--timeout, -o/--format, -q/--quiet, -v/--verbose. 권한이 필요한 명령 (conn-params, monitor, fuzz write --raw, cccd --raw, raw-write, mtu --set, bdaddr --set)은 root가 필요합니다.

도구 다운로드