Last Updated on 1월 23rd, 2024, By
 In AppSealing News, 앱실링 블로그

 

블루투스는 무선으로 연결된 기기 간 통신을 위해 사용하기 때문에 대부분의 경우 보안이 보장됩니다. 블루투스는 무선 데이터 전송 표준으로 블루투스와 관련된 다양한 잠재적인 리스크 가운데 사이버 보안이 부인할 수 없는 범주에 해당된다는 점은 의심의 여지가 없습니다. 블루투스가 활성화되었을 때 휴대전화가 다른 기기에 연결되는 것을 원하지 않을 것이고, 그 반대의 경우도 마찬가지일 것입니다. 하지만, 무선으로 연결되는 블루투스라는 프로토콜에 대해 잘 알고 있지는 못합니다. 그렇다면, 블루투스란 정확히 무엇일까요? 어떻게 작동하는 것일까요? 어떤 공격이 일어날 수 있고, 이에 대해 어떻게 기기를 보호할 수 있을까요?

Bluetooth 보안에 대한 NIST 가이드

블루투스 기술의 특성

블루투스 기술은 적응형 주파수 호핑(Adaptive Frequency Hopping, AFH)이라는 주파수 호핑 확산 스펙트럼(Frequency-Hopping Spread SpectrumFH-SS)이라는 형식을 적용하여 간섭을 차단합니다.
블루투스 기술로 통신하는 기기의 경우, 기기별로 RSSI(수신 신호 강도 표시)를 결정하기 위해 계산을 수행하고, 다른 네트워크 기기와 통신하여 상대적인 무선 출력 수준을 조정할 수 있습니다(예: 전송출력을 점진적으로 증가하거나 감소).
블루투스는 해당 기기가 방사할 에너지를 정의하는 세 가지 출력 모드를 적용하고 있습니다. 이러한 방식으로 무선 기기에 사용되는 방사에 대한 국제 표준을 준수하고, 인접 기기를 방해하지 않도록 출력 효율을 높일 수 있습니다.

블루투스 아키텍처

둘 이상의 기기, 통상적으로 두 개의 무선 기기 사이에 애드혹(ad-hoc) 네트워크가 수립됩니다. 하나의 호스트 기기와 하나의 클라이언트 기기인 마스터와 슬레이브가 함께 피코넷을 이룹니다. 애드혹(ad-hoc) 네트워크 내에 포함된 모든 기기는 공통의 채널을 공유합니다.

출처

피코넷 내에는 한 번에 최대 7개의 활성 슬레이브가 있을 수 있습니다. 따라서, 피코넷 내의 각각의 활성화 기기는 3비트 활성화 기기 주소를 통해 식별할 수 있습니다.

스캐터넷 진입

스캐터넷은 모두가 함께 구동되는 소규모 피코넷으로 구성된 네트워크입니다. 피코넷은 이러한 네트워크의 작은 일부이며, 팀 구성원이 서로 연락하는 영역을 의미하기도 하고, 그룹이라고도 할 수 있습니다. 피코넷별로 하나 이상의 마스터가 있을 수 있지만, 전체가 원활하게 구동되도록 해당시간 동안 모든 마스터들을 돕기 위한 슬레이브들이 있어야 합니다. 이러한 슬레이브는 모두가 각자의 위치를 알 수 있도록 시분할 멀티플렉스를 기준으로 다양한 피코넷에 참여합니다.

블루투스 BR/EDR/HS의 보안 기능

NIST 블루투스 보안 가이드는 헤드폰이나 무선 키보드 등 블루투스 기술을 사용하는 기기의 보안 침해행위를 방지하는 데 사용됩니다. 블루투스 기술에 관하여 NIST와 미 상무부가 제안하는 다양한 기타 보안 표준과 지침을 기준으로 할 뿐만 아니라 이러한 기관이 설정한 다른 표준과도 호환성을 유지하기 위해 작성되었습니다.
미 국립표준기술연구소(National Institute for Standards and Technology, NIST)는 블루투스 기기에 대한 보안 수준을 다섯 가지로 정하고 있습니다.
• 레벨 4: 링크 키 인증을 위해 보안이 보장된 연결 필요
• 레벨 3: 인증된 링크 키 필요
• 레벨 2: 인증되지 않은 링크 키 필요
• 레벨 1: 보안 불필요
• 레벨 0: 보안 불필요(서비스 검색 프로토콜에 대해서만 허용됨)

