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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/mikeryan/crackle
Bluetooth SecurityEncryption/Decryption ToolsExploitationWireless SecurityCryptography
GitHubmikeryan/crackle

crackle

BLE 암호화 크랙 및 복호화

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

crackle

crackle은 BLE 암호화(일명 Bluetooth Smart)를 크랙합니다.

crackle은 BLE 페어링 과정의 취약점을 이용하여 공격자가 TK(임시 키)를 추측하거나 매우 빠르게 무차별 대입할 수 있도록 합니다. TK와 페어링 과정에서 수집된 다른 데이터를 통해 STK(단기 키)와 이후 LTK(장기 키)를 수집할 수 있습니다.

STK와 LTK를 사용하면 마스터와 슬레이브 간의 모든 통신을 복호화할 수 있습니다.

crackle을 사용하기 전에 FAQ를 검토하여 상황에 적합한 도구인지 확인하십시오.

crackle은 Mike Ryan [email protected]이 작성했습니다. 자세한 내용은 웹 사이트를 참조하십시오: http://lacklustre.net/projects/crackle/

Build Status

목차

  • 작동 모드
    • TK 크랙
    • LTK로 복호화
  • crackle 실행
  • 샘플 파일
  • 자주 묻는 질문
  • 참고 자료
  • 감사의 말

작동 모드

crackle에는 두 가지 주요 작동 모드인 TK 크랙과 LTK로 복호화가 있습니다.

TK 크랙

이 모드는 -i를 사용하여 crackle에 입력 파일을 제공할 때 사용되는 기본 모드입니다.

TK 크랙 모드에서 crackle은 BLE 페어링 이벤트 중에 사용된 TK를 무차별 대입합니다. crackle은 Just Works™ 및 6자리 PIN의 TK가 범위 [0,999999]의 값을 128비트로 패딩한 값이라는 사실을 이용합니다.

crackle은 이 무차별 대입을 수행하기 위해 여러 방법을 사용합니다: 입력 파일에 모든 페어링 패킷이 있는 경우 매우 빠른 방법과 최소 패킷 집합만 있는 경우 느린 방법이 있습니다.

이 모드를 사용하려면 하나 이상의 BLE 페어링 대화가 포함된 연결이 있는 입력 PCAP 또는 PcapNG 파일로 crackle을 실행하십시오. crackle은 모든 연결을 분석하고, 주어진 연결을 크랙할 수 있는지 여부를 결정하며, 각 연결을 크랙하기 위한 최상의 전략을 자동으로 선택합니다.

TK가 성공적으로 크랙되면 crackle은 나머지 연결을 암호화하는 데 사용된 나머지 키를 유도하고 이후 오는 모든 암호화된 패킷을 복호화합니다. LTK가 교환되면(일반적으로 암호화가 설정된 후 첫 번째로 수행되는 작업) crackle은 이 값을 stdout으로 출력합니다. LTK는 두 엔드포인트 간의 향후 통신을 복호화하는 데 사용할 수 있습니다.

-o를 사용하여 crackle에 출력 파일을 제공하면 복호화된 데이터(이미 암호화되지 않은 데이터 외에)가 포함된 새 PCAP 파일을 생성합니다.

사용 예:

root@kitploit:~
$ crackle -i input.pcap -o decrypted.pcap

LTK로 복호화

LTK로 복호화 모드에서 crackle은 사용자가 제공한 LTK를 사용하여 마스터와 슬레이브 간의 통신을 복호화합니다. 이 모드는 TK 크랙 모드의 복호화 부분과 동일합니다.

사용 예:

root@kitploit:~
$ crackle -i encrypted.pcap -o decrypted.pcap -l 81b06facd90fe7a6e9bbd9cee59736a7

crackle 실행

TK 크랙 모드

TK 크랙 모드에서 crackle은 BLE 페어링 이벤트가 포함된 PCAP 파일이 필요합니다. 이러한 파일을 생성하는 가장 좋은 방법은 Ubertooth를 사용하여 마스터와 슬레이브 간의 페어링 이벤트를 캡처하는 것입니다.

