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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/nccgroup/blesuite
Packet Sniffing & AnalysisBluetooth SecurityVulnerability AnalysisInformation GatheringFuzzingWireless SecurityPenetration TestingHardware & IoT Security
GitHubnccgroup/blesuite

BLESuite

BLESuite is a Python package that provides an easier way to test Bluetooth Low Energy (BLE) device

저장소 보기
191435년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

BLESuite README

개요

BLESuite는 Bluetooth Low Energy(BLE) 장치 통신을 보다 사용자 친화적으로 만들고 신속한 BLE 장치 테스트를 가능하게 하는 Python 패키지입니다. BLESuite 버전 2는 PyGattlib 및 BlueZ에 대한 의존성을 제거하고, 수정된 버전의 PyBT(https://github.com/mikeryan/PyBT)를 사용하여 자체 BLE 스택을 구현하고 관리합니다. 이 버전은 통신 신뢰성을 높이고, 통신 유연성을 증가시키며, 장치 스캐닝을 개선하고, 장치 퍼징을 Bluetooth 스택의 호스트 계층에서 가능하게 합니다. BLESuite가 사용하는 스택은 의도적으로 장치에 잘못된 형식의 요청/응답을 보낼 수 있게 하여 장치 테스트를 가능하게 합니다.

특징:

  • 기본 BLESuite 작업을 용이하게 하는 2개의 CLI 도구를 포함합니다: blesuite 및 ble-replay
  • Central 및 Peripheral BLE 역할 지원
  • 여러 HCI 장치(예: USB Bluetooth 어댑터) 지원
  • Central 역할에 사용되는 HCI 장치로, 주변 장치에 대한 다수의 동시 연결 지원(HCI 컨트롤러의 최대 연결 수에 따라 제한됨)
  • BLE 장치 스캔
  • 모든 GATT 엔티티에 대해 BLE 장치 스캔
  • 피어 주변 장치에 ATT 요청을 빠르고 쉽게 전송
  • 대상 장치에 신중하게 구성된(또는 의도적으로 잘못된 형식의) L2CAP 및 ATT 패킷을 구성 및 전송
  • JustWorks LE Legacy 페어링 지원. 추가 페어링 방법은 이후 버전에서 제공될 예정입니다.
  • 추상 객체 정의와 다양한 헬퍼 함수를 사용하여 GATT 서버를 빠르게 구축
  • GATT 서버 가져오기 및 내보내기 지원
  • Security Manager Long Term Key 데이터베이스 가져오기 및 내보내기 지원
  • 선택적으로, Python API 친화적인 BlueZ BDADDR 도구 버전을 설치할 수 있습니다: (https://git.kernel.org/pub/scm/bluetooth/bluez.git/tree/tools/bdaddr.c) 사용자가 호스트의 Bluetooth 어댑터의 BD_ADDR를 스푸핑할 수 있게 해줍니다(일부 칩셋만 지원. 이는 BlueZ의 bdaddr.c 수정 버전입니다.)

독자 참고 사항:

Bluetooth Low Energy 기능에 접근하려면 이를 지원하는 Bluetooth 어댑터에 접근할 수 있어야 합니다.

왜 BLESuite인가?

BLESuite의 목표는 보안 평가를 위해 대상 BLE 장치와의 통신을 신속하게 스크립팅하는 간소화된 방법을 제공하는 것입니다. PyGattlib와 BlueZ에서 PyBT로 전환함에 따라 이제 BLE 스택을 더욱 잘 제어할 수 있으며, 이를 사용하여 대상 장치의 다양한 BLE 스택 계층을 테스트할 수 있습니다.

또한, BLESuite는 더 이상 Central 역할만 사용하도록 제한되지 않습니다. 이제 BLESuite는 Peripheral 역할을 지원하며, 사용자가 Central 역할 BLE 장치(또는 이중 역할 장치)를 테스트하는 데 사용할 수 있는 GATT 서버를 빠르게 구성하고 구축할 수 있게 합니다.

설치

다음은 BLESuite Python 패키지의 설치 지침입니다.

사전 요구 사항

지원 운영 체제:

BLESuite는 Debian 9.3을 대상으로 개발 및 테스트되었습니다. 이 라이브러리는 다른 Linux 배포판에서도 지원될 수 있지만, 현재 지원은 보장되지 않습니다.

참고: Fedora 28에서 BLESuite를 사용하려는 최근 시도는 다음 항목들을 설치하여 달성되었습니다:

  • dnf install bluez-libs-devel python2-devel python2-sphinx python2-gevent
  • 나머지 설치 지침에 따라 제공된 버전의 Scapy 및 BLESuite를 설치하십시오.

Fedora 28에서는, BLESuite와 관련하여 반복되지 않는 문제가 하나 보고되었습니다. 이는 들어오는 ATT 요청을 처리할 때 Debian 9.3 설치에는 존재하지 않는 TypeError와 관련된 것입니다.

수정 기여를 환영합니다!

필수 소프트웨어

BLESuite를 사용하기 위한 요구 사항은 다음과 같습니다:

  • libbluetooth-dev
  • libpython-dev
  • python-sphinx
  • gevent (https://pypi.org/project/gevent/)
  • Scapy (https://github.com/secdev/scapy/) (지금은 반드시 이 저장소의 복사본에서 설치해야 합니다)
    • 이 버전의 Scapy는 bluetooth.py 계층에 대한 여러 수정 사항을 포함하며, 여러 새로운 패킷 유형을 지원하고 BluetoothUserSocket을 정상적으로 닫습니다. 이러한 변경 사항은 현재 Scapy 메인라인에서는 사용할 수 없습니다.
  • pycrypto (https://pypi.org/project/pycrypto/)
  • pyshark (https://github.com/KimiNewt/pyshark/)
  • prettytable (https://pypi.org/project/PrettyTable/)
  • sphinx_rtd_theme (https://pypi.org/project/sphinx_rtd_theme/) - 문서 컴파일용

libbluetooth-dev, libpython-dev 및 python-sphinx를 설치한 후 다음을 실행하여 나머지 Python 의존성을 설치하십시오:

root@kitploit:~
pip install -r requirements.txt

문서

docs 폴더에서 다음을 실행하십시오:

root@kitploit:~
make html

그러면 docs/_build/html에서 전체 문서 및 참조 가이드를 확인할 수 있습니다.

전체 설치

Python 패키지를 설치하려면 다음 명령을 실행하십시오:

root@kitploit:~
python setup.py install

BDADDR Python API를 설치하지 않으려 하거나 설치에 문제가 있는 경우, setup.py에서 다음 줄을 주석 처리한 후 위 명령을 다시 실행하십시오:

root@kitploit:~
ext_modules = [c_ext],

향후 계획

전체 페어링 지원

현재 BLESuite는 LE Legacy JustWorks 페어링만 지원할 수 있습니다. Security Manager는 대부분 설계되었지만, LESC 및 대체 연관 모델에 대한 나머지 암호화 프로그래밍은 아직 구현해야 합니다.

Signed write 지원

ATT signed write 작업은 현재 BLESuite에서 지원되지 않습니다. 자주 사용되는 작업은 아니지만, 보안 모드 2를 지원하려면 지원되어야 합니다.

프라이빗 주소 추가 지원

BLESuite는 현재 Public 및 Random(static) 주소만 지원합니다. 그러나 Random 주소는 두 가지 하위 유형(Static 또는 Private)을 가질 수 있습니다. Random Private 주소는 또한 BLESuite가 현재 지원하지 않는 두 가지 하위 유형으로 나눌 수 있습니다: 비해석 가능한 프라이빗 주소(Non-resolvable Private address)와 해석 가능한 프라이빗 주소(Resolvable Private address, 페어링 중 교환된 IRK를 사용하여 해석됨).

따라서 호스트 어댑터에 이러한 유형의 주소를 설정하는 기능은 현재 BLESuite에서 노출되지 않습니다. 또한, 교환된 IRK를 기반으로 피어의 Random resolvable 주소를 해석하는 기능도 아직 구현되지 않았습니다.

BLESuite로 구축된 추가 도구

라이브러리가 구축되면, 다음 단계는 이 라이브러리를 활용하는 보안 평가 도구를 구축하는 것입니다.

이 라이브러리에 포함된 예로는 ble-replay가 있으며, BLE 패킷 캡처를 받아 대상 장치로 GATT 트래픽을 재생할 수 있습니다. ble-replay는 재생 공격과 관련된 애플리케이션 계층 보안 결함을 신속하게 식별하는 데 도움이 될 수 있습니다.

이러한 종류의 도구는 패킷 캡처를 수동으로 분석하고 BLE 통신 테스트 사례를 수동으로 스크립팅하는 데 소요되는 시간을 줄여줍니다.

도구 다운로드