NIST에서 제시하는 5가지 수준의 Bluetooth 보안은 일반적으로 사용자의 혼란을 초래하고 보안을 위협할 수 있는 MitM 위협 및 DDoS 공격을 비롯한 다양한 사이버 보안 조치에 대한 지침으로 사용됩니다.

출처: Argus-Sec

SP 800-121 문서는 다음을 포함하는 리스크 완화 전략을 다루고 있습니다.

링크 키

블루투스 기기에서 보안 인증을 위한 기본 키는 기준이 되는 버전에 따라 “링크 키” 또는 “장기 키”를 개발하는데 사용되는 비밀의 대칭 키를 생성하는 것이어야 합니다.
레거시 페어링 보안으로도 알려진 PIN(개인 식별번호)의 경우, 두 기기 사이에 공유되는 임의 생성된 링크 키를 통해 사용자에게 전달됩니다. 이 링크 키는 어디에도 전송되거나 저장되지 않기 때문에 데이터는 안전하게 보호됩니다.

인증

블루투스 기기는 챌린지-응답 인증 시스템을 사용하여 구현되며, 일부 기기는 다른 기기가 인증할 수 있는 대상으로 응답하여 신원을 증명합니다.
블루투스는 청구자-검증자(claimer-verifier) 기법을 통해 인증이 이루어집니다. 일부 기기는 챌린저가 되고, 다른 기기가 검증자가 됩니다.

Encryption

NIST는 높은 수준의 보안 요구사항을 위해 p-256 타원 곡선과 함께 적용된 AES-CMAC을 권장합니다. 이는 SL 4를 만족하지만, 112비트 보안에 대해서만 만족합니다. 신용카드 정보를 이미 암호화하기 때문에 전자 상거래 웹 사이트에서 문제가 될 수 있어 이러한 수준 이상으로 진행하는 것을 권장하지 않습니다. ECC가 아닌 알고리즘의 한 가지를 고려할 수도 있습니다.
보안 연결 전용 모드가 이전의 버전과는 호환되지 않는다는 점을 알아두는 것이 좋습니다.

취약점

현재 우리는 새로운 보안 위협의 환경에 놓여있습니다. NIST는 기기와 가정 모두의 미래를 보호할 수 있는 기술의 구현에 앞장서고 있습니다. 하지만, 위에서 설명한 바와 같이 NIST는 여러 취약점을 살펴보고, 취약한 암호화 알고리즘과 기기에 대한 보안 프로토콜의 빈약한 구현(또는 결여) 등 관심을 기울여야 할 대상이 더 많다는 것을 분명히 하고 있습니다.

NIST는 여러 취약점을 개괄적으로 설명하고 있으며, 가장 중요한 취약점은 다음과 같습니다.

  • 링크 키에 대한 도청 및 공격
  • 중복 키 재사용 및 해당 키의 보안이 보장되지 않은 저장
  • 안전하지 않은 장치를 스푸핑(spoofing)하여 페어링된 다른 장치에서 키 획득
  • 난수 생성기를 사용하지 않은 짧은 PIN
  • 마스터 기기에서 다른 피코넷으로 키 공유
  • 취약한 암호화 알고리즘 사용

블루투스 LE의 보안 기능

블루투스 LE 연결은 다양한 보안 수준을 지원하는 특정 보안 모드를 통해 보호됩니다. 블루투스 보안 모드/레벨 요구사항은 다양한 요인에 따라 변경될 수 있으며, 개발 단계별로 해당 조건을 확인하는 것이 중요합니다.
블루투스 4.0 LE는 보안 모드 1 레벨 3을 해당 범위 내의 가장 철저한 모드로 사용합니다. 이는 인증된 페어링과 암호화라는 두 가지 상이한 뛰어난 특성을 갖고 있기 때문입니다.
연결되어 있지 않지만 함께 상호 작용할 가능성이 있는 두 개의 Bluetooth 장치는 보안이 필요한 작업을 수행하려면 먼저 페어링되어야 합니다.

암호화 및 인증

블루투스 LE 기기는 CBC-MAC 인증과 함께 128비트 AES 암호화를 활용합니다.
블루투스(LE)는 데이터의 인증상태를 검증하는 디지털 서명인 연결 서명 확인 키(Connection Signature Resolving Key, CSRK)를 제공합니다.

블루투스 LE의 보안 모드 및 수준

