KR20080010917A - 보안 채널을 이용한 키보드 보안 방법 - Google Patents

보안 채널을 이용한 키보드 보안 방법 Download PDF

Info

Publication number
KR20080010917A
KR20080010917A KR1020060071612A KR20060071612A KR20080010917A KR 20080010917 A KR20080010917 A KR 20080010917A KR 1020060071612 A KR1020060071612 A KR 1020060071612A KR 20060071612 A KR20060071612 A KR 20060071612A KR 20080010917 A KR20080010917 A KR 20080010917A
Authority
KR
South Korea
Prior art keywords
keyboard
security
input
control unit
driver
Prior art date
Application number
KR1020060071612A
Other languages
English (en)
Other versions
KR100854301B1 (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 KR1020060071612A priority Critical patent/KR100854301B1/ko
Publication of KR20080010917A publication Critical patent/KR20080010917A/ko
Application granted granted Critical
Publication of KR100854301B1 publication Critical patent/KR100854301B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/83Protecting input, output or interconnection devices input devices, e.g. keyboards, mice or controllers thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

본 발명은 키보드 입력 정보를 해킹으로부터 보호해주는 보안 방법에 관한 것으로서, 더욱 상세하게는 키보드를 통한 키보드 입력이 발생하였을 때, 커널 영역의 보안 키보드 드라이버로부터 사용자 영역의 보안 프로그램까지 연결된 별도의 보안 채널을 통해 키보드 입력 정보를 전송하고, 해당 키보드 입력에 대한 키 이벤트를 강제적으로 발생시켜 줌으로써, 키보드 입력 정보를 해킹으로부터 안전하게 보호하는 동시에 응용프로그램이 정상적으로 작동되도록 해주는 키보드 보안 방법에 관한 것이다.
본 발명에 따른 보안 채널을 이용한 키보드 보안 방법은, 제어부가 응용프로그램의 입력창으로의 포커스 이동을 감지하는 제1 단계와; 제어부가 보안 드라이버를 인터럽트 디스크립터 테이블에 등록하는 제2 단계와; 사용자의 키보드 입력에 의하여 보안 드라이버가 구동되어 키보드 입력을 감지하는 제3 단계와; 보안 드라이버가 제어부와 직접 연결된 보안 채널을 통하여 제어부로 키보드 입력 정보를 전송하는 제4 단계와; 제어부가 상기 보안 채널을 통해 수신된 키보드 입력 정보를 인식 가능한 문자 데이터로 변환하여 응용프로그램에 전송하는 제5 단계; 및 제어부가 상기 변환된 문자 데이터를 기반으로 키 이벤트를 발생시키는 제6 단계를 포함하여 구성되는 점을 특징으로 한다.
키보드 보안, 해킹, 보안 채널, 키 이벤트

Description

보안 채널을 이용한 키보드 보안 방법{Keyboard security method using the security channel}
도 1은 본 발명의 제1 실시예에 따른 보안 채널을 이용한 키보드 보안 방법이 적용되는 보안 솔루션의 구성도.
도 2는 본 발명의 제1 실시예에 따른 보안 채널을 이용한 키보드 보안 방법을 나타내는 순서도.
도 3은 본 발명의 제2 실시예에 따른 보안 채널을 이용한 키보드 보안 방법을 나타내는 순서도.
<도면의 주요 부분에 대한 부호의 설명>
10 : 키보드 20 : 웹 브라우저
100 : 보안 드라이버 200 : 제어부
210 : 드라이버 등록부 220 : 데이터 수신부
230 : 데이터 입력부 240 : 이벤트 관리부
300 : 보안 채널
본 발명은 키보드 입력 정보를 해킹으로부터 보호해주는 보안 방법에 관한 것으로서, 더욱 상세하게는 키보드를 통한 키보드 입력이 발생하였을 때, 커널 영역의 보안 키보드 드라이버로부터 사용자 영역의 보안 프로그램까지 연결된 별도의 보안 채널을 통해 키보드 입력 정보를 전송하고, 해당 키보드 입력에 대한 키 이벤트를 강제적으로 발생시켜 줌으로써, 키보드 입력 정보를 해킹으로부터 안전하게 보호하는 동시에 응용프로그램이 정상적으로 작동되도록 해주는 키보드 보안 방법에 관한 것이다.
최근 인터넷과 컴퓨터 기술이 급속도로 발전함에 따라 인터넷 뱅킹이나 주식 거래 등 중요한 개인 정보를 담고 있는 다양한 업무들이 개인 컴퓨터(PC)를 통해서 이루어지고 있다.
이러한 개인 정보를 보호하기 위하여 기존의 많은 보안 기술들이 주로 서버 보안과 사용자 컴퓨터와 서버 간의 데이터 전송 보안 영역에 집중적으로 개발되어, 인터넷을 통한 전송 경로 상에서의 데이터 보안은 상당 수준 보장이 되는 단계에 이르렀다.
그러나, 상대적으로 보안 수준이 취약한 PC에서는, 스파이웨어(spyware)나 키스트로크 로거(keystroke logger)를 이용하여 키보드 입력 정보를 획득함으로써 개인 정보를 취득 및 도용하는 사례들이 증가하고 있다.
이러한 해킹 문제를 해결하기 위한 방법으로는 PC에 바이러스 백신, 스파이웨어 제거 도구 등을 설치하여 스파이웨어 등의 악성 프로그램을 탐지 및 제거하는 방법이 있다. 그러나, 이러한 방법은 변형 또는 신종 악성 프로그램이 발생한 경우에는 그 피해 상황이 보고된 이후에만 대처가 가능하므로, 사전에 피해를 예방하는 데에는 한계가 있다는 문제점이 있다.
이러한 문제점을 해결하기 위한 종래의 키보드 보안 방법으로는 기존의 키보드 드라이버를 대체하는 보안 키보드 드라이버를 설치하여, 보안 키보드 드라이버에서 키보드 입력에 대응하는 문자값이 아닌 보거스값(bogus value)을 윈도우즈 디바이스 드라이버로 전송함으로써, 메시지 대기열 등에 설치된 후킹 프로그램이 잘못된 보거스값 만을 획득하도록 하여 키보드 입력 정보를 보호하는 방법이 있다. 그러나, 이러한 보안 방법은 웹 브라우저의 입력창에 보거스값이 전달되어 출력되므로, 비밀번호 입력창에는 유용하게 적용될 수 있으나 아이디 입력창과 같이 사용자에게 입력 내용이 노출되는 입력창에는 적용하기 어려운 단점이 있다.
또다른 종래의 키보드 보안 방법으로는 한국등록특허공보 제 0378586호에 기재된 "엑티브엑스 기반의 키보드 해킹 방지 방법 및 장치"가 있다. 상기 문헌에는 보안 키보드 드라이버에서 키보드 입력 정보를 버퍼링한 후 키보드 포트에 남아있는 키보드 흔적 데이터를 삭제한 후, 버퍼링된 키보드 입력 정보를 기존의 키보드 데이터 흐름이 아닌 별도의 전송 구간을 통하여 웹 브라우저의 보안 입력창으로 전달하는 방식으로 키보드 입력 정보를 보호하는 방법이 기재되어 있다.
그러나, 상기 보안 방법은 웹 브라우저의 보안 입력창이 보안 키보드 드라이버와 통신이 가능하도록 구현되어야 하므로, 보안을 적용할 모든 웹 페이지를 다시 구축해야 하는 번거로움이 있어 현실적으로 적용하기에 어려운 문제점이 있다.
이러한 문제점을 해결하기 위한 종래의 키보드 보안 방법으로 한국등록특허공보 제 0447777호에 기재된 "키 스토록 데이터의 해킹 방지 방법 및 이를 기록한 컴퓨터로 읽을 수 있는 기록매체"가 있다. 상기 문헌에는 보안 키보드 드라이버에서 메세지 대기열로는 NULL 값을 제공하고, 보안 입력창 제어부에서 보안 키보드 드라이버로부터 직접 암호화된 키스트록 데이터를 전송받아 웹 브라우저로 입력된 키스트록 데이터를 전달하는 키보드 보안 방법이 기재되어 있다.
그러나, 이와 같이 메세지 대기열에 NULL 값을 제공하고, 키보드 입력 정보를 웹 브라우저로 직접 전달하게 되면, 키보드 입력에 대응하는 키 이벤트 즉, OnKeyPress, OnKeyDown 및 OnKeyUp 이벤트가 정상적으로 발생하지 않기 때문에, 응용프로그램에서 상기 이벤트 발생을 감지하여 필요한 작업을 수행하는 경우에 응용프로그램이 오작동할 수 있는 문제점이 있다. 예를 들면, 비밀번호 입력창에서 숫자 이외의 다른 문자가 입력되거나 전체 입력 횟수가 기 설정된 자릿수를 초과할 때 사용자에게 경고 메시지를 출력하는 기능을 수행하는 경우, 키 이벤트가 정확하게 발생하지 않으면 이와 같은 기능을 원활히 수행할 수 없게 된다.
본 발명은 상기한 종래 기술에 따른 키보드 보안 방법의 문제점을 해결하기 위한 것이다. 즉, 본 발명의 목적은, 키보드 입력 정보를 커널 영역의 보안 키보드 드라이버로부터 사용자 영역의 보안 프로그램까지 연결된 별도의 보안 채널을 통해 전송하고, 해당 키보드 입력에 대한 키 이벤트를 강제적으로 발생시켜 줌으로써, 키보드 입력 정보를 해킹으로부터 안전하게 보호하는 동시에 응용프로그램을 정상 적으로 작동시키는 데에 있다.
상기의 목적을 달성하기 위한 기술적 사상으로서의 본 발명은,
제어부가 응용프로그램의 입력창으로의 포커스 이동을 감지하는 제1 단계와; 제어부가 보안 드라이버를 인터럽트 디스크립터 테이블에 등록하는 제2 단계와; 사용자의 키보드 입력에 의하여 보안 드라이버가 구동되어 키보드 입력을 감지하는 제3 단계와; 보안 드라이버가 제어부와 직접 연결된 보안 채널을 통하여 제어부로 키보드 입력 정보를 전송하는 제4 단계와; 제어부가 상기 보안 채널을 통해 수신된 키보드 입력 정보를 인식 가능한 문자 데이터로 변환하여 응용프로그램에 전송하는 제5 단계; 및 제어부가 상기 변환된 문자 데이터를 기반으로 키 이벤트를 발생시키는 제6 단계를 포함하여 구성되는 것을 특징으로 하는 보안 채널을 이용한 키보드 보안 방법을 제공한다.
이하, 본 발명의 바람직한 실시예를 첨부 도면에 의거하여 상세하게 설명하기로 한다.
본 발명의 제1 실시예는 컴퓨터 운영체제가 윈도우즈(windows)인 경우 키보드 하드웨어로부터 웹 브라우저의 입력창 즉 텍스트박스(text box)까지 키보드 입력 정보를 보호하기 위한 키보드 보안 방법에 대한 실시예이다.
도 1은 본 발명의 제1 실시예에 따른 보안 채널을 이용한 키보드 보안 방법이 적용되는 보안 솔루션의 구성도이다.
도 1에 도시된 바와 같이, 본 발명의 제1 실시예에 따른 보안 채널을 이용한 키보드 보안 방법이 적용되는 보안 솔루션은, 커널 모드(ring 0)에 설치되어 키보드(10)를 통한 입력 데이터를 처리하는 보안 드라이버(100)와, 사용자 모드(ring 3)에 설치되어 상기 보안 드라이버(100)로부터 보안 채널(300)을 통하여 키보드 입력 정보를 직접 전송받아 처리하는 제어부(200)를 포함하여 구성된다.
상기 제어부(200)는 웹 브라우저(20)의 입력창에 포커스가 이동하는 순간 보안 드라이버(100)를 인터럽트 디스크립터 테이블(interrupt descriptor table)에 등록해주는 드라이버 등록부(210)와, 보안 드라이버(100)로부터 보안 채널(300)을 통해 키보드 입력 정보를 전송받는 데이터 수신부(220)와, 데이터 수신부(220)를 통해 수신된 키보드 입력 정보를 해당하는 문자 데이터로 변환하여 웹 브라우저(20)의 입력창에 출력해주는 데이터 입력부(230) 및 키보드 관련 이벤트(이하, '키 이벤트'라 칭하기로 함.)를 발생시켜 웹 브라우저(20)로 전송해주는 이벤트 관리부(240)를 포함하여 구성된다.
여기서, 인터럽트 디스크립터 테이블은 시스템의 운영체제에서 제공되는 영역으로서, 내외부 인터럽트 및 예외 처리를 담당하는 함수 주소에 대한 목록을 저장하고 있다. 키보드를 통하여 키보드 데이터가 입력되면 인터럽트가 발생하게 되고, 운영체제는 인터럽트 디스크립터 테이블에서 키보드를 처리하는 인터럽트 서비스 루틴(interrupt service routine)의 주소를 찾아서 해당 인터럽트 서비스 루틴을 실행하게 된다. 따라서, 드라이버 등록부(210)에서 보안 드라이버(100)의 인터럽트 서비스 루틴 주소를 인터럽트 디스크립터 테이블에 등록하면, 키보드 입력에 의한 인터럽트가 발생했을 때 기존의 인터럽트 서비스 루틴, 즉 기존 키보드 드라 이버가 아닌 본 발명에 따른 보안 드라이버(100)가 실행된다.
이와 같이 보안 드라이버(100)가 실행되면, 보안 드라이버(100)는 입력된 키보드 입력 정보를 기존의 키입력 정보 전송 채널을 거치지 않고 제어부(200)의 데이터 수신부(220)와 직접 연결되어 있는 별도의 보안 채널(300)을 통하여 키입력 정보를 전송하게 된다.
데이터 입력부(230)는 데이터 수신부(220)를 통해 수신된 스캔 코드(scan code) 형식의 키보드 입력 정보를 인식 가능한 문자 데이터(readable character)로 변환한 후, 웹 브라우저(20)의 입력창에 출력해준다.
이벤트 관리부(240)는 수신된 키보드 입력 정보를 기반으로 해당 키가 눌려질 때 운영체제가 자동으로 발생시키는 각종 키 이벤트, 예를 들면 OnKeyPress, OnKeyDown 및 OnKeyUp 이벤트를 발생시켜 웹 브라우저(20)로 전송한다.
도 2는 본 발명의 제1 실시예에 따른 보안 채널을 이용한 키보드 보안 방법을 나타내는 순서도이다.
이하, 상술한 바와 같이 구성된 보안 솔루션에 적용되는 본 발명의 제1 실시예에 따른 보안 채널을 이용한 키보드 보안 방법에 대하여 도 2를 참조하여 상세히 설명하기로 한다.
사용자의 마우스 클릭 등에 의하여 웹 브라우저의 특정 입력창으로 포커스(focus)가 이동하면, 제어부(200)는 해당 입력창으로의 포커스 이동을 감지한다(S100).
이 때, 제어부(200)는 보안 드라이버(100)의 저장 주소를 인터럽트 디스크립터 테이블의 키보드 처리용 인터럽트 서비스 루틴으로 등록한다(S200).
이후, 사용자가 키보드를 입력하면 보안 드라이버(100)가 구동되면서 키보드 입력을 감지한후(S300), 제어부(200)로 해당 키보드 입력 정보를 제어부(200)와 직접 연결된 보안 채널(300)을 통하여 전송해준다(S400).
이어서, 제어부(200)는 수신된 키보드 입력 정보를 인식 가능한 문자 데이터로 변환한 후 웹 브라우저로 전송하여, 해당 문자 데이터가 입력창에 출력되도록 한다(S500).
여기서, 인식 가능한 문자 데이터는 수신된 키보드 입력 정보 중 입력된 키의 스캔 코드로부터 얻어지게 된다. 또한, 인식 가능한 문자 데이터를 웹 브라우저로 전송하는 과정에서, 해당 문자 데이터에 관한 OnKeyDown 메시지만을 웹 브라우저로 단독 전송하여 웹 브라우저의 입력창에 해당 문자가 출력되도록 하는 것이 바람직하다.
이후, 제어부(200)는 상기 입력 문자 변환 및 전송 단계(S500)에서 변환된 문자 데이터를 기반으로 키 이벤트를 발생시켜 웹 브라우저로 전송한다(S600). 여기서, 바람직하게는 각 키보드 입력 정보에 대응하는 키 이벤트를 OnKeyPress, OnKeyDown 및 OnKeyUp로 구성하여, 상기 각 이벤트를 순차적으로 발생시키는 것이 좋다.
이후, 사용자가 다른 입력창으로 포커스를 변경시키거나 '확인' 버튼을 클릭하여 해당 입력창에 대한 입력을 완료하면, 제어부(200)는 기존의 키보드 드라이버 주소를 인터럽트 디스크립터 테이블의 키보드 처리용 인터럽트 서비스 루틴으로 등록하여, 보안 드라이버의 등록을 해제한다(S700).
한편, 사용자의 입력이 종료되지 않은 상태이면 상기 키보드 입력 감지(S300) 단계로 되돌아간다.
도 3은 본 발명의 제2 실시예에 따른 보안 채널을 이용한 키보드 보안 방법을 나타내는 순서도이다.
본 발명의 제2 실시예에 따른 보안 채널을 이용한 키보드 보안 방법은 입력창의 종류가 비밀번호 입력창인 경우에 바람직한 키보드 보안방법으로서, 전술한 제1 실시예의 입력 문자 변환 및 전송 단계(S500)에서와 같이 수신된 키보드 입력 정보로부터 얻어지는 실제 입력 문자를 웹 브라우저로 전송하는 대신, 임의의 대체 문자를 전송하고 입력이 완료된 이후 실제 입력 문자를 웹 브라우저로 전송해준다.
이하, 도 3을 참조하여 본 발명의 제2 실시예에 따른 보안 채널을 이용한 키보드 보안 방법을 보다 상세히 설명하기로 한다.
먼저, 보안 채널을 통한 키보드 입력 정보 전송 단계(S400)까지의 단계들은 전술한 제1 실시예와 동일하므로 이에 대한 상세한 설명은 생략하기로 한다.
보안 채널을 통한 키보드 입력 정보 전송 단계(S400)가 완료되면, 제어부(200)는 수신된 키보드 입력 정보를 인식 가능한 문자 데이터로 변환한 후 저장한다(S510).
이후, 제어부(200)는 실제 입력 문자 데이터가 아닌 보거스 값(bogus value) 을 웹 브라우저로 전송한다(S520). 여기서, 보거스 값은 입력된 문자가 숫자인 경우에는 '1234', 문자인 경우에는 'apple'과 같이 미리 지정된 일정한 단어 내에서 순차적으로 문자를 독출하여 전송해 주는 것이 좋다.
이후, 제어부(200)는 저장된 문자 데이터로부터 해당 입력창에 입력된 문자의 개수를 카운트하여(S610), 상기 입력 문자 개수가 해당 입력창의 입력 허용 최대 길이(max length)와 동일한지 판단한다(S620).
상기 판단 단계(S620)에서 동일한 경우 입력 문자 전체에 대하여 각각의 키 이벤트를 생성한 후 웹 브라우저로 전송한다(S630). 여기서, 전술한 제1 실시예에서와 마찬가지로 각 키보드 입력 정보에 대응하는 키 이벤트를 OnKeyPress, OnKeyDown 및 OnKeyUp로 구성하여, 상기 각 이벤트를 순차적으로 발생시키는 것이 바람직하다.
이후, 사용자가 다른 입력창으로 포커스를 변경시키거나 '확인' 버튼을 클릭하여 해당 입력창에 대한 입력을 완료하면, 제어부(200)는 저장되어 있는 입력 문자 전체를 웹 브라우저로 전송하고(S640), 기존의 키보드 드라이버 주소를 인터럽트 디스크립터 테이블의 키보드 처리용 인터럽트 서비스 루틴으로 등록하여 보안 드라이버의 등록을 해제한다(S700).
한편, 사용자의 입력이 종료되지 않은 상태이면 상기 키보드 입력 감지(S300) 단계로 되돌아간다.
통상적으로, 웹 브라우저는 비밀번호 등을 입력받을때 입력된 문자의 개수를 카운트하여 입력문자의 개수가 해당 입력창의 입력 허용 최대 길이에 이르면, 추가 적인 입력시 경고 메시지를 띄우거나, 다음 입력창으로 포커스를 이동시키는 작업을 수행한다. 이를 위해서는 최소한 입력문자의 개수가 해당 입력창의 입력 허용 최대 길이에 이르기 전에 웹 브라우저에서 OnKeyDown과 같은 키 이벤트를 감지해야 한다. 따라서, 상술한 바와 같이, 입력 문자 데이터를 저장하여 두었다가 키 입력 횟수가 해당 입력창의 입력 허용 최대 길이에 달할 때에 저장된 전체 입력 문자에 대한 키 이벤트를 발생시킴으로써, 웹 브라우저가 키 이벤트에 대한 정상적인 처리를 할 수 있도록 해줄 수 있다. 여기서, 키 입력 횟수가 해당 입력창의 입력 허용 최대 길이에 달할 때 키 이벤트를 발생시키는 대신, 전술한 제1 실시예에서와 같이, 키 입력 시마다 해당하는 문자 데이터에 대한 키 이벤트를 개별적으로 발생시켜줄 수도 있다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것은 아니며, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백하다 할 것이다.
이상에서와 같이, 본 발명에 따른 보안 채널을 이용한 키보드 보안 방법은, 키보드 입력 정보를 통상의 전송 경로가 아닌 별도의 보안 채널을 통해 전송하고, 이로인해 정상적으로 발생하지 않는 해당 키 이벤트를 강제적으로 발생시켜 줌으로써, 키보드 입력 정보를 해킹으로부터 안전하게 보호하면서도 응용프로그램의 키 이벤트 처리 루틴이 정상적으로 작동하도록 해주는 효과가 있다.

Claims (6)

  1. 커널 모드에 설치된 보안 드라이버와, 사용자 모드에 설치되어 키보드 입력 정보를 처리하는 제어부가 구비된 컴퓨터 시스템 상에서, 키보드 입력 정보를 보호하기 위한 보안 방법에 있어서,
    제어부가 응용프로그램의 입력창으로의 포커스 이동을 감지하는 제1 단계와;
    제어부가 보안 드라이버를 인터럽트 디스크립터 테이블에 등록하는 제2 단계와;
    사용자의 키보드 입력에 의하여 보안 드라이버가 구동되어 키보드 입력을 감지하는 제3 단계와;
    보안 드라이버가 제어부와 직접 연결된 보안 채널을 통하여 제어부로 키보드 입력 정보를 전송하는 제4 단계와;
    제어부가 상기 보안 채널을 통해 수신된 키보드 입력 정보를 인식 가능한 문자 데이터로 변환하여 응용프로그램에 전송하는 제5 단계; 및
    제어부가 상기 변환된 문자 데이터를 기반으로 키 이벤트를 발생시키는 제6 단계;
    를 포함하여 구성되는 것을 특징으로 하는 보안 채널을 이용한 키보드 보안 방법.
  2. 제 1항에 있어서,
    입력 종료시 제어부가 기존의 키보드 드라이버를 인터럽트 디스크립터 테이블에 재등록하여 보안 드라이버의 등록을 해제하는 제7 단계를 더 포함하여 구성되는 것을 특징으로 하는 보안 채널을 이용한 키보드 보안 방법.
  3. 커널 모드에 설치된 보안 드라이버와, 사용자 모드에 설치되어 키보드 입력 정보를 처리하는 제어부가 구비된 컴퓨터 시스템 상에서, 키보드 입력 정보를 보호하기 위한 보안 방법에 있어서,
    제어부가 응용프로그램의 입력창으로의 포커스 이동을 감지하는 제1 단계와;
    제어부가 보안 드라이버를 인터럽트 디스크립터 테이블에 등록하는 제2 단계와;
    사용자의 키보드 입력에 의하여 보안 드라이버가 구동되어 키보드 입력을 감지하는 제3 단계와;
    보안 드라이버가 제어부와 직접 연결된 보안 채널을 통하여 키보드 입력 정보를 전송하는 제4 단계와;
    제어부가 상기 보안 채널을 통해 수신된 키보드 입력 정보를 인식 가능한 문자 데이터로 변환하여 저장하는 제5 단계와;
    제어부가 보거스 값(bogus value)을 웹 브라우저로 전송하는 제6 단계와;
    제어부가 상기 변환된 문자 데이터를 기반으로 키 이벤트를 발생시키는 제7 단계와;
    입력 종료시 제어부가 저장되어 있는 입력 문자 전체를 웹 브라우저로 전송 하는 제8 단계;
    를 포함하여 구성되는 것을 특징으로 하는 보안 채널을 이용한 키보드 보안 방법.
  4. 제 3항에 있어서,
    입력 종료시 제어부가 기존의 키보드 드라이버를 인터럽트 디스크립터 테이블에 재등록하여 보안 드라이버의 등록을 해제하는 제 9단계를 더 포함하여 구성되는 것을 특징으로 하는 보안 채널을 이용한 키보드 보안 방법.
  5. 제 3항에 있어서,
    상기 제7 단계는,
    제어부가 상기 저장된 문자 데이터로부터 해당 입력창에 입력된 문자의 개수를 카운트하는 단계와;
    상기 입력 문자의 개수가 해당 입력창의 입력 허용 최대 길이(max length)와 동일한지 판단하는 단계와;
    상기 판단 단계에서 동일한 경우, 입력 문자 전체에 대하여 각각의 키 이벤트를 생성한 후 웹 브라우저로 전송하는 단계;
    로 구성되는 것을 특징으로 하는 보안 채널을 이용한 키보드 보안 방법.
  6. 제 1항 내지 제 5항 중의 어느 한 항에 있어서,
    상기 키 이벤트 발생 단계는,
    상기 입력 문자 데이터에 대응하여, OnKeyPress, OnKeyDown 및 OnKeyUp 키 이벤트를 순차적으로 발생시키는 것을 특징으로 하는 보안 채널을 이용한 키보드 보안 방법.
KR1020060071612A 2006-07-28 2006-07-28 보안 채널을 이용한 키보드 보안 방법 KR100854301B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060071612A KR100854301B1 (ko) 2006-07-28 2006-07-28 보안 채널을 이용한 키보드 보안 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060071612A KR100854301B1 (ko) 2006-07-28 2006-07-28 보안 채널을 이용한 키보드 보안 방법

Publications (2)

Publication Number Publication Date
KR20080010917A true KR20080010917A (ko) 2008-01-31
KR100854301B1 KR100854301B1 (ko) 2008-08-26

Family

ID=39222832

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060071612A KR100854301B1 (ko) 2006-07-28 2006-07-28 보안 채널을 이용한 키보드 보안 방법

Country Status (1)

Country Link
KR (1) KR100854301B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101034016B1 (ko) * 2008-11-28 2011-05-11 킹스정보통신(주) 키보드 보안상태 확인모듈 및 그 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020048313A (ko) * 2002-03-07 2002-06-22 최동성 키보드 해킹 방지 방법
KR100999022B1 (ko) * 2005-01-14 2010-12-09 주식회사 하우리 컴퓨터 해킹차단 장치 및 방법과 그 프로그램을 기록한기록매체

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101034016B1 (ko) * 2008-11-28 2011-05-11 킹스정보통신(주) 키보드 보안상태 확인모듈 및 그 방법

Also Published As

Publication number Publication date
KR100854301B1 (ko) 2008-08-26

Similar Documents

Publication Publication Date Title
JP4451884B2 (ja) コンピュータ保安装置、コンピュータ保安方法、及び記録媒体
CN100426224C (zh) 用于应用程序的划分的方法和系统
CN101136049B (zh) 信息处理系统和信息处理方法
JP4159100B2 (ja) 情報処理装置による通信を制御する方法およびプログラム
CN101414339B (zh) 保护进程内存及确保驱动程序加载的安全性的方法
KR101006721B1 (ko) 키보드 입력정보 보안장치 및 그 방법
CN101567035B (zh) 信息处理装置及其控制方法
GB2465240A (en) Detecting malware by monitoring executed processes
CN1609810A (zh) 向有高保证执行环境的系统的可信代理提供安全输入/输出
KR20170056876A (ko) 로그 분석을 기반으로 하는 보안 모니터링 방법, 장치 및 시스템
EP3652647B1 (en) System and method for detecting a malicious file using image analysis prior to execution of the file
KR100985076B1 (ko) Usb 디바이스 보안 장치 및 방법
KR100854301B1 (ko) 보안 채널을 이용한 키보드 보안 방법
KR100835224B1 (ko) 응용프로그램 후킹을 방지하는 키보드 보안 방법
US20100077465A1 (en) Key protecting method and a computing apparatus
KR20030036276A (ko) 보안 입력 디바이스 드라이버를 이용한 컴퓨터 보안시스템
US20100325444A1 (en) Document encrypting system and method thereof
JP2013506185A (ja) ウィンドウズ・カーネル改変探知方法
US20160210474A1 (en) Data processing apparatus, data processing method, and program
CN109214212B (zh) 信息防泄露方法及装置
EP2750066B1 (en) System and method for detecting malware that interferes with a user interface
KR20090047041A (ko) 키보드 보안 모듈과 연동되는 가상키보드를 이용한 키보드해킹 방지 방법
US20140177831A1 (en) Key protecting method and a computing apparatus
Chang The study on end-to-end security for ubiquitous commerce
JP5177205B2 (ja) ソフトウェアの改竄防止装置及び改竄防止方法

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
J206 Request for trial to confirm the scope of a patent right
J204 Invalidation trial for patent
J121 Written withdrawal of request for trial
J121 Written withdrawal of request for trial
FPAY Annual fee payment

Payment date: 20120608

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130610

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140818

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150810

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160810

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170725

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20180725

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190910

Year of fee payment: 12