KR20110015892A - 블루투스 디바이스의 보안 방법과 장치 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 - Google Patents
블루투스 디바이스의 보안 방법과 장치 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 Download PDFInfo
- Publication number
- KR20110015892A KR20110015892A KR1020090073333A KR20090073333A KR20110015892A KR 20110015892 A KR20110015892 A KR 20110015892A KR 1020090073333 A KR1020090073333 A KR 1020090073333A KR 20090073333 A KR20090073333 A KR 20090073333A KR 20110015892 A KR20110015892 A KR 20110015892A
- Authority
- KR
- South Korea
- Prior art keywords
- bluetooth
- security
- input data
- driver
- encryption
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/02—Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/03—Protecting confidentiality, e.g. by encryption
- H04W12/033—Protecting confidentiality, e.g. by encryption of the user plane, e.g. user's traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/031—Protect user input by software means
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Storage Device Security (AREA)
Abstract
본 발명은 블루투스 디바이스의 보안 방법과 장치 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체에 관한 것으로, 블루투스 키보드 등과 같은 블루투스 디바이스를 통한 입력데이터를 클라이언트 드라이버 계층에서 가로채어 암호화함으로써, 해킹프로그램 등과 같은 악의적인 프로그램에 의한 키로깅을 포함하는 각종 보안위협요소로부터 입력데이터를 보호하는 이점이 있다.
블루투스 키보드, 입력데이터, 암호화, 복호화
Description
본 발명은 블루투스(bluetooth) 디바이스의 보안에 관한 것으로, 더욱 상세하게는 블루투스 디바이스를 통해 입력하는 데이터를 보안위협요소로부터 보호할 수 있는 보안 방법과 장치 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
최근 들어, 인터넷(internet)을 통한 뱅킹(banking) 또는 증권 업무 등의 금융거래가 증가함과 아울러 이메일(e-mail) 또는 기밀사항이 포함된 데이터 통신이 증가하면서 타인이 인터넷 통신보안의 취약점을 이용해 악의적인 목적으로 개인정보 또는 비밀정보 등을 빼내는 경우가 빈번하게 발생되고 있다.
이와 같은 정보유출은 각종 스파이웨어(spy ware) 또는 해킹프로그램을 통해 이루어지고 있으며, 이들 중 대부분은 키보드 등과 같은 입력 디바이스를 통해 입력되는 데이터를 중간에서 별도로 획득한 후 해당 데이터를 약속된 이메일 주소나 웹사이트(web site) 주소로 전송하는 방식으로 이루어지고 있다.
한편, 컴퓨터나 오디오/비디오 기기 등과 같은 디지털 기기의 입력 디바이스를 대표한다고 볼 수 있는 키보드로는 현재 피에스투(Personal System/2, PS/2) 키보드와 범용 직렬 버스(Universal Serial Bus, USB) 키보드가 가장 널리 사용되고 있으며, 최근에는 블루투스 프로토콜을 사용하는 블루투스 키보드의 이용률이 증가하는 추세에 있다.
PS/2 키보드와 USB 키보드는 입력데이터를 각종 보안위협요소로부터 보호하는 보안 기술이 여러 가지의 형태로 제안되었을 뿐만 아니라 이미 실용화되어서 대체적으로 보안성이 높은 것으로 알려져 있다.
일예로, USB 키보드의 입력데이터를 보호하는 보안 기술을 살펴보면 다음과 같다.
USB 키보드를 통해 입력되는 데이터는 USB 버스 드라이버, USB 허브 드라이버(hub driver), HID(Human Interface Device) USB 드라이버, 키보드 HID 드라이버, 키보드 클래스 드라이버의 순으로 전달되는데, USB 허브 드라이버, HID USB 드라이버 또는 키보드 HID 드라이버 중에서 어느 하나의 계층에서 입출력 패킷을 구분하여 보호하고자 하는 입력데이터를 보안위협요소로부터 보호한다.
그러나, 블루투스 키보드의 경우에는 입력데이터를 각종 보안위협요소로부터 보호하는 보안 대책이 미진한 상태이며, 해킹프로그램 등과 같은 악의적인 프로그 램에 의한 키로깅(KeyLogging, keystroke logging)에 매우 취약한 문제점이 있었다.
본 발명은 이와 같은 종래 기술의 문제점을 해결하기 위해 제안한 것으로서, 블루투스 키보드 등과 같은 블루투스 디바이스를 통한 입력데이터를 클라이언트 드라이버 계층에서 가로채어 각종 보안위협요소로부터 보호할 수 있도록 한다.
본 발명의 제 1 관점으로서 블루투스 디바이스의 보안 방법은, 커널 영역에서 블루투스 디바이스의 입력데이터를 블루투스 버스 드라이버로부터 전송 받아 암호화를 수행하는 단계와, 상기 암호화를 수행하기 이전의 상기 입력데이터인 원본 입력데이터를 삭제하거나 변경하는 단계와, 상기 암호화를 수행한 이후의 상기 입력데이터인 암호화 입력데이터를 사용자 영역의 응용 프로그램에게 전송하는 단계와, 상기 사용자 영역에서 상기 암호화 입력데이터를 소망하는 데이터 수신처가 인식할 수 있도록 복호화하는 단계를 포함할 수 있다.
여기서, 상기 보안 방법은, 클라이언트 드라이버에 속하는 블루투스 HID(Human Interface Device) 프로파일 드라이버를 식별하는 단계와, 상기 블루투스 HID 프로파일 드라이버가 식별되면 그 하위 계층에서 상기 암호화를 수행하는 단계와 상기 삭제하거나 변경하는 단계 및 상기 전송하는 단계를 수행하는 블루투스 보안 필터 드라이버를 설치하는 단계를 더 포함할 수 있다.
상기 보안 방법은, 상기 운영체제에 의해 구동되는 디지털 기기의 블루투스 통신 커버리지 내에서 상기 블루투스 디바이스가 탐지되면 상기 식별하는 단계를 수행할 수 있다.
상기 보안 방법은, 상기 블루투스 디바이스가 탐지되면 상기 복호화하는 단계를 수행하는 응용 프로그램을 상기 사용자 영역에 설치하는 단계를 더 포함할 수 있다.
본 발명의 제 2 관점으로서 블루투스 디바이스의 보안 방법은, 커널 영역에서 클라이언트 드라이버의 여러 루틴 중에서 블루투스 키보드를 통한 입력데이터의 처리를 담당하는 루틴을 후킹하는 단계와, 상기 후킹에 의해 획득한 상기 입력데이터의 암호화를 수행하는 단계와, 상기 암호화를 수행하기 이전의 상기 입력데이터인 원본 입력데이터를 삭제하거나 변경하는 단계와, 상기 암호화를 수행한 이후의 상기 입력데이터인 암호화 입력데이터를 사용자 영역으로 전송하는 단계와, 상기 사용자 영역에서 상기 암호화 입력데이터를 전송 받아 소망하는 데이터 수신처가 인식할 수 있도록 복호화하는 단계를 포함할 수 있다.
여기서, 상기 보안 방법은, 상기 클라이언트 드라이버에 속하는 블루투스 HID 프로파일 드라이버를 식별하는 단계와, 상기 블루투스 HID 프로파일 드라이버가 식별되면 동일 계층에서 상기 후킹하는 단계와 상기 암호화를 수행하는 단계와 상기 삭제하거나 변경하는 단계 및 상기 전송하는 단계를 수행하는 블루투스 보안 후킹 드라이버를 설치하는 단계를 더 포함할 수 있다.
상기 보안 방법은, 상기 운영체제에 의해 구동되는 디지털 기기의 블루투스 통신 커버리지 내에서 상기 블루투스 디바이스가 탐지되면 상기 식별하는 단계를 수행할 수 있다.
상기 보안 방법은, 상기 블루투스 디바이스가 탐지되면 상기 복호화하는 단계를 수행하는 응용 프로그램을 상기 사용자 영역에 설치하는 단계를 더 포함할 수 있다.
본 발명의 제 3 관점으로서 상기 보안 방법들 중에서 어느 하나의 보안 방법을 실행하는 컴퓨터 프로그램이 기록된 기록매체를 제공한다.
본 발명의 제 4 관점으로서 블루투스 디바이스의 보안 장치는, 커널 영역에서 블루투스 디바이스의 입력데이터를 블루투스 버스 드라이버로부터 전송 받아 암호화를 수행하며, 상기 암호화를 수행하기 이전의 상기 입력데이터인 원본 입력데이터를 삭제하거나 변경하고, 상기 암호화를 수행한 이후의 상기 입력데이터인 암호화 입력데이터를 사용자 영역으로 전송하는 블루투스 보안 필터 드라이버와, 상기 사용자 영역에서 상기 블루투스 보안 필터 드라이버로부터 상기 암호화 입력데이터를 전송 받아 소망하는 데이터 수신처가 인식할 수 있도록 복호화하는 응용 프로그램을 포함할 수 있다.
여기서, 상기 블루투스 보안 필터 드라이버는, 클라이언트 드라이버에 속하는 블루투스 HID 프로파일 드라이버의 하위 계층에 설치할 수 있다.
상기 블루투스 보안 필터 드라이버는, 상기 운영체제에 의해 구동되는 디지 털 기기의 블루투스 통신 커버리지 내에서 상기 블루투스 디바이스가 탐지되면 설치할 수 있다.
상기 응용 프로그램은, 상기 블루투스 디바이스가 탐지되면 상기 사용자 영역에 설치할 수 있다.
본 발명의 제 5 관점으로서 블루투스 디바이스의 보안 장치는, 커널 영역에서 클라이언트 드라이버의 여러 루틴 중에서 블루투스 키보드를 통한 입력데이터의 처리를 담당하는 루틴을 후킹하며, 상기 후킹에 의해 획득한 상기 입력데이터의 암호화를 수행하고, 상기 암호화를 수행하기 이전의 상기 입력데이터인 원본 입력데이터를 삭제하거나 변경하며, 상기 암호화를 수행한 이후의 상기 입력데이터인 암호화 입력데이터를 사용자 영역으로 전송하는 블루투스 보안 후킹 드라이버와, 상기 사용자 영역에서 상기 블루투스 보안 후킹 드라이버로부터 상기 암호화 입력데이터를 전송 받아 소망하는 데이터 수신처가 인식할 수 있도록 복호화하는 응용 프로그램을 포함할 수 있다.
여기서, 상기 블루투스 보안 후킹 드라이버는, 상기 클라이언트 드라이버에 속하는 블루투스 HID 프로파일 드라이버의 동일 계층에 설치할 수 있다.
상기 블루투스 보안 후킹 드라이버는, 운영체제에 의해 구동되는 디지털 기기의 블루투스 통신 커버리지 내에서 상기 블루투스 디바이스가 탐지되면 설치할 수 있다.
상기 응용 프로그램은, 상기 블루투스 디바이스가 탐지되면 상기 사용자 영역에 설치할 수 있다.
본 발명에 의하면, 블루투스 키보드 등과 같은 블루투스 디바이스를 통한 입력데이터를 클라이언트 드라이버 계층에서 가로채어 암호화함으로써, 해킹프로그램 등과 같은 악의적인 프로그램에 의한 키로깅을 포함하는 각종 보안위협요소로부터 입력데이터를 보호하는 효과가 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 도면부호는 동일 구성 요소를 지칭한다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내 려져야 할 것이다.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부 를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
도 1은 본 발명의 실시예에 따른 블루투스 디바이스의 보안을 위한 드라이버 계층 구조를 포함하는 블루투스 디바이스 보안 장치의 블록 구성도로서, 본 발명에서는 설명의 편의상 블루투스 디바이스들 중 블루투스 키보드에 대해서 예시하였으나, 블루투스 마우스(mouse), 블루투스 조이스틱(joystick), 블루투스 키패드(keypad) 등과 같이 블루투스 프로토콜을 이용하는 다양한 블루투스 디바이스들에 대해서도 동일하게 적용할 수 있음은 본 발명의 분야에서 통상의 지식을 가진 자에게 자명하다.
도 1에 나타낸 바와 같이 드라이버 계층 구조를 포함하는 블루투스 디바이스 보안 장치는, 응용 프로그램(111), 키보드 클래스 드라이버(121), 키보드 HID 드라이버(123), 블루투스 HID 프로파일 드라이버(125), 블루투스 보안 필터 드라이버(131), 블루투스 보안 후킹 드라이버(133), 블루투스 버스 드라이버(141), 블루투스 통신기(151), 블루투스 키보드(161) 등을 포함할 수 있다. 여기서, 응용 프로그램(111)은 사용자 영역에 설치할 수 있으며, 키보드 클래스 드라이버(121), 키보드 HID 드라이버(123), 블루투스 HID 프로파일 드라이버(125), 블루투스 보안 필터 드라이버(131), 블루투스 보안 후킹 드라이버(133) 및 블루투스 버스 드라이버(141)는 커널 영역에 설치할 수 있다. 특히 블루투스 보안 필터 드라이버(131)와 블루투스 보안 후킹 드라이버(133)는 모두 설치할 수도 있고, 어느 하나만 설치할 수도 있다.
블루투스 키보드(161)를 통해 입력하는 입력데이터는 블루투스 키보드(161)에 의해 송출되며, 블루투스 통신기(151)는 블루투스 키보드(161)의 입력데이터를 수신한다. 블루투스 통신기(151)가 수신한 입력데이터는 블루투스 버스 드라이버(141), 블루투스 보안 필터 드라이버(131) 및/또는 블루투스 보안 후킹 드라이버(133), 블루투스 HID 프로파일 드라이버(125), 키보드 HID 드라이버(123), 키보드 클래스 드라이버(121) 등을 순차적으로 거쳐서 응용 프로그램(111)에게 전송되거나 블루투스 버스 드라이버(141), 블루투스 보안 필터 드라이버(131) 및/또는 블루투스 보안 후킹 드라이버(133) 등을 순차적으로 거쳐서 응용 프로그램(111)에게 곧바로 전송될 수 있다.
이하에서는, 블루투스 키보드(161)를 통한 입력데이터를 보안 처리하는 과정과 각 드라이버 계층에서의 동작을 상세히 설명하기로 한다.
블루투스 버스 드라이버(141)는 블루투스 통신기(151)를 물리적으로 연결할 수 있는 포트(port) 및 인터페이스(interface)를 포함할 수 있으며, 블루투스 키보드(161)의 인식 및 등록을 위한 블루투스 이넘(ENUM, E.164 NUmber Mapping)을 포함할 수 있다. 이러한 블루투스 버스 드라이버(141)는 블루투스 통신 커버리 지(coverage) 내의 블루투스 키보드(161)를 탐지하며, 블루투스 키보드(161)를 통한 입력데이터를 상위 드라이버에서 인식할 수 있도록 변환하여 전송한다.
블루투스 보안 필터 드라이버(131)는 블루투스 버스 드라이버(141)로부터 전송되는 입력데이터 중에서 보안 대상 입력데이터를 암호화하며, 암호화하기 이전의 원본 입력데이터를 삭제하거나 변경하고, 암호화한 입력데이터를 응용 프로그램(111)에게 전송한다. 아울러 블루투스 보안 필터 드라이버(131)가 설치되지 않은 경우에 블루투스 버스 드라이버(141)로부터 전송되는 입력데이터는 블루투스 HID 프로파일 드라이버(125)와 키보드 HID 드라이버(123) 및 키보드 클래스 드라이버(111) 등을 통해 응용 프로그램(111)에게 전송된다.
블루투스 보안 후킹 드라이버(133)는 블루투스 HID 프로파일 드라이버(125)의 여러 루틴 중에서 블루투스 키보드(161)를 통한 입력데이터의 처리를 담당하는 루틴을 후킹하고, 후킹에 의해 획득한 블루투스 키보드(161)를 통한 입력데이터 중에서 보안 대상 입력데이터를 암호화하며, 암호화하기 이전의 원본 입력데이터를 삭제하거나 변경하고, 암호화한 입력데이터를 응용 프로그램(111)에게 전송한다. 아울러 블루투스 보안 후킹 드라이버(133)가 설치되지 않은 경우에 블루투스 키보드(161)를 통한 입력데이터는 블루투스 HID 프로파일 드라이버(125)와 키보드 HID 드라이버(123) 및 키보드 클래스 드라이버(121)를 거쳐서 응용 프로그램(111)에게 전송된다.
블루투스 보안 필터 드라이버(131)와 블루투스 보안 후킹 드라이버(133)는 운영체제 내에 모두 등록하거나 어느 하나만을 선택적으로 등록할 수 있다. 아울러 블루투스 보안 필터 드라이버(131)와 블루투스 보안 후킹 드라이버(133)는 블루투스 키보드(161)의 입력데이터를 보안 대상인 입력데이터와 보안 대상이 아닌 일반적인 입력데이터로 분류하여 보상 대상인 입력데이터만을 암호화한 후에 응용 프로그램(111)으로 전송할 수도 있지만, 모든 입력데이터를 암호화한 후에 응용 프로그램(111)으로 전송할 수도 있다.
블루투스 HID 프로파일 드라이버(125)와 키보드 HID 드라이버(123) 및 키보드 클래스 드라이버(121)는 블루투스 키보드(161)가 동작하기 위해 반드시 필요한 운영체제에서 제공하는 클라이언트 드라이버(120)이며, 클라이언트 드라이버(120)는 하위 드라이버 중에서 블루투스 버스 드라이버(141)로부터 전송되는 입력데이터를 상위의 응용 프로그램(111)에게 전송한다.
응용 프로그램(111)은 클라이언트 드라이버(120)로부터 전송 받은 암호화한 입력데이터를 복호화하여 운영체제에서 키보드 입력을 인식할 수 있도록 한다.
앞서 설명한 바와 같은 본 발명의 실시예에 따른 블루투스 디바이스의 보안을 위한 드라이버 계층 구조를 포함하는 블루투스 디바이스 보안 장치에 의해 블루투스 입력데이터를 각종 보안위협요소로부터 보호하는 보안 방법에 대해 도 2를 추가적으로 참조하여 설명하기로 한다.
먼저, 컴퓨터나 오디오/비디오 기기 등과 같은 디지털 기기의 초기화 상태(S211)에서 운영체제가 구동되면, 예컨대 디지털 기기에 미리 설치한 블루투스 보안 관리자가 실행되어 블루투스 키보드 데이터 보호 모드를 판정한다(S213). 예 컨대 컴퓨터에 접속된 블루투스 키보드(161)를 통해 사용자가 인터넷 뱅킹 서비스를 이용하기 위하여 사용자 아이디, 계좌번호, 비밀번호 등과 같은 중요한 정보를 입력하여야 할 경우가 이에 해당한다. 일예로, 인터넷 뱅킹 서비스를 위한 사이트에 접속하였을 때에 서버측에서 블루투스 키보드 데이터 보호 모드를 요청할 수 있으며, 기 설정된 URL(Uniform Resource Locator)에 접속할 때에 블루투스 보안 관리자가 스스로 블루투스 키보드 데이터 보호 시점으로 인식할 수도 있다.
블루투스 키보드 데이터 보호 모드에 진입하면, 블루투스 보안 관리자의 요청에 따라 블루투스 버스 드라이버(141)가 디지털 기기의 블루투스 통신 커버리지 내에 통신이 가능한 블루투스 키보드(161)가 존재하는지를 탐지한다(S215).
블루투스 버스 드라이버(141)는 블루투스 키보드(161)가 탐지되면 이를 블루투스 보안 관리자에게 전달하며, 블루투스 보안 관리자는 클라이언트 드라이버(120)에 속하는 블루투스 HID 프로파일 드라이버(125)를 식별한다(S221).
아울러, 블루투스 보안 관리자는 블루투스 HID 프로파일 드라이버(125)가 식별되면 그 하위 계층에 블루투스 보안 필터 드라이버(131)를 설치하거나, 블루투스 HID 프로파일 드라이버(125)의 동일 계층에 블루투스 보안 후킹 드라이버(133)를 설치한다(S223).
이러한 블루투스 보안 필터 드라이버(131)와 블루투스 보안 후킹 드라이버(133)는 모두 설치할 수도 있고, 어느 하나의 드라이버만 설치할 수도 있으며, 이와 함께 사용자 영역에는 응용 프로그램(111)을 설치한다. 여기서, 일 실시예에 의해 단계 S215를 통해 블루투스 키보드(161)를 탐지한 후에 단계 S221 및 S223을 순차로 수행하는 경우를 설명하였으나, 단계 S215의 완료 여부와는 무관하게 단계 S221 및 S223을 먼저 수행할 수도 있다.
그러면, 블루투스 보안 필터 드라이버(131)는 커널 영역에서 블루투스 키보드(161)의 입력데이터를 블루투스 버스 드라이버(141)로부터 전송 받아 암호화를 수행하며(S231), 암호화를 수행하기 이전의 입력데이터인 원본 입력데이터를 삭제하거나 변경하고(S233), 암호화를 수행한 이후의 입력데이터인 암호화 입력데이터를 사용자 영역의 응용 프로그램(111)에게 전송한다(S235).
또는, 블루투스 보안 후킹 드라이버(133)는 클라이언트 드라이버(120)의 여러 루틴, 즉 블루투스 HID 프로파일 드라이버(125)의 여러 루틴 중에서 블루투스 키보드(161)를 통한 입력데이터의 처리를 담당하는 루틴을 후킹하며, 후킹에 의해 획득한 입력데이터의 암호화를 수행하고(S231), 암호화를 수행하기 이전의 입력데이터인 원본 입력데이터를 삭제하거나 변경하며(S233), 암호화를 수행한 이후의 입력데이터인 암호화 입력데이터를 사용자 영역의 응용 프로그램(111)에게 전송한다(S235).
이후, 응용 프로그램(111)은 사용자 영역에서 블루투스 보안 필터 드라이버(313) 및/또는 블루투스 보안 후킹 드라이버(133)로부터 암호화 입력데이터를 전송 받아 복호화하며, 복호화한 입력데이터를 소망하는 데이터 수신처로 전송하여 해당 데이터 수신처가 블루투스 키보드(161)의 입력데이터를 인식할 수 있도록 한다. 예컨대, 인터넷 뱅킹 서비스를 위한 서버측에서 전송하는 것이다(S241).
이러한 본 발명에서는, 블루투스 보안 필터 드라이버(131) 및/또는 블루투스 보안 후킹 드라이버(133)가 원본 입력데이터에 대한 암호화를 수행함과 아울러 원본 입력데이터를 삭제하거나 변경하기에 변경된 원본 입력데이터 또는 암호화 입력데이터가 해킹프로그램 등과 같은 악의적인 프로그램에게 노출되더라도 해독이 불가능한 보안성을 제공하는 것이다.
도 1은 본 발명의 실시예에 따른 블루투스 디바이스의 보안을 위한 드라이버 계층 구조를 포함하는 블루투스 디바이스 보안 장치의 블록 구성도,
도 2는 본 발명의 실시예에 따른 블루투스 디바이스 보안 장치에 의한 블루투스 디바이스 보안 방법을 설명하기 위한 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
111 : 응용 프로그램 120 : 클라이언트 드라이버
121 : 키보드 클래스 드라이버 123 : 키보드 HID 드라이버
125 : 블루투스 HID 프로파일 드라이버 131 : 블루투스 보안 필터 드라이버
133 : 블루투스 보안 후킹 드라이버 141 : 블루투스 버스 드라이버
151 : 블루투스 통신기 161 : 블루투스 키보드
Claims (17)
- 커널 영역에서 블루투스 디바이스의 입력데이터를 블루투스 버스 드라이버로부터 전송 받아 암호화를 수행하는 단계와,상기 암호화를 수행하기 이전의 상기 입력데이터인 원본 입력데이터를 삭제하거나 변경하는 단계와,상기 암호화를 수행한 이후의 상기 입력데이터인 암호화 입력데이터를 사용자 영역의 응용 프로그램에게 전송하는 단계와,상기 사용자 영역에서 상기 암호화 입력데이터를 소망하는 데이터 수신처가 인식할 수 있도록 복호화하는 단계를 포함하는 블루투스 디바이스의 보안 방법.
- 제 1 항에 있어서,상기 보안 방법은,클라이언트 드라이버에 속하는 블루투스 HID(Human Interface Device) 프로파일 드라이버를 식별하는 단계와,상기 블루투스 HID 프로파일 드라이버가 식별되면 그 하위 계층에서 상기 암호화를 수행하는 단계와 상기 삭제하거나 변경하는 단계 및 상기 전송하는 단계를 수행하는 블루투스 보안 필터 드라이버를 설치하는 단계를 더 포함하는 블루투스 디바이스의 보안 방법.
- 제 2 항에 있어서,상기 보안 방법은,상기 운영체제에 의해 구동되는 디지털 기기의 블루투스 통신 커버리지 내에서 상기 블루투스 디바이스가 탐지되면 상기 식별하는 단계를 수행하는블루투스 디바이스의 보안 방법.
- 제 3 항에 있어서,상기 보안 방법은,상기 블루투스 디바이스가 탐지되면 상기 복호화하는 단계를 수행하는 응용 프로그램을 상기 사용자 영역에 설치하는 단계를 더 포함하는 블루투스 디바이스의 보안 방법.
- 커널 영역에서 클라이언트 드라이버의 여러 루틴 중에서 블루투스 키보드를 통한 입력데이터의 처리를 담당하는 루틴을 후킹하는 단계와,상기 후킹에 의해 획득한 상기 입력데이터의 암호화를 수행하는 단계와,상기 암호화를 수행하기 이전의 상기 입력데이터인 원본 입력데이터를 삭제하거나 변경하는 단계와,상기 암호화를 수행한 이후의 상기 입력데이터인 암호화 입력데이터를 사용자 영역으로 전송하는 단계와,상기 사용자 영역에서 상기 암호화 입력데이터를 전송 받아 소망하는 데이터 수신처가 인식할 수 있도록 복호화하는 단계를 포함하는 블루투스 디바이스의 보안 방법.
- 제 5 항에 있어서,상기 보안 방법은,상기 클라이언트 드라이버에 속하는 블루투스 HID(Human Interface Device) 프로파일 드라이버를 식별하는 단계와,상기 블루투스 HID 프로파일 드라이버가 식별되면 동일 계층에서 상기 후킹하는 단계와 상기 암호화를 수행하는 단계와 상기 삭제하거나 변경하는 단계 및 상기 전송하는 단계를 수행하는 블루투스 보안 후킹 드라이버를 설치하는 단계를 더 포함하는 블루투스 디바이스의 보안 방법.
- 제 6 항에 있어서,상기 보안 방법은,상기 운영체제에 의해 구동되는 디지털 기기의 블루투스 통신 커버리지 내에서 상기 블루투스 디바이스가 탐지되면 상기 식별하는 단계를 수행하는블루투스 디바이스의 보안 방법.
- 제 7 항에 있어서,상기 보안 방법은,상기 블루투스 디바이스가 탐지되면 상기 복호화하는 단계를 수행하는 응용 프로그램을 상기 사용자 영역에 설치하는 단계를 더 포함하는 블루투스 디바이스의 보안 방법.
- 제 1 항 내지 제 8 항 중 어느 한 항의 상기 보안 방법을 실행하는 컴퓨터 프로그램이 기록된 기록매체.
- 커널 영역에서 블루투스 디바이스의 입력데이터를 블루투스 버스 드라이버로부터 전송 받아 암호화를 수행하며, 상기 암호화를 수행하기 이전의 상기 입력데이터인 원본 입력데이터를 삭제하거나 변경하고, 상기 암호화를 수행한 이후의 상기 입력데이터인 암호화 입력데이터를 사용자 영역으로 전송하는 블루투스 보안 필터 드라이버와,상기 사용자 영역에서 상기 블루투스 보안 필터 드라이버로부터 상기 암호화 입력데이터를 전송 받아 소망하는 데이터 수신처가 인식할 수 있도록 복호화하는 응용 프로그램을 포함하는 블루투스 디바이스의 보안 장치.
- 제 10 항에 있어서,상기 블루투스 보안 필터 드라이버는, 클라이언트 드라이버에 속하는 블루투 스 HID(Human Interface Device) 프로파일 드라이버의 하위 계층에 설치하는블루투스 디바이스의 보안 장치.
- 제 11 항에 있어서,상기 블루투스 보안 필터 드라이버는, 상기 운영체제에 의해 구동되는 디지털 기기의 블루투스 통신 커버리지 내에서 상기 블루투스 디바이스가 탐지되면 설치하는블루투스 디바이스의 보안 장치.
- 제 12 항에 있어서,상기 응용 프로그램은, 상기 블루투스 디바이스가 탐지되면 상기 사용자 영역에 설치하는블루투스 디바이스의 보안 장치.
- 커널 영역에서 클라이언트 드라이버의 여러 루틴 중에서 블루투스 키보드를 통한 입력데이터의 처리를 담당하는 루틴을 후킹하며, 상기 후킹에 의해 획득한 상기 입력데이터의 암호화를 수행하고, 상기 암호화를 수행하기 이전의 상기 입력데이터인 원본 입력데이터를 삭제하거나 변경하며, 상기 암호화를 수행한 이후의 상기 입력데이터인 암호화 입력데이터를 사용자 영역으로 전송하는 블루투스 보안 후킹 드라이버와,상기 사용자 영역에서 상기 블루투스 보안 후킹 드라이버로부터 상기 암호화 입력데이터를 전송 받아 소망하는 데이터 수신처가 인식할 수 있도록 복호화하는 응용 프로그램을 포함하는 블루투스 디바이스의 보안 장치.
- 제 14 항에 있어서,상기 블루투스 보안 후킹 드라이버는, 상기 클라이언트 드라이버에 속하는 블루투스 HID(Human Interface Device) 프로파일 드라이버의 동일 계층에 설치하는블루투스 디바이스의 보안 장치.
- 제 15 항에 있어서,상기 블루투스 보안 후킹 드라이버는, 운영체제에 의해 구동되는 디지털 기기의 블루투스 통신 커버리지 내에서 상기 블루투스 디바이스가 탐지되면 설치하는블루투스 디바이스의 보안 장치.
- 제 16 항에 있어서,상기 응용 프로그램은, 상기 블루투스 디바이스가 탐지되면 상기 사용자 영역에 설치하는블루투스 디바이스의 보안 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090073333A KR20110015892A (ko) | 2009-08-10 | 2009-08-10 | 블루투스 디바이스의 보안 방법과 장치 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 |
PCT/KR2010/005180 WO2011019167A2 (ko) | 2009-08-10 | 2010-08-06 | 블루투스 디바이스의 입력 데이터의 보안 방법과 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090073333A KR20110015892A (ko) | 2009-08-10 | 2009-08-10 | 블루투스 디바이스의 보안 방법과 장치 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110015892A true KR20110015892A (ko) | 2011-02-17 |
Family
ID=43586618
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090073333A KR20110015892A (ko) | 2009-08-10 | 2009-08-10 | 블루투스 디바이스의 보안 방법과 장치 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20110015892A (ko) |
WO (1) | WO2011019167A2 (ko) |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6912605B1 (en) * | 2002-03-29 | 2005-06-28 | Cypress Semiconductor Corp. | Method and/or apparatus for implementing security in keyboard-computer communication |
KR100987766B1 (ko) * | 2003-10-06 | 2010-10-13 | 삼성전자주식회사 | 블루투스 억세스 포인트와 블루투스 장치와의 자동 연결방법 및 이를 위한 블루투스 억세스 포인트 |
KR100959638B1 (ko) * | 2004-03-09 | 2010-05-26 | 주식회사 하우리 | 키보드 해킹차단 방법 및 그 프로그램을 기록한 기록매체 |
KR100549645B1 (ko) * | 2004-11-05 | 2006-02-06 | 소프트캠프(주) | 키보드로 입력되는 데이터의 보안방법과 이를 구현하는보안시스템 |
US7711324B2 (en) * | 2006-06-17 | 2010-05-04 | Cambridge Silicon Radio Limited | Method and system for connecting remote devices for communication with each other |
KR100909891B1 (ko) * | 2007-10-02 | 2009-07-31 | 소프트캠프(주) | 커널영역의 키보드 보안을 위한 입력정보 암호화 처리방법 |
-
2009
- 2009-08-10 KR KR1020090073333A patent/KR20110015892A/ko not_active Application Discontinuation
-
2010
- 2010-08-06 WO PCT/KR2010/005180 patent/WO2011019167A2/ko active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2011019167A3 (ko) | 2011-05-26 |
WO2011019167A2 (ko) | 2011-02-17 |
WO2011019167A9 (ko) | 2011-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10834061B2 (en) | Perimeter enforcement of encryption rules | |
US10931648B2 (en) | Perimeter encryption | |
US11616811B2 (en) | Tracking usage of corporate credentials | |
US10657277B2 (en) | Behavioral-based control of access to encrypted content by a process | |
US12099596B2 (en) | Mobile device policy enforcement | |
US10691824B2 (en) | Behavioral-based control of access to encrypted content by a process | |
US10628597B2 (en) | Just-in-time encryption | |
US10686827B2 (en) | Intermediate encryption for exposed content | |
US9794270B2 (en) | Data security and integrity by remote attestation | |
US10263966B2 (en) | Perimeter enforcement of encryption rules | |
CN112513857A (zh) | 可信执行环境中的个性化密码安全访问控制 | |
CN103930899B (zh) | 用于管理在设备处输入的公用数据和私人数据的方法 | |
US20090300749A1 (en) | Method and system for defeating the man in the middle computer hacking technique | |
US9111123B2 (en) | Firmware for protecting data from software threats | |
Sikder et al. | A survey on android security: development and deployment hindrance and best practices | |
Mayrhofer | An architecture for secure mobile devices | |
KR100985076B1 (ko) | Usb 디바이스 보안 장치 및 방법 | |
WO2017011051A2 (en) | Secure data protection and encryption techniques for computing devices and information storage | |
KR20110015892A (ko) | 블루투스 디바이스의 보안 방법과 장치 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체 | |
US11847237B1 (en) | Secure data protection and encryption techniques for computing devices and information storage | |
Mahboubi et al. | Shared file protection against unauthorised encryption using a Buffer-Based Signature Verification Method | |
Mayrhofer | When users cannot verify digital signatures: on the difficulties of securing mobile devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |