KR20180092357A - 저전력 블루투스의 견고성 시험 분석 시스템 및 방법 - Google Patents

저전력 블루투스의 견고성 시험 분석 시스템 및 방법 Download PDF

Info

Publication number
KR20180092357A
KR20180092357A KR1020170017891A KR20170017891A KR20180092357A KR 20180092357 A KR20180092357 A KR 20180092357A KR 1020170017891 A KR1020170017891 A KR 1020170017891A KR 20170017891 A KR20170017891 A KR 20170017891A KR 20180092357 A KR20180092357 A KR 20180092357A
Authority
KR
South Korea
Prior art keywords
packet
test
tracker
bluetooth
communication
Prior art date
Application number
KR1020170017891A
Other languages
English (en)
Other versions
KR101890740B1 (ko
Inventor
김형신
이성엽
신익희
하동휘
어준선
Original Assignee
충남대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 충남대학교산학협력단 filed Critical 충남대학교산학협력단
Priority to KR1020170017891A priority Critical patent/KR101890740B1/ko
Publication of KR20180092357A publication Critical patent/KR20180092357A/ko
Application granted granted Critical
Publication of KR101890740B1 publication Critical patent/KR101890740B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0888Throughput
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/20Master-slave selection or change arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 저전력 블루투스의 견고성 시험 분석 시스템(방법)에 관한 것으로서, 시험 대상 기기와, 블루투스 네트워크를 통해 통신이 이루어지는 블루투스 모듈과, 시험 대상 기기의 통신 패킷을 트래킹하는 트래커와, 트래킹한 통신 패킷과 미리 정의된 서비스 목록과의 비교를 통해 제공 서비스를 확인하고, 제공 서비스에 대응하는 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷들을 트래커를 통해 시험 대상 기기에 송신하여 응답으로 돌아오는 패킷을 분석하거나, 제공 서비스에 대응하는 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조하여 트래커를 통해 시험 대상 기기에 송신하여 응답으로 돌아오는 패킷을 분석하여 견고성 시험을 수행하는 분석기를 포함한다. 본 발명에 따르면, 저전력 블루투스에 관한 보안성 인증 평가를 통해 저전력 블루투스를 사용하는 웨어러블 기기 등의 통신 과정의 보안성을 더욱 향상시킬 수 있다.

Description

저전력 블루투스의 견고성 시험 분석 시스템 및 방법{System and method for analysing Robustness test of Bluetooth Low Energy}
본 발명은 보안 기술에 관한 것으로, 더욱 상세하게는 저전력 블루투스 통신의 보안성을 인증 평가하기 위한 저전력 블루투스의 견고성 시험 분석 시스템 및 방법에 관한 것이다.
팔찌나 시계의 형태로 차고 다닐 수 있는 웨어러블 컴퓨팅 기기들이 늘어나고 있다. 이러한 웨어러블 기기(Wearable device)는 스마트폰과 달리 사용자의 신체에 더 가깝다. 사용자도 대부분의 시간을 웨어러블 기기를 착용한 채 보낸다. 때문에 웨어러블 기기는 센서의 역할을 수행할 수 있다. 사용자의 심박수를 실시간으로 모니터링 하거나, 그날의 운동량을 기록하는 기능이 대표적이다. 웨어러블 기기는 작은 크기로 인한 성능의 제약 때문에, 단순한 센서 기능만 수행하는 경우가 대부분이다. 센서 역할을 하는 웨어러블 기기는 축적한 데이터를 스마트폰에 전송해 스마트폰에서 데이터 처리를 수행하도록 한다.
이 때, 스마트폰과 웨어러블 기기간의 통신 방법으로 가장 많이 쓰이는 것이 블루투스의 저전력 버전인 저전력 블루투스(Bluetooth Low Energy; BLE)이다[1]. 웨어러블 기기는 저전력 블루투스로 스마트폰과 통신하여 데이터를 주고받게 된다. 최근에는 저전력 블루투스를 인공 심박동기에 적용해 스마트폰 혹은 모니터링 기기와 무선으로 데이터를 주고받고, 심박동기를 제어할 수 있는 제품도 등장했다[2].
문제는, 이 통신 채널을 악용하면 사용자의 생명을 위협할 수도 있다는 것이다[3]. 가짜 심박 데이터를 끼워 넣으면 사용자의 심장이 이상 증후를 보여도 대처할 수 없고, 서비스 거부 공격을 통해 기기의 동작을 중지시켜 사용자를 사망에 이르게 할 수도 있다. 그렇기에 저전력 블루투스를 사용하는 웨어러블 기기의 통신 과정을 보호할 필요가 있다.
현재 임베디드 기기의 블루투스 통신의 보안성을 점검해주는 시험 도구가 개발되어 있지만, 최신 버전인 저전력 블루투스를 대상으로 하는 시험 도구는 없다[4]. 그러나, 임베디드 기기의 통신 보안성을 검증해주는 Embedded Device Security Assurance(EDSA)가 있다[5]. EDSA에는 여러 통신규격에 대한 보안성 인증 평가 방법이 있지만, 저전력 블루투스에 관한 인증 평가 방법은 없다.
이에, EDSA에서 요구하는 IP 기반의 통신 시험 방법에서와 같이, 저전력 블루투스의 견고성을 시험 분석하는 기술이 요구되고 있다.
대한민국 등록특허공보 제10-1047641호(공고일 2011.07.08.) "보안 장치용 보안 및 프라이버시 강화"
[1] https://www.bluetooth.com/what-is-bluetooth-te chnology/bluetooth-technology-basics/low-energy [2] D. Halperin, T. S. Heydt-Benjamin, K. Fu, T. Kohno, W. H. Maisel, "Security and privacy for implantable medical devices", Pervasive Computing IEEE, vol. 7, no. 1, pp. 30-39, 2008. [3] Omre AH. Bluetooth low energy: wireless connectivity for medical monitoring. J Diabetes Sci Technol. 2010;4(2):457-463 [4] http://www.fte.com/docs/CRT4BT-datasheet.pdf, Robustness Tester for Bluetooth Technology [5] http://www.isasecure.org/en-US/Certification/IEC-62443-EDSA-Certification/ [6] http://ubertooth.sourceforge.net/ [7] https://www.bluetooth.com/specifications/bluetooth-core-specification [8] Rieck, Jakob. "Attacks on Fitness Trackers Revisited: A Case-Study of Unfit Firmware Security." arXiv preprint arXiv:1604.03313 (2016). [9] Cyr, Britt, et al. "Security analysis of wearable fitness devices (fitbit)." Massachusets Institute of Technology (2014): 1. [10] ISA Security Compliance Institue, Embedded Device Security Assurance Common require ments for communication robustness testing of IP-based protocol implementations [11] https://www.bluetooth.com/specifications/gatt/services/
따라서, 본 발명은 상기한 종래 기술의 문제점을 해결하기 위해 이루어진 것으로서, 본 발명의 목적은 EDSA에서 요구하는 IP 기반의 통신 시험 방법을 저전력 블루투스 통신에 맞게 이식하여 저전력 블루투스의 견고성을 시험 분석할 수 있도록 하는 저전력 블루투스의 견고성 시험 분석 시스템 및 방법을 제공하는데 있다.
상기와 같은 목적을 달성하기 위한 본 발명의 저전력 블루투스의 견고성 시험 분석 시스템은, 시험 대상 기기; 블루투스 네트워크를 통해 통신이 이루어지는 블루투스 모듈; 상기 시험 대상 기기의 통신 패킷을 트래킹하는 트래커; 및 트래킹한 통신 패킷과 미리 정의된 서비스 목록과의 비교를 통해 제공 서비스를 확인하고, 제공 서비스에 대응하는 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷들을 트래커를 통해 시험 대상 기기에 송신하여 응답으로 돌아오는 패킷을 분석하거나, 제공 서비스에 대응하는 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조하여 트래커를 통해 시험 대상 기기에 송신하여 응답으로 돌아오는 패킷을 분석하여 견고성 시험을 수행하는 분석기를 포함하는 것을 특징으로 한다.
한편, 본 발명의 저전력 블루투스의 견고성 시험 분석 방법은, 트래커를 마스터로, 시험 대상 기기를 슬레이브로 연결을 설정하는 단계; 상기 마스터와 슬레이브간 통신 패킷을 트래킹하여 미리 정의된 서비스 목록과의 비교를 통해 제공 서비스를 확인하는 단계; 제공 서비스에 대응하는 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷들을 트래커를 통해 시험 대상 기기에 송신하는 단계; 및 응답으로 돌아오는 패킷을 분석하는 단계를 포함하는 것을 특징으로 한다.
이어서, 상기 제공 서비스에 대응하는 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조하여 트래커를 통해 시험 대상 기기에 송신하는 단계; 및 응답으로 돌아오는 패킷을 분석하는 단계를 더 진행한다.
그리고, 상기 트래커를 통해 저전력 블루투스의 최대 전송률로 패킷을 생성해 전송하여 부하 시험을 진행하는 단계를 더 진행한다.
상술한 바와 같이, 본 발명에 의한 저전력 블루투스의 견고성 시험 분석 시스템 및 방법에 따르면, 저전력 블루투스에 관한 보안성 인증 평가를 통해 저전력 블루투스를 사용하는 웨어러블 기기 등의 통신 과정의 보안성을 더욱 향상시킬 수 있다.
도 1은 저전력 블루투스의 프로토콜 스택이다.
도 2는 저전력 블루투스의 통신 과정을 도식화한 것이다.
도 3은 본 발명의 일 실시예에 의한 본 발명의 일 실시예에 의한 저전력 블루투스의 견고성 시험 분석 시스템의 구성도이다.
도 4는 본 발명의 일 실시예에 의한 본 발명의 일 실시예에 의한 저전력 블루투스의 견고성 시험 분석 방법의 흐름도이다.
이하에서는 본 발명의 바람직한 실시예 및 첨부하는 도면을 참조하여 본 발명을 상세히 설명하되, 도면의 동일한 참조부호는 동일한 구성요소를 지칭함을 전제하여 설명하기로 한다.
발명의 상세한 설명 또는 특허청구범위에서 어느 하나의 구성요소가 다른 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 당해 구성요소만으로 이루어지는 것으로 한정되어 해석되지 아니하며, 다른 구성요소들을 더 포함할 수 있는 것으로 이해되어야 한다.
이하, 본 발명의 저전력 블루투스의 견고성 시험 분석 시스템 및 방법에 대하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.
여기서, 본 발명의 설명에 있어, 먼저 저전력 블루투스에 대해 설명하고, 임베디드 장치 보안 검증을 설명한다. 또한 추후 시험 도구를 구현하기 위해 필요한 Ubertooth라는 저전력 블루투스 개발 플랫폼에 대해 설명한다[6]. 그리고, 저전력 블루투스의 프로토콜 스택 및 자세한 통신 과정과, EDSA의 내용 중 Communication Robustness Testing(CRT)에 대해 설명한다. 이어서 이 시험 과정을 IP 기반 통신에서 BLE 통신 규격에 맞게 이식하는 과정을 설명하기로 한다.
저전력 블루투스
블루투스 기술은 웨어러블 기기들간의 단거리 무선 통신기술이다. 블루투스는 크게 기존의 블루투스 클래식과 2010년에 발표된 저전력 블루투스로 나뉘어진다.
저전력 블루투스는 4.0 이상의 버전을 말하며, 기존 블루투스 클래식의 단점인 큰 배터리 소모를 보완한 버전이다. 저전력 블루투스는 사용의 편리함과, 저전력 기능을 고려해 기존 블루투스 클래식의 복잡한 프로토콜 계층을 간소화시켰다[7]. 저전력 블루투스는 기존의 블루투스와 같은 2.4GHz 주파수 대역의 200MHz 대역폭을 사용하고 40개의 채널로 통신을 한다.
EDSA(Embedded Device Security Assurance)
EDSA는 ISCI(ISAsecure Compliance Institute)에서 제안한 임베디드 기기를 대상으로 하는 보안 검증 절차다.
EDSA는 크게 3가지 평가로 이루어져 있다. 기능을 평가하는 Functional Security Assessment(FSA), 개발 과정을 평가하는 Software Development Security Assesment(SDSA), 통신의 견고성을 평가하는 Communication Robustness Testing(CRT)이 그것이다. EDSA는 평가 결과에 따라 3가지 등급으로 구분되는데, 레벨1~3 으로 구분되며, 레벨 3이 가장 좋은 등급이다. CRT는 등급에 관계없이 엄격히 진행되며, FSA와 SDSA는 등급이 높아질수록 엄격하게 평가하게 된다.
Ubertooth(트래커)
Ubertooth는 2.4GHz 주파수 대역의 블루투스 관련 개발을 위한 오픈소스 플랫폼이다. Ubertooth는 Ubertooth one이라 불리는 하드웨어와 Ubertooth 도구로 통칭되는 여러 소프트웨어로 구성되어 있다.
Ubertooth One은 블루투스 클래식과 저전력 블루투스의 패킷을 가로채 살펴볼 수 있으며, Ubertooth 도구를 사용자가 프로젝트의 목적에 맞게 수정해 패킷을 생성하거나 통신 중간에 가로채 변조하는 등 다양하게 사용할 수 있다.
기존 웨어러블 기기의 견고성에 관한 연구들이 있다. 피트니스 트래커인 Fitbit에 대한 시험 결과 펌웨어를 다운 받기 위해 디버깅 인터페이스를 컴퓨터에 연결하면, 하드웨어적으로 구성해 놓은 회로가 작동해 Fitbit을 망가트린다. 반면에, 무선 통신은 하드웨어로써 보호할 수 없기 때문에 저전력 블루투스를 통한 통신 과정에서 패킷을 가로채거나 가짜 데이터를 끼워넣을 수 있다는 취약점이 드러났다[8, 9].
Ubertooth는 크게 Bluetooth Classic을 tracking하는 기능과 BLE를 tracking하는 기능으로 나뉘는데, 여기서는 BLE 통신을 tracking 하는 원리에 대해 설명한다.
BLE 통신에서 timing 과 관련된 정보들은, Access Adress, CRC Info, Hop Interval, Hop Increment 이다. BLE 통신을 하는 디바이스들은 이 timing 관련 정보를 동기화하여, Connection이 맺어진 이후에 해당 규칙에 따라 Channel을 hopping하면서 데이터를 주고 받는다. Ubertooth는 바로 이 정보를 알아내어, Master, Slave와 같은 패턴으로 Channel을 hopping하면서 데이터를 알아낼 수 있다.
Connection 전에는(Before Connection), 두 디바이스가 연결되기 전, Ubertooth가 timing 관련 정보를 알아내는 방법은 매우 간단하다. Scanner(스마트폰)가 Advertiser(웨어러블 기기)에게 Connection을 맺기위해 보냈던 CONNECT_REQ 패킷에는 네 가지 정보(Access Adress, CRC Info, Hop Interval, Hop Increment)가 모두 들어있다. Ubertooth는 그 정보를 추출해 내어 저장해 두고, 그 규칙에 맞게 Channel을 hopping하면서 Signal Data를 전부 트래킹한다.
Connection 후에는(After Connection), 이미 연결된 디바이스들은 CONNECT_REQ를 보낼 일이 없다. 그러나, BLE Signal Packet은 Advertise Mode이든 Connection Mode이든간에 무조건 하나의 Signal Packet format만 존재하기 때문에, Packet마다 특정 정보가 존재하는 부분은 어느 Packet에서나 똑같다. 4가지 정보 중 Access Address라는 것은 모든 Signal Packet마다 존재한다. Access Address라는 것은 두 디바이스간의 Unique한 Connection을 나타내는 4bytes 크기의 Identifier로써, CONNECT_REQ를 보내는 디바이스에 의해 랜덤하게 생성된다. Ubertooth는 37개의 Data Channel을 hopping하면서 모든 Data Packet의 Access Address를 추출해내어 Look Up Table 형태로 저장해 놓는다. 그리고는 각각의 Access Address가 등장한 횟수를 세게 되는데, 가장 먼저 특정 횟수만큼 등장한 Access Address를 target으로 잡는다. 나머지 3가지 정보는 각각 추출해내는 방법 및 알고리즘이 따로 존재하는데 해당 기술은 이미 잘 알려져 있다. 이렇게 해서 네 가지 정보를 알아낸 Ubertooth는 두 디바이스와 같은 패턴으로 Channel을 hopping하면서 Signal Data를 트래킹한다.
저전력 블루투스를 위한 EDSA-CRT
도 1은 저전력 블루투스의 프로토콜 스택이다.
디바이스들은 Bluetooth로 통신을 하기 위한 Protocol Stack을 가지고 있다. 일반적으로 네트워크 통신을 하기 위해서는, 통신을 위한 규약인 Protocol을 정의해야 되는데, 이렇게 정의된 Protocol들을 층층이 쌓아놓은 그룹이 Protocol Stack이다. Bluetooth Signal Packet을 수신하거나 송신할 때, 이 Protocol Stack을 거치면서 Packet들이 분석되거나 생성된다.
도 1을 참조하면, 저전력 블루투스의 프로토콜 스택은 가장 아랫단부터 크게 Controller, Host, Application 로 나뉜다. Connection 과정에는 Physical Layer, Link Layer, Generic Access Profile(GAP), Generic Attribute Profile(GATT) 등이 필요하며, 여기서는 GATT에 대해서만 설명하기로 한다.
Generic Attribute Profile (GATT)
BLE Data 교환을 관리하는 GATT는 디바이스들이 Data를 발견하고, 읽고, 쓰는 것을 가능하게 하는 기초적인 Data Model과 Procedure를 정의한다. 그래서 GATT는 최상위 Data Layer라고도 불린다. 디바이스간에 low-level에서의 모든 인터렉션을 정의하는 GAP와는 달리, GATT는 오직 Data의 Format 및 전달에 대해서만 처리한다. Connection Mode일 때, GATT Service와 Characteristic을 이용하여 양방향 통신을 하게 된다.
GATT도 Data 처리와 관련해서 다음과 같은 역할을 정의한다.
Role
·Client : Server에 Data를 요청한다. 하지만 처음에는 Server에 대해서 아는 것이 없기 때문에, Service Discovery라는 것을 수행한다. 이 후, Server에서 전송된 Response, Indication, Notification을 수신할 수 있다.
·Server : Client에게 Request를 받으면 Response를 보낸다. 또한 Client가 사용할 수 있는 User Data를 생성하고 저장해놓는 역할을 한다.
저전력 블루투스의 통신 과정
도 2는 저전력 블루투스의 통신 과정을 도식화한 것이다.
도 2를 참조하면, 저전력 블루투스의 통신 과정(Step)은 다음과 같다.
Step 1 : 웨어러블 기기가 Advertising Channel을 hopping하면서 Advertising Packet을 보낸다.(웨어러블 기기의 Advertising Packet 유형은 ADV_IND이다)
Step 2 : 스마트폰 Bluetooth를 켠 후, 웨어러블 기기 앱에 웨어러블 기기를 등록한다. 스마트폰은 Advertising Channel을 hopping하면서 Scan을 하다가 연결하려는 웨어러블 기기의 디바이스 이름 등의 추가적인 정보를 얻기위해 SCAN_REQ를 보낸다.
Step 3 : SCAN_REQ를 받은 웨어러블 기기는 SCAN_RSP를 보낸다.
Step 4 : Pairing이 완료되고, 웨어러블 기기는 다시 Advertising Packet을 다시 일정 주기마다 보낸다.
Step 5 : 스마트폰에서 웨어러블 기기로부터 걸음 수 등의 Data를 받기 위해 Sync 버튼을 누른다. 이 버튼을 누르면 스마트폰은 CONNECT_REQ를 보낸다.
Step 6 : 웨어러블 기기와 스마트폰은 서로 Acknowledging(ACK)을 시작하고, timing 정보 등을 동기화한다.
Step 7 : Connection이 완료된다.
Step 8 : Connection이 완료된 후, Service Data, Characteristic Data 등에 대한 Data 교환(Transaction)이 일어난다.
Step 9 : 스마트폰과 웨어러블 기기간에 Data Sync가 완료되면, Connection이 해제되고, 다시 Advertising Packet을 보낸다.
이와 같이, 저전력 블루투스는 마스터-슬레이브 구조로 연결된다.
마스터와 슬레이브 사이의 통신 과정에 있어, 먼저 슬레이브가 자신의 존재를 알리는 ADV_IND 패킷을 주기적으로 브로드캐스팅한다. 이것을 수신한 마스터와 송신한 슬레이브는 확인의 의미로 SCAN_REQ와 SCAN_RSP 패킷을 주고받는다. 이것으로 마스터는 슬레이브의 존재를 알게 된다. 이것이 Discover Device 단계다.
이 후, Establish Connection 단계는 슬레이브가 통신의 연결을 위해 ADV_IND 패킷을 마스터에게 송신하고, 마스터는 CONNECT_REQ 패킷으로 응답함으로써, 두 기기가 연결된다.
두 기기가 연결되면, 마스터가 슬레이브에서 제공하는 서비스에 대한 내용을 요구하고, 슬레이브는 그에 응답한다. 이어서, 해당 서비스에서 취급하는 데이터 구조에 대한 내용을 요구하고, 슬레이브는 이에 응답한다. 이로써, Discover Services 단계와 Discover Characteristics 단계가 종료되고, 데이터 교환이 일어나게 된다.
EDSA-CRT
본 발명은 저전력 블루투스 통신에 EDSA 내용 중 CRT를 적용하기 때문에 3가지 평가 중, CRT에 집중한다. EDSA-CRT는 Interface Surface Test와 Protocol Specific Test로 구성된다[10].
Interface Surface Test는 기기에서 서비스가 동작하고 있는 포트를 식별해 내고, 식별을 위한 스캐닝 작업 중에도 서비스가 정상적으로 동작하는지를 평가하기 위한 시험이다.
Protocol Specific Test는 해당 기기에서 사용하는 통신 규약에 따라 다르게 적용될 수 있으나, 공통적인 사항은 다음과 같다.
첫째, 기본적인 기능을 시험한다. 이는 위조하거나, 변조하지 않은 정상적인 패킷을 보내어 해당 통신 규격과 서비스가 정상 동작함을 확인하기 위한 것이다.
둘째, 해당 통신 규약에 따른 패킷의 각 필드 값을 변형시킨 오류를 유발할 수 있는 각종 위, 변조 패킷을 전송해 시험한다.
마지막으로 패킷을 과도하게 생성해 전송함으로써, 부하 시험을 진행한다.
저전력 블루투스에 EDSA-CRT 적용
상기한 EDSA-CRT의 각 시험 절차를 저전력 블루투스에 맞도록 수정하고 적용하는 과정은 다음과 같다.
Interface Surface Test의 목적은 기기에서 제공하는 서비스와 포트를 알아내기 위한 것이다. 저전력 블루투스는 IP 기반 통신과 달리 포트와 같은 개념이 없다. 그러나 Bluetooth SIG에서 정의해 놓은 저전력 블루투스 서비스가 존재한다[11]. 시험 대상이 되는 기기가 제공하는 서비스를 알아내는 과정은 도 2의 Discover Services 과정이다.
이 과정은 Ubertooth를 마스터로, 시험 대상 기기를 슬레이브로 연결을 설정하고 오고가는 패킷을 분석해 Bluetooth SIG가 정의한 서비스 목록과 비교함으로써 시험 대상 기기가 어떤 서비스를 제공하는지 알아낼 수 있다. 시험 대상 기기의 여러 서비스가 제대로 동작하는지 확인하는 절차는 간단하게 적용할 수 있다. 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷들을 Ubertooth를 통해 시험 대상 기기에 송신하고, 응답으로 돌아오는 패킷들이 정상인지 분석하면 된다.
저전력 블루투스는 IP 기반의 통신과 다르게 용도에 따라 크게 다른 여러 가지 통신 규약을 사용하지 않는다. 용도에 따라 서비스를 정의해 놓고, 그 서비스를 기반으로 패킷의 내용을 구성한다. 이렇게 각 서비스에 따라 다르게 구성된 패킷의 내용을 Characteristic이라 부른다. 앞서 구성한 시험환경과 마찬가지로 Ubertooth와 시험 대상 기기를 연결하고 Ubertooth를 통해 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조해 송신하고, 그 응답 패킷을 분석해보는 것으로 Protocol Specific Test를 대신할 수 있다.
마지막으로 Ubertooth를 이용해 저전력 블루투스의 최대 전송률로 패킷을 생성해 전송하고 반응을 살피는 것으로 부하 시험을 진행할 수 있다.
실시예
도 3은 본 발명의 일 실시예에 의한 본 발명의 일 실시예에 의한 저전력 블루투스의 견고성 시험 분석 시스템의 구성도이다.
도 3을 참조하면, 본 발명의 저전력 블루투스의 견고성 시험 분석 시스템은, 시험 대상 기기(1)와, 블루투스 네트워크를 통해 통신이 이루어지는 블루투스 모듈(2)과, 시험 대상 기기(1)의 통신 패킷을 트래킹하는 트래커(3)와, 트래킹한 통신 패킷과 미리 정의된 서비스 목록과의 비교를 통해 제공 서비스를 확인하고, 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷들을 트래커(3)를 통해 시험 대상 기기(1)에 송신하여 응답으로 돌아오는 패킷을 분석하거나, 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조하여 트래커(3)를 통해 시험 대상 기기(1)에 송신하여 응답으로 돌아오는 패킷을 분석하여 견고성 시험을 수행하는 분석기(4)를 포함한다.
여기서, 블루투스가 지원되지 않는 경우에는 블루투스 동글(dongle) 등을 이용할 수 있다.
한편, 트래커(3)는 상기한 Ubertooth를 이용할 수 있다.
그러면, 여기서 상기와 같이 구성된 시스템을 이용한 본 발명의 저전력 블루투스의 견고성 시험 분석 방법에 대해 설명하기로 한다.
본 발명의 저전력 블루투스의 견고성 시험 분석 방법은, 기초 동작 시험(Baseline Operation Test), 기본 견고성 시험(Basic Robustness Test) 및 부하 시험(Load Stress Test)으로 구성되며, 이들 시험 과정은 선택적으로 진행될 수 있다.
기초 동작 시험(Baseline Operation Test)은, 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷을 전송하여 응답으로 돌아오는 패킷을 분석한다.
기본 견고성 시험(Basic Robustness Test)은, 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조한 패킷을 전송하여 응답으로 돌아오는 패킷을 분석한다.
부하 시험(Load Stress Test)은, BLE 패킷들을 무작위로 발송해 High Traffic 환경에서 기초 동작 시험(Baseline Operation Test)을 수행한다.
도 4는 본 발명의 일 실시예에 의한 본 발명의 일 실시예에 의한 저전력 블루투스의 견고성 시험 분석 방법의 흐름도이다.
본 실시예에서는 기초 동작 시험(Baseline Operation Test), 기본 견고성 시험(Basic Robustness Test) 및 부하 시험(Load Stress Test)이 연속적으로 이루어지는 과정에 대해 설명한다.
도 4를 참조하면, 트래커(3)를 마스터로, 시험 대상 기기(1)를 슬레이브로 연결을 설정한 상태에서(S1), 마스터와 슬레이브간 통신 패킷을 트래킹하여 미리 정의된 서비스 목록과의 비교를 통해 제공 서비스를 확인한다(S2).
제공 서비스에 대응하는 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷들을 트래커(3)를 통해 시험 대상 기기(1)에 송신하여 응답으로 돌아오는 패킷을 분석한다(S3).
이어서, 제공 서비스에 대응하는 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조하여 트래커(3)를 통해 시험 대상 기기(1)에 송신하여, 응답으로 돌아오는 패킷을 분석한다(S4).
그리고, 트래커(3)를 통해 저전력 블루투스의 최대 전송률로 패킷을 생성해 전송하여 응답으로 돌아오는 패킷을 분석하여 부하 시험을 진행한다(S5).
본 발명에서 스마트폰과 웨어러블 기기의 연결 방법 중 가장 많이 쓰이는 저전력 블루투스에 대하여 살펴보았고, 저전력 블루투스 통신을 보호해야할 필요성을 알게 되었다. 저전력 블루투스 통신을 사용하는 기기의 통신에 대한 보안성을 검증하기 위해 EDSA 내용 중 CRT를 저전력 블루투스에 적용할 수 있으며, 또한 Ubertooth 오픈 소스 플랫폼을 활용해 CRT의 요구사항들을 적용한 자동화 시험 도구를 구현하여 웨어러블 기기의 통신 과정을 보호할 수 있다.
이상 몇 가지의 실시예를 통해 본 발명의 기술적 사상을 살펴보았다.
본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기재사항으로부터 상기 살펴본 실시예를 다양하게 변형하거나 변경할 수 있음은 자명하다. 또한, 비록 명시적으로 도시되거나 설명되지 아니하였다 하여도 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기재사항으로부터 본 발명에 의한 기술적 사상을 포함하는 다양한 형태의 변형을 할 수 있음은 자명하며, 이는 여전히 본 발명의 권리범위에 속한다. 첨부하는 도면을 참조하여 설명된 상기의 실시예들은 본 발명을 설명하기 위한 목적으로 기술된 것이며 본 발명의 권리범위는 이러한 실시예에 국한되지 아니한다.
1 : 시험 대상 기기
2 : 블루투스 모듈
3 : 트래커
4 : 분석기

Claims (5)

  1. 시험 대상 기기;
    블루투스 네트워크를 통해 통신이 이루어지는 블루투스 모듈;
    상기 시험 대상 기기의 통신 패킷을 트래킹하는 트래커; 및
    트래킹한 통신 패킷과 미리 정의된 서비스 목록과의 비교를 통해 제공 서비스를 확인하고, 제공 서비스에 대응하는 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷들을 트래커를 통해 시험 대상 기기에 송신하여 응답으로 돌아오는 패킷을 분석하거나, 제공 서비스에 대응하는 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조하여 트래커를 통해 시험 대상 기기에 송신하여 응답으로 돌아오는 패킷을 분석하여 견고성 시험을 수행하는 분석기를 포함하는 저전력 블루투스의 견고성 시험 분석 시스템.
  2. 트래커를 마스터로, 시험 대상 기기를 슬레이브로 연결을 설정하는 단계;
    상기 마스터와 슬레이브간 통신 패킷을 트래킹하여 미리 정의된 서비스 목록과의 비교를 통해 제공 서비스를 확인하는 단계;
    제공 서비스에 대응하는 정상적인 저전력 블루투스 통신 절차에 따라 생성한 패킷들을 트래커를 통해 시험 대상 기기에 송신하는 단계; 및
    응답으로 돌아오는 패킷을 분석하는 단계를 포함하는 저전력 블루투스의 견고성 시험 분석 방법.
  3. 제2항에 있어서,
    상기 제공 서비스에 대응하는 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조하여 트래커를 통해 시험 대상 기기에 송신하는 단계; 및
    응답으로 돌아오는 패킷을 분석하는 단계를 더 진행하는 저전력 블루투스의 견고성 시험 분석 방법.
  4. 트래커를 마스터로, 시험 대상 기기를 슬레이브로 연결을 설정하는 단계;
    상기 마스터와 슬레이브간 통신 패킷을 트래킹하여 미리 정의된 서비스 목록과의 비교를 통해 제공 서비스를 확인하는 단계;
    제공 서비스에 대응하는 패킷의 헤더와 페이로드의 내용을 Characteristic에 어긋나도록 위조하여 트래커를 통해 시험 대상 기기에 송신하는 단계; 및
    응답으로 돌아오는 패킷을 분석하는 단계를 포함하는 저전력 블루투스의 견고성 시험 분석 방법.
  5. 제2항 내지 제4항 중 어느 한 항에 있어서,
    상기 트래커를 통해 저전력 블루투스의 최대 전송률로 패킷을 생성해 전송하여 부하 시험을 진행하는 단계를 더 진행하는 저전력 블루투스의 견고성 시험 분석 방법.
KR1020170017891A 2017-02-09 2017-02-09 저전력 블루투스의 견고성 시험 분석 시스템 및 방법 KR101890740B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170017891A KR101890740B1 (ko) 2017-02-09 2017-02-09 저전력 블루투스의 견고성 시험 분석 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170017891A KR101890740B1 (ko) 2017-02-09 2017-02-09 저전력 블루투스의 견고성 시험 분석 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20180092357A true KR20180092357A (ko) 2018-08-20
KR101890740B1 KR101890740B1 (ko) 2018-08-22

Family

ID=63443099

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170017891A KR101890740B1 (ko) 2017-02-09 2017-02-09 저전력 블루투스의 견고성 시험 분석 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101890740B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114363939A (zh) * 2021-12-29 2022-04-15 上海庆科信息技术有限公司 节点模拟测试方法、装置、存储介质、处理器及设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101047641B1 (ko) 2002-10-07 2011-07-08 텔레폰악티에볼라겟엘엠에릭슨(펍) 보안 장치용 보안 및 프라이버시 강화
KR20130012914A (ko) * 2011-07-26 2013-02-05 라이트포인트 코포레이션 전자 장치에서의 패킷 오류율의 결정론적 시험용 시스템 및 방법
KR20140001208A (ko) * 2010-11-10 2014-01-06 라이트포인트 코포레이션 확인 응답 신호 억제를 사용한 보다 양호한 시험 효율의 달성

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101047641B1 (ko) 2002-10-07 2011-07-08 텔레폰악티에볼라겟엘엠에릭슨(펍) 보안 장치용 보안 및 프라이버시 강화
KR20140001208A (ko) * 2010-11-10 2014-01-06 라이트포인트 코포레이션 확인 응답 신호 억제를 사용한 보다 양호한 시험 효율의 달성
KR20130012914A (ko) * 2011-07-26 2013-02-05 라이트포인트 코포레이션 전자 장치에서의 패킷 오류율의 결정론적 시험용 시스템 및 방법

Non-Patent Citations (11)

* Cited by examiner, † Cited by third party
Title
[1] https://www.bluetooth.com/what-is-bluetooth-te chnology/bluetooth-technology-basics/low-energy
[10] ISA Security Compliance Institue, Embedded Device Security Assurance Common require ments for communication robustness testing of IP-based protocol implementations
[11] https://www.bluetooth.com/specifications/gatt/services/
[2] D. Halperin, T. S. Heydt-Benjamin, K. Fu, T. Kohno, W. H. Maisel, "Security and privacy for implantable medical devices", Pervasive Computing IEEE, vol. 7, no. 1, pp. 30-39, 2008.
[3] Omre AH. Bluetooth low energy: wireless connectivity for medical monitoring. J Diabetes Sci Technol. 2010;4(2):457-463
[4] http://www.fte.com/docs/CRT4BT-datasheet.pdf, Robustness Tester for Bluetooth Technology
[5] http://www.isasecure.org/en-US/Certification/IEC-62443-EDSA-Certification/
[6] http://ubertooth.sourceforge.net/
[7] https://www.bluetooth.com/specifications/bluetooth-core-specification
[8] Rieck, Jakob. "Attacks on Fitness Trackers Revisited: A Case-Study of Unfit Firmware Security." arXiv preprint arXiv:1604.03313 (2016).
[9] Cyr, Britt, et al. "Security analysis of wearable fitness devices (fitbit)." Massachusets Institute of Technology (2014): 1.

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114363939A (zh) * 2021-12-29 2022-04-15 上海庆科信息技术有限公司 节点模拟测试方法、装置、存储介质、处理器及设备
CN114363939B (zh) * 2021-12-29 2024-01-19 上海庆科信息技术有限公司 节点模拟测试方法、装置、存储介质、处理器及设备

Also Published As

Publication number Publication date
KR101890740B1 (ko) 2018-08-22

Similar Documents

Publication Publication Date Title
Newaz et al. Heka: A novel intrusion detection system for attacks to personal medical devices
US10873594B2 (en) Test system and method for identifying security vulnerabilities of a device under test
EP3276907B1 (en) A method and apparatus for testing a security of communication of a device under test
Pang et al. 11 user fingerprinting
Wu et al. {BLESA}: Spoofing attacks against reconnections in bluetooth low energy
US9294463B2 (en) Apparatus, method and system for context-aware security control in cloud environment
TWI724019B (zh) 用於測試低功率射頻(rf)資料封包信號收發器之方法
TWI697214B (zh) 用於測試低功率射頻(rf)資料封包信號收發器之方法
Yaseen et al. Marc: A novel framework for detecting mitm attacks in ehealthcare ble systems
US10320881B2 (en) Operating system fingerprint detection
Mikulskis et al. Snout: An extensible iot pen-testing tool
EP3614644B1 (en) Over-the-air provisioning of network services based on a reverse auction
KR101890740B1 (ko) 저전력 블루투스의 견고성 시험 분석 시스템 및 방법
Gvozdenovic et al. IoT-Scan: Network Reconnaissance for the Internet of Things
US20160156519A1 (en) Wireless Intrusion Detection and Device Fingerprinting through Preamble Manipulation
KR20180083522A (ko) IoT 무선 보안 서비스 방법 및 시스템
US20060130146A1 (en) Network packet generation apparatus and method having attack test packet generation function for information security system test
Zhang et al. ROSTER: Radio context attestation in cognitive radio network
Gullberg Denial of service attack on bluetooth low energy
CN110149641B (zh) 一种模拟无线连接测试方法
Ditton et al. A proof of concept denial of service attack against bluetooth iot devices
Rose et al. BlueFinder: A range-finding tool for Bluetooth classic and low energy
Fuentes-Samaniego et al. A monitoring-based approach for WSN security using IEEE-802.15. 4/6LowPAN and DTLS communication
Lackner et al. Ieee 802.11 chipset fingerprinting by the measurement of timing characteristics
US11622269B2 (en) Methods and systems of head end based wireless device authentication

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant