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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
writeup-cve-2019-19194 — CVE-2019-19194에 대한 writeup 및 이론적 PoC(Proof-of-Concept) | Kitploit
도구/GitHubGitHub/louisabricot/writeup-cve-2019-19194
Embedded Systems SecurityBluetooth SecurityIoT SecurityVulnerability AnalysisExploitationWireless Security
GitHublouisabricot/writeup-cve-2019-19194

writeup-cve-2019-19194

CVE-2019-19194에 대한 writeup 및 이론적 PoC(Proof-of-Concept)

저장소 보기
163년 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2019-19194 라이트업

이 문서는 CVE-2019-19194에 대한 라이트업이자 이론적 개념 증명(Proof-of-Concept)입니다.

⚠️ 이 CVE는 https://asset-group.github.io/disclosures/sweyntooth/에서 발견되었습니다.

목차

  • 요약

  • 취약한 소프트웨어 및 버전

  • 개요

    • 프로토콜 스택 및 아키텍처
    • 페어링 절차
  • 개념 증명

  • 참고 문헌

요약

이 보고서는 Zero LTK 초기화 취약점(CVE-2019-19194)이 보안 연결 페어링 절차를 우회하여 공격자가 Bluetooth Low Energy(BLE) 애플리케이션의 통신을 완전히 제어할 수 있게 하는 방법을 설명합니다.

취약한 소프트웨어 및 버전

이 취약점은 보안 연결 페어링 절차를 지원하는 Telink SMP 구현을 사용하는 제품에 영향을 미칩니다.

개요

BLE는 저전력, 근거리 무선 통신 시스템입니다. 두 장치 간의 원격 연결과 보안을 제공하는 일련의 표준화된 프로토콜로 구성됩니다.

프로토콜 스택 및 아키텍처

BLE 스택은 호스트와 컨트롤러라는 두 가지 아키텍처 블록에 분산되어 있습니다.

스택 분산 구조 덕분에 각 블록을 물리적으로 분리된 구성 요소로 구현할 수 있습니다.

호스트 컨트롤러 인터페이스(HCI)라는 표준 논리 인터페이스가 두 블록 간의 통신을 가능하게 합니다.

BLE 애플리케이션은 호스트 블록 위에 위치합니다.

Bluetooth Low Energy 프로토콜 스택 및 아키텍처

물리 계층 (PHY)

물리 계층은 2.4GHz 스펙트럼에 걸친 ISM(산업, 과학, 의료) 무선 대역에서 동작합니다. 40개의 채널을 사용하며, 그중 3개는 광고 채널이고 37개는 데이터 채널입니다.

링크 계층 (LL)

링크 계층(LL)은 여기서 설명하지 않을 많은 역할을 담당합니다. 링크 계층은 중요한 역할과 상태를 정의하는 상태 머신에 의해 제어됩니다:

  • 광고 장치는 광고 채널을 통해 광고 패킷을 전송합니다. 광고 시 장치는 연결 가능 여부를 알립니다.
  • 스캐너 장치는 다른 장치의 광고 패킷을 수신합니다.
  • 스캐너가 다른 장치로부터 광고 패킷을 수신하면, 광고자가 연결 가능할 경우 연결 절차를 시작할 수 있습니다.

논리 링크 제어 및 적응 프로토콜 (L2CAP)

논리 링크 제어 및 적응 프로토콜은 프로토콜 다중화 계층 역할을 합니다. 하위 계층과 상위 계층 간 패킷의 분할 및 재결합을 처리합니다.

일반 액세스 프로파일 (GAP)

일반 액세스 프로파일은 장치 검색과 연결에 관한 것입니다. 즉, GAP는 광고 패킷의 전송과 스캔을 통한 수신 절차를 정의합니다.

일반 속성 프로파일 (GATT)

두 BLE 장치 간 연결이 수립되면, GATT는 클라이언트/서버 모델을 사용하여 두 장치 간 데이터를 교환합니다. 클라이언트와 서버는 모두 속성 프로토콜(ATT)을 사용합니다.

  • 서버: 데이터를 노출하는 장치로, 명령을 수락하고 응답, 알림 또는 표시를 전송합니다.
  • 클라이언트: 데이터 읽기를 요청하는 장치로, 명령을 전송하고 수신된 응답, 알림 및 표시를 수락합니다.