GAP는 Generic Access Protocol(일반 액세스 프로토콜)의 약자이며, 주요 목표는 블루투스 기기가 상호 연결된 방식으로 데이터를 쉽게 공유할 수 있게 해줍니다. 일반 액세스 프로파일(GAP)은 두 가지 보안 모드를 정의합니다.

  • 보안 모드 1
  • 보안 모드 2 및 각 기법 내부의 여러 레벨.

블루투스에는 네 가지 보안 수준이 있습니다.
레벨 1: 보안이 없는 통신(예, 암호화 없음)
레벨 2: 통신 중 AES-CMAC 암호화(페어링되지 않은 기기)
레벨 3: 기기가 페어링되었을 때 암호화 필요
레벨 4: 암호화 및 페어링 필요

LE 페어링 기법

블루투스 페어링 프로세스는 블루투스 기기 연결에 있어 보안에 중점을 둔 방법입니다. 페어링 프로세스는 사전에 수행되기 때문에 기기는 한 사람만 특정 방식을 통해서만 사용할 수 있습니다.

  • 숫자 비교
  • 암호 키 입력
  • 단순 연결
  • 외부채널형(OOB)

숫자 비교

“블루투스 숫자 비교 페어링 모델”은 두 기기가 각자 화면에서 동일한 여섯 자리 값을 표시하고, 이러한 숫자를 이후 페어링에 필수적으로 사용합니다. 두 기기 모두가 이러한 번호를 표시할 화면이 있어야 하며, 이러한 프로세스를 수행 할 때마다 예/아니오의 정확한 키를 클릭하여 블루투스 기기 설정 시 원활한 진행이 이루어지게 해야 합니다.

암호 키 입력

암호 키 입력 블루투스 LE 페어링에는 여섯 자리 숫자와 관련됩니다. 하나의 기기는 이 숫자를 표시하고 다른 기기는 해당 숫자와 일치합니다.

단순 연결

모든 기기에 화면 패널이 설치되어 있는 것이 아니며, 블루투스 LE를 통한 페어링은 시각적 피드백 없이도 가능하기 때문에 단순 연결 방식은 현재 가장 널리 사용되는 방법입니다. 단순 연결의 경우, 블루투스 페어링 방식은 숫자 비교 방식과 동일하지만 두 기기를 처음 페어링할 때 여섯 자리 값이 설정되며, 변경되지 않은 상태로 유지됩니다.

외부채널형(Out of Band, OOB)

외부채널형(OOB) 페어링 방식은 NFC를 지원하는 블루투스 기기를 페어링하기 위해 설계된 것입니다. 엿듣기 또는 중간자 공격 행위자가 중요 데이터를 탈취하는 것을 방지하기 위해 외부채널형(OOB) 블루투스는 BLE 프로토콜에서 사용하는 2.4GHz 대역이 아닌 NFC(근거리 통신)를 사용합니다.

기밀성, 인증 및 무결성

블루투스 기기 암호화는 RFC 3610에 정의된 AES-CCM(암호 블록 체인 메시지 인증 코드)을 사용하는 고급 암호화 표준을 기반으로 합니다. AES-CCM은 기밀성, 패킷별 인증 및 무결성을 제공하기 위해 블루투스 LE에서 사용되는 암호화 프로토콜입니다.
블루투스(LE) 인증은 연결의 서명 확인 키를 사용하여 데이터를 디지털 서명하는 방식으로 작동합니다.

블루투스 취약성, 위협 및 대책

베이킹은 여러 가지 이점과 장점을 제공합니다. 하지만, 기회를 잃을 수 있는 몇 가지 단점 없이는 보장되지 않습니다. 블루투스 기기는 여러분의 네트워크 신호와 간섭을 일으킬 수 있는 전파를 전송합니다. 예를 들어, 악의적인 의도(예, 필수 데이터 탈취)로 기기를 사용하기 위해 이를 해킹하려는 침해자에 대한 우려도 있습니다. 그 밖에도 예상치 못하게 신호가 차단되어 기기가 제대로 연결되지 않을 가능성도 항상 존재합니다.

 