PCAP 파일에 필요한 모든 패킷이 포함되어 있는지 확인하려면 -i 옵션으로 crackle을 실행하십시오:

root@kitploit:~
crackle -i <file.pcap>

crackle은 입력 파일의 각 연결을 분석하고 분석 결과를 stdout으로 출력합니다. 페어링 대화의 모든 구성 요소가 있으면 출력은 다음과 같습니다:

root@kitploit:~
Analyzing connection 0:
  xx:xx:xx:xx:xx:xx (public) -> yy:yy:yy:yy:yy:yy (public)
  Found 13 encrypted packets

  Cracking with strategy 0, 20 bits of entropy

  !!!
  TK found: 412741
  !!!

  Decrypted 12 packets
  LTK found: 81b06facd90fe7a6e9bbd9cee59736a7

Specify an output file with -o to decrypt packets!

모든 패킷을 복호화하려면 -o 옵션을 추가하십시오:

root@kitploit:~
crackle -i <file.pcap> -o <output.pcap>

출력 파일에는 원본 PCAP의 모든 암호화된 패킷의 복호화된 버전과 모든 암호화되지 않은 패킷이 포함됩니다. CRC는 다시 계산되지 않으므로 복호화된 패킷의 CRC는 올바르지 않습니다.

LTK로 복호화

LTK로 복호화 모드에서 crackle은 최소한 LL_ENC_REQ 및 LL_ENC_RSP 패킷과 통신을 암호화하는 데 사용된 LTK가 포함된 PCAP 파일이 필요합니다.

LTK 형식은 공백이나 구분 기호가 없는 128비트 16진수이며, 최상위 옥텟에서 최하위 옥텟 순서입니다. 예:

root@kitploit:~
-l 81b06facd90fe7a6e9bbd9cee59736a7

PCAP 파일에 필요한 모든 패킷이 포함되어 있는지 확인하려면 -i 및 -l로 crackle을 실행하십시오:

root@kitploit:~
crackle -i <file.pcap> -l <ltk>

필요한 두 패킷이 모두 있으면 프로그램은 다음과 유사한 출력을 생성해야 합니다:

root@kitploit:~
Analyzing connection 0:
  xx:xx:xx:xx:xx:xx (public) -> yy:yy:yy:yy:yy:yy (public)
  Found 9 encrypted packets
  Decrypted 6 packets

Specify an output file with -o to decrypt packets!

모든 패킷을 복호화하려면 -o 옵션을 추가하십시오:

root@kitploit:~
crackle -i <file.pcap> -o <out.pcap> -l <ltk>

출력 파일은 위에서 설명한 출력 파일과 유사하게 생성됩니다.

샘플 파일

tests 디렉토리에 포함된 테스트 파일은 crackle을 가지고 놀기 위한 흥미로운 입력 역할을 합니다. 각 테스트의 하위 디렉토리에 포함된 README 파일을 검토하십시오.

crackle로 크랙하기 위한 몇 가지 샘플 파일을 가져오십시오. 자세한 내용은 tarball 내부의 README를 참조하십시오:

https://lacklustre.net/bluetooth/crackle-sample.tgz

자주 묻는 질문

자주 묻는 질문 목록을 정리했습니다.

참고 자료

  • Ubertooth: http://ubertooth.sourceforge.net/
  • libbtbb: http://libbtbb.sourceforge.net/
  • irc.freenode.net의 #ubertooth

감사의 말

Ubertooth 프로젝트의 Mike Ossmann과 Dominic Spill에게 큰 감사를 드립니다. 그들 없이는 이 모든 것이 불가능했을 것입니다.

Kismet의 Mike Kershaw/dragorn에게 PCAP 파일 생성 및 작업에 대한 도움에 대해 큰 감사를 드립니다.

irc.freenode.net의 #ubertooth의 나머지 모든 분들께 감사드립니다.

도구 다운로드