보안 관리자 (SM)

SM은 페어링, 본딩 및 키 분배와 같은 보안 관련 절차를 지원합니다. 장치 페어링은 Bluetooth 보안의 기반으로 간주됩니다. 일단 페어링되면 두 장치는 통신을 암호화하고 서로를 인증할 수 있습니다...

페어링 절차

BLE 통신에 관여하는 다양한 프로토콜 중에서, zero LTK 설치 CVE는 보안 연결 모드의 페어링 절차 중에 발생합니다.

페어링 단계 개요

페어링 모드

  • 레거시 모드는 키 분배 단계에서 링크를 암호화하는 대칭 키를 도출하기 위해 비밀 데이터를 교환하는 간단한 프로세스를 사용합니다.
  • 보안 연결(SC) 모드는 타원 곡선 공개 키 암호화를 사용하여 대칭 키를 도출할 수 있게 합니다. 이 키는 키 분배 단계에서 링크를 암호화하는 데 사용됩니다.

보안 연결 페어링 모드는 "더 안전한 방식"으로, 레거시 모드의 약점을 해결하기 위해 개발되었습니다. 그러나 zero LTK 설치 CVE는 잘못된 SC 페어링 구현이 보안을 우회할 수 있게 한다는 사실을 발견했습니다.

보안 연결 페어링 프로세스

보안 연결 페어링 절차

1단계 - 정보 교환

중앙 장치가 페어링 요청을 보내고 두 장치는 보안 기능과 요구 사항을 교환합니다. 이 단계에서 페어링 모드가 정의됩니다.

2단계 - 키 생성
  • 공개 키 교환: 중앙 장치가 공개 키 교환을 시작합니다. 주변 장치와 중앙 장치는 모두 수신한 키가 P-256 곡선 위에 있는지 확인합니다.

  • DHKey 계산: 각 장치는 자신의 개인 키(SK)와 상대 장치의 공개 키(PK)를 사용하여 Diffie-Hellman 키(DHKey)를 계산합니다. 이렇게 하여 두 장치는 동일한 DHKey 값을 보유하게 됩니다.

    root@kitploit:~
      Central: DHKey = p256(SKc, PKp)
      Peripheral: DHKey = p256(SKp, PKc)
      
    
  • MITM 보호가 요청된 경우, 페어링 장치의 신뢰성을 확인하기 위한 대화형 절차가 진행됩니다.

  • 장기 키(LTK) 계산 및 상호 확인: 장치들은 서로를 인증하고 LTK 키를 계산합니다. 3단계 전에 링크를 암호화하기 위해 LTK에서 세션 키가 도출됩니다.

3단계 - 키 분배

암호화된 링크를 통해 장치들은 키를 분배할 수 있습니다.

개념 증명

zero LTK 설치의 근본 원인은 두 장치가 페어링 절차 중 어느 상태에 있는지 검사하지 않는다는 것입니다. 따라서 공격자인 중앙 장치는 키 생성 및 인증 단계를 건너뛸 수 있습니다. 그 결과 주변 장치의 LTK 키가 0으로 설정되며, 결과적으로 쉽게 도출할 수 있는 세션 키가 생성됩니다.

공격은 SC 페어링의 2단계를 건너뜁니다

⚠️ BLE 검색, 광고 또는 페어링 절차의 pcap을 확보하지 못했고, Telink SMP 구현이 탑재된 BLE 장치도 없었기 때문에 이는 완전히 이론적인 개념 증명입니다.

Zero LTK 설치

참고 문헌

  • Garbelini, M. E., Wang, C., Chattopadhyay, S., Sun, S., & Kurniawan, E. (2020, July). Sweyntooth: Unleashing mayhem over bluetooth low energy. In Proceedings of the 2020 USENIX Conference on Usenix Annual Technical Conference (pp. 911-925).
  • Claverie, T., Docq, N., & Lopes-Esteves, J. Analyse des propriétés de sécurité dans les implémentations du Bluetooth Low Energy.
  • Bluetooth 핵심 사양 5.0
  • 개발자 학습 가이드: Bluetooth Low Energy 보안
도구 다운로드