취약성 제기되는 리스크
모든 페어링에 대한 일련의 정적 및 반복되는 링크 키 사용 기기가 연결하는 모든 기기에 대해 동일한 블루투스 키를 활성화하는 것은 키 관리에 있어서 심각한 취약점입니다.
기기 키를 기반으로 블루투스 기기를 페어링하면 도청이나 스푸핑과 같은 다양한 공격이 발생할 수 있습니다. 하나의 블루투스 기기가 다른 기기와 “페어링”되면 사용해야할 키를 아는 사람은 이러한 기기 전부 또는 그 중 하나를 속여 다른 기기라고 생각하게 하고, 이 두번째 기기를 통해 압축된 정보에 액세스할 수 있게 됩니다.
적은 문자들로 이루어진 짧은 PIN 페어링 중에 링크 키 생성에 사용되는 보안 메커니즘으로서의 취약한 블루투스 기기 PIN은 쉽게 추측할 수 있습니다.Bluejacking

블루투스 보안에 대한 다섯 가지 주요 공격기법

블루재킹(Bluejacking)

블루재킹은 블루투스를 통해 데이터를 송신할 때 이루어지는 공격의 일종으로, 다른 사람을 사칭하여 기기로 데이터를 보낸 사람이 누구인지 알리지 않고 블루투스를 통해 데이터를 보낼 때 발생하는 공격 유형입니다.

블루버깅(Bluebugging)

블루버깅은 기기에 침투하여 데이터 및 통신을 탈취하고, 전화 통화를 들으며, 이메일과 문자 메시지를 확인하고, 전화를 걸 수 있는 블루투스 공격의 일종입니다(모든 것은 소유자가 이를 인식하지 못한 가운데 이루어집니다).

카 위스퍼러(Car Whisperer)

카 위스퍼러 소프트웨어를 사용하면 해커는 원격으로 차량의 블루투스 연결을 해킹하여 사적인 대화를 듣거나 차량의 스피커 시스템으로 악의적인 음성을 전송할 수 있습니다.

서비스 거부(Denial of Service)

DoS 공격은 블루투스에서 가장 일반적으로 이루어지는 공격 중 하나입니다. 위협 행위자가 악의적인 의도를 갖고 합법적 사용자가 시스템, 기기 또는 기타 리소스에 액세스할 수 없을 정도의 빠른 속도로 기기에 과도한 메시지를 보낼 때 일어납니다.

퍼징 공격(Fuzzing Attack)

블루투스 퍼지 테스트 공격은 시스템이 거부하게 될 부정확한 정보를 시스템에 전송하여 문제와 결함을 일으키는 공격기법입니다.

리스크 완화와 대책

비즈니스를 안전하고, 건전하게 유지하는 데 있어서 정책은 필수적이지만, 일련의 철저한 모바일 보안 지침을 수립하는데 주의를 기울이지 않으면, 불필요한 어려움을 크게 겪게 될 수 있습니다. 이러한 정책은 블루투스 기능을 통해 기기가 활성화되어 있을 때 최종 사용자의 요구에 따라 데이터를 보호하고, 관리하는 데 도움이 됩니다.

1. 무선 보안 정책

스스로를 보호하기 위한 효과적인 방법은 블루투스와 관련된 기술을 다루는 조직의 전략적인 정책을 수립하는 것입니다.

2. 책임 공유

모든 사용자는 자신의 기기를 사용할 때 블루투스 보안을 위해 규정을 준수해야 한다는 점을 인식해야 하며, 이를 통해 네트워크 보안이 보장될 것입니다.

3. 주기적인 평가

블루투스의 보안 수준을 알아보고, 보호가 필요한 분야를 확인하기 위해서는 조직을 대상으로 공식적인 블루투스 보안 평가를 주기적으로 시행해야 합니다. 해당 구역 내에서 무선 기술을 무단으로 사용하는 것을 찾기 위한 감사를 수행하기 위해 블루투스 기능이 있는 모든 기기의 목록을 활용할 수 있습니다.


appsealing contact

Dustin Hong
Dustin Hong
Dustin은 잉카엔트웍스의 앱실링 비즈니스 개발을 이끌고 있습니다. 그는 사이버 보안, IT, 컨텐츠 및 애플리케이션 보안 분야의 소프트웨어 개발과 혁신에 많은 관심을 가지고 있습니다. 또한 사이버 보안 세계에서 주요 사건의 대상, 이유 및 방법에 대해 다양한 사람들에게 공유하고 토론하는 것을 좋아합니다. 업계 동향 및 모범 사례에 대한 그의 견해는 기사, 백서에 실려있으며, 여러 보안 행사에서 유사 주제로 발표를 하였습니다.