KR20070016029A - 컴퓨터 보안 기능을 제공하는 휴대용 usb 저장 장치 및상기 휴대용 usb 저장 장치의 동작 방법 - Google Patents

컴퓨터 보안 기능을 제공하는 휴대용 usb 저장 장치 및상기 휴대용 usb 저장 장치의 동작 방법 Download PDF

Info

Publication number
KR20070016029A
KR20070016029A KR1020050070772A KR20050070772A KR20070016029A KR 20070016029 A KR20070016029 A KR 20070016029A KR 1020050070772 A KR1020050070772 A KR 1020050070772A KR 20050070772 A KR20050070772 A KR 20050070772A KR 20070016029 A KR20070016029 A KR 20070016029A
Authority
KR
South Korea
Prior art keywords
storage device
user computer
security
program
usb storage
Prior art date
Application number
KR1020050070772A
Other languages
English (en)
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 KR1020050070772A priority Critical patent/KR20070016029A/ko
Publication of KR20070016029A publication Critical patent/KR20070016029A/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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/123Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Virology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 컴퓨터 보안 기능을 제공하는 휴대용 USB 저장 장치 및 상기 휴대용 USB 저장 장치의 동작 방법에 관한 것으로서, 더욱 상세하게는 휴대용 저장 장치가 사용자 컴퓨터에 접속되는 경우, 해당 컴퓨터에 소정의 보안 기능을 제공하는 휴대용 USB 저장 장치 및 상기 휴대용 USB 저장 장치의 동작 방법에 관한 것이다. 본 발명에 따르면, 휴대용 USB 저장 장치에 저장된 데이터를 접속한 컴퓨터에서 사용하는 경우 사용자가 별도의 조작을 하지 않더라도 자동으로 휴대용 USB 저장 장치가 연결된 컴퓨터의 보안을 유지할 수 있는 효과가 있다.
USB, 보안, 시큐리티, 정보 보호, 메모리, 저장 장치

Description

컴퓨터 보안 기능을 제공하는 휴대용 USB 저장 장치 및 상기 휴대용 USB 저장 장치의 동작 방법{PORTABLE USB STORAGE DEVICE FOR PROVIDING COMPUTER SECURITY FUNCTION AND METHOD FOR OPERATING THE DEVICE}
도 1은 본 발명의 제1 실시예에 따른, 휴대용 USB 저장 장치와 사용자 컴퓨터가 연결된 구조를 도시한 도면이다.
도 2는 본 발명의 제1 실시예에 따른, 바이러스 검사 인터페이스를 설명하기 위한 도면이다.
도 3은 도 2의 바이러스 검사 인터페이스에 대한 다른 실시예를 설명하기 위한 도면이다.
도 4는 본 발명의 제2 실시예에 따른, 키보드 보호 인터페이스를 설명하기 위한 도면이다.
도 5는 본 발명의 제3 실시예에 따른, 윈도우 보안 패치 기능을 설명하기 위한 도면이다.
도 6은 본 발명의 제1 실시예에 따른, 휴대용 USB 저장 장치를 이용한 컴퓨터 보안 방법을 설명하기 위한 흐름도이다.
도 7은 도 6의 휴대용 USB 저장 장치를 이용하여 바이러스를 검사 또는 치료하는 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 제2 실시예에 따른, 휴대용 USB 저장 장치를 이용하여 키보드의 보안을 유지하는 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 제3 실시예에 따른, 휴대용 USB 저장 장치를 이용하여 운영체계 보안 패치를 하는 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명에 따른, 휴대용 USB 저장 장치를 이용한 보안 동작이 수행되는 범용 컴퓨터 장치의 내부 블록도이다.
<도면의 주요 부분에 대한 부호의 설명>
100: 휴대용 USB 저장 장치 110: USB 커넥터
120: 메모리 수단 121: 시스템 영역
122: 사용자 사용 영역 130: 사용자 컴퓨터
135: USB 포트 140: 보안 서버
150: 운영체계 제공사 서버
본 발명은 컴퓨터 보안 기능을 제공하는 휴대용 USB 저장 장치 및 그 방법에 관한 것으로서, 더욱 상세하게는 휴대용 USB 저장 장치가 사용자 컴퓨터에 접속되는 경우, 해당 컴퓨터에 소정의 보안 기능을 제공하는 휴대용 USB 저장 장치 및 상기 휴대용 USB 저장 장치의 동작 방법에 관한 것이다.
현대 사회에서 컴퓨터는 현대인의 필수품으로 대량의 정보를 관리하기 위한 수단으로 사용될 뿐만 아니라, 컴퓨터와 연결된 통신망을 이용하여 새로운 정보를 습득하기 위한 수단으로도 사용되고 있다. 최근의 컴퓨터는 프로세서의 연산 처리 속도가 빨라지고 메모리의 리소스가 증대되는 등 하드웨어의 성능이 향상됨에 따라 사용자가 컴퓨터에서 사용하는 데이터 또는 프로그램도 대용량을 보편적으로 사용하고 있으며 용량의 크기는 급격하게 증대되고 있는 추세에 있다.
따라서, 종래 휴대용 USB 저장 장치로 일반적으로 사용되던 플로피 디스크의 사용 빈도는 점차 감소하고 플로피 디스크의 대체 수단으로 대용량 데이터를 저장할 수 있는 수단이 다양하게 개발되고 있다. 특히, 사용자가 컴퓨터에서 자유롭게 읽고 쓰기를 하는 것이 가능한 휴대용 하드 디스크 드라이브 또는 휴대용 플래시 메모리 등이 대중적으로 사용되고 있다.
그 일례로서, 휴대용 저장 장치는 초소형으로 사용자가 휴대하기에 간편하고 데이터를 빠르게 송수신할 수 있으며 초보자도 쉽게 사용할 수 있다는 점에서 컴팩트 디스크 등의 다른 저장 매체 보다 광범위하게 이용되고 있다. 따라서, 사용자는 일반 문서 데이터는 물론, 금융 업무를 처리하기 위해 사용되는 공인 인증서 등 보안이 요구되는 중요 문서 파일도 휴대용 USB 저장 장치에 저장하고 휴대하면서 USB를 지원하는 컴퓨터에서 플로피 디스크와 같이 편리하게 사용이 가능하다.
하지만, 많은 사람들이 수시로 이용하는 공공장소의 컴퓨터, 개인용 컴퓨터 방 컴퓨터 등 불특정 다수가 사용하는 컴퓨터는 언제든지 바이러스, 웜, 애드웨어 등에 쉽게 노출될 수 있고, 통신 네트워크에 연결된 컴퓨터의 경우 해커들의 표적이 될 수 있다는 점에서 많은 문제점이 있다. 특히, 최근에는 인터넷 뱅킹을 사용 하기 위해 공인 인증서를 사용하거나 특정 인터넷 사이트나 카페 등에 회원 가입을 할 때 사용자의 정보, 아이디, 패스워드 등을 입력하는 경우가 종종 있어서 중요 정보가 타인에게 쉽게 노출될 위험이 크다.
이에, 휴대용 USB 저장 장치에 저장된 데이터의 보안을 유지하는 방법에 대한 연구가 활발히 이루어지고 있으며 이러한 발명을 개시하고 있는 선행기술로 대한민국 등록특허 제10-0481714호가 있다.
상기 대한민국 등록특허 제481,714호(이하, "선행기술")는 USB를 이용한 이동식 저장 장치 및 그를 이용한 정보 제공 방법에 관한 것이다. 더욱 상세하게는 기존의 휴대용 USB 저장 장치를 사용자 컴퓨터에 접속할 때 자동으로 원격 서버와 연결되도록 하여 원격 서버와 휴대용 USB 저장 장치간에 정보를 서로 교환할 수 있도록 하고, 원격 서버와 주고 받은 정보를 휴대용 USB 저장 장치의 특정 영역에 저장하여 사용자가 쉽게 접근할 수 없도록 하여 고객 관리 및 데이터 보안 유지 등의 용도로 사용할 수 있는 구성을 개시하고 있다.
하지만, 선행기술은 컴퓨터에 설치할 프로그램을 휴대용 USB 저장 장치에 저장하고 휴대용 USB 저장 장치가 접속한 컴퓨터에 설치된 프로그램을 업데이트할 때 휴대용 USB 저장 장치가 업데이트된 데이터를 저장하므로 제한된 저장 공간을 가지는 휴대용 USB 저장 장치에서 사용자가 사용할 수 있는 저장 공간이 점차 감소될 수 있는 문제점이 있다.
또한, 휴대용 USB 저장 장치에 저장된 데이터의 보안 등을 유지하기 위해 휴대용 USB 저장 장치를 제작할 때 메모리 영역을 사용자가 읽고 쓰기가 불가능한 영 역, 읽기만 가능한 영역, 읽고 쓰기가 가능한 영역 등으로 분할하여 제작하는 방법을 사용하고 있어서 사용자가 이상의 세 영역 중 특정 영역을 좀 더 확장해서 쓰고 싶어도 자유롭게 영역의 용량을 가감하는 것이 어렵다는 문제점이 있다.
또한, 휴대용 USB 저장 장치의 식별자를 이용하여 휴대용 USB 저장 장치 자체에 대한 인증을 우선 원격 서버로부터 받아야 하므로, 휴대용 USB 저장 장치에 저장된 보안을 요하지 않는 일반 데이터를 단순히 컴퓨터에 전송하는 작업 조차도 원격 서버로부터 인증을 받지 못하면 실시할 수 없다는 문제점이 있다.
또한, 선행기술의 휴대용 USB 저장 장치는 자동 실행(autorun)기능을 갖추지 않고 있으므로 휴대용 USB 저장 장치에 저장된 어플리케이션 프로그램을 접속한 컴퓨터에서 사용하려면 사용자가 반드시 어플리케이션 프로그램의 설치 작업을 수동적으로 수행해 주어야 한다. 또한 선행기술과 같이 다수의 컴퓨터에 동일한 설치 작업을 반복적으로 실시해야 하는 경우 인력 낭비 및 시간 낭비가 크게 발생할 수 있는 문제점이 있다.
결국, 사용자가 컴퓨터에서 휴대용 USB 저장 장치에 저장된 데이터를 안전하게 사용하고 작업을 마칠 때까지 수동적으로 해주어야 할 작업이나 인증 절차가 많아서 시간 소비가 크고, 어플리케이션 프로그램 등을 휴대용 USB 저장 장치에 내장되어 있고 업데이트도 휴대용 USB 저장 장치에서 유지되므로 저장 공간이 좁아지며 데이터의 보안 등을 유지하기 위해 메모리 구획화를 해야 한다는 불편함이 있다.
따라서, 사용자가 휴대용 USB 저장 장치에 저장된 데이터를 보안이 유지된 상태에서 보다 신속하게 사용할 수 있고 휴대용 USB 저장 장치의 인증 절차를 보다 간편화하며 휴대용 USB 저장 장치의 메모리 영역도 사용자의 의사에 따라 자유롭게 활용할 수 있도록 함으로써 사용자의 편의를 증대시킬 수 있는 새로운 기술의 출현이 절실히 요구되고 있다.
본 발명은 상술한 바와 같은 종래기술의 문제점을 해결하기 위해 안출된 것으로서, 휴대용 USB 저장 장치에 저장된 데이터를 보안이 유지된 상태로 컴퓨터에서 사용할 수 있도록 하는 것을 목적으로 한다.
또한, 본 발명은 휴대용 USB 저장 장치가 접속되는 컴퓨터에 보안 기능을 제공하는 휴대용 USB 저장 장치를 제공하는 것을 그 목적으로 한다.
또한, 본 발명은 휴대용 USB 저장 장치가 컴퓨터에 접속되는 경우 사용자의 추가 조작이 없어도 해당 휴대용 USB 저장 장치에 기록된 에이전트 프로그램이 자동 실행되도록 함으로써, 보안 기능을 이용하기 위한 추가 입력을 생략할 수 있도록 하는 것을 그 목적으로 한다.
또한, 본 발명은 휴대용 USB 저장 장치의 사용자 가용 영역을 최대한 보장하면서 해당 휴대용 USB 저장 장치가 접속되는 컴퓨터에 다양한 보안 기능을 제공하는 것을 그 목적으로 한다.
상기의 목적을 달성하고 상술한 종래 기술의 문제점을 해결하기 위하여 본 발명에 따른 휴대용 USB 저장 장치는 USB 커넥터 및 소정의 USB 드라이버, 인스톨(install) 프로그램 및 하나 이상의 에이전트(agent) 프로그램이 기록된 시스템 영 역 및 임의의 데이터가 저장될 수 있는 사용자 사용 영역을 포함하는 메모리 수단을 포함하고, 상기 USB 드라이버는 상기 USB 커넥터가 소정의 보안 서버로 접속할 수 있는 통신망과 연결된 사용자 컴퓨터의 USB 포트에 접속되는 경우 상기 사용자 컴퓨터의 운영체계로 로드되며, 상기 로드된 USB 드라이버는 상기 인스톨 프로그램 및 상기 에이전트 프로그램을 상기 사용자 컴퓨터에 자동으로 설치하고, 상기 운영체계가 상기 에이전트 프로그램의 실행 파일을 자동 실행(autorun)하며, 상기 에이전트 프로그램은 상기 통신망을 통하여 상기 보안 서버로 접속하고, 상기 보안 서버에 저장된 패턴 데이터를 상기 사용자 컴퓨터로 다운로드 받는 것을 특징으로 한다.
본 발명에서 사용되는 USB (Universal Serial Bus)는 상호 접속(Inter-connection)을 위한 간단한 접속 방식을 제공하기 위한 개인용 컴퓨터 주변 장치의 보편적 버스 규격(범용 직렬 버스)으로 오디오 플레이어, 조이스틱, 키보드, 전화, 스캐너 및 프린터 등과 같은 주변 장치와 컴퓨터 간의 플러그 앤 플레이 인터페이스(Plug & Play Interface)를 의미한다. 또한, 본 발명에서 사용되는 휴대용 USB 저장 장치는 데이터를 저장하고 접속한 컴퓨터와 데이터를 송수신할 수 있고 플래시 메모리나 휴대용 하드 디스크 등의 형태로 제작될 수 있다. 또한 컴퓨터를 사용하는 도중에 연결해도 인식이 되며, 별도의 주변장치용 전원이 필요 없다.
또한, 본 발명에서 사용되는 에이전트(agent) 프로그램은 관리자의 개입이 없이도 정해진 스케줄에 따라 통신망을 통해 연결된 서버 수단으로부터 정보를 수집하거나 몇몇 다른 서비스를 수행하는 프로그램을 말한다. 전형적인 에이전트 프 로그램은 미리 제공된 매개변수들을 이용하여 전체 또는 일부 인터넷을 검색하여 관심이 있는 정보를 모으고 그것을 매일 또는 일정 시간대 별로 제공하는 프로그램이다.
또한, 본 발명에서 사용되는 어플리케이션(application) 프로그램은 사용자 또는 다른 어플리케이션 프로그램에게 특정한 기능을 직접 수행하도록 설계된 프로그램이다. 일례로, 워드프로세서, 데이터베이스 프로그램, 웹브라우저, 통신 프로그램 등이 포함되고, 본 발명에서는 특히 데이터 보안과 관련된 프로그램을 지칭한다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 휴대용 USB 저장 장치에 대한 실시예들을 상술한다.
설명의 편의상, 휴대용 USB 저장 장치로서 플래시 메모리 및 사용자 컴퓨터의 운영체계로 마이크로소프트사의 윈도우 XP 운영체계를 중심으로 기술하지만, 본 발명의 기술적 사상이 USB 타입의 저장 장치에만 한정되지 아니하고 모든 타입의 저장이 가능한 수단이 포함될 수 있으며 다른 분야에도 그대로 적용될 수 있음은 본 발명이 속하는 기술 분야의 당업자에게는 자명하다 할 것이다.
도 1은 본 발명의 제1 실시예에 따른, 휴대용 USB 저장 장치와 사용자 컴퓨터가 연결된 구조를 도시한 도면이다.
본 발명의 제1 실시예에 따른 휴대용 USB 저장 장치(100)는 USB 커넥터(110), 메모리 수단(120), 시스템 영역(121), 사용자 사용 영역(122)를 포함할 수 있다. 또한, 도 1에서 도시한 것과 같이, 휴대용 USB 저장 장치(100)는 사용자 컴 퓨터(130)의 USB 포트(135)에 연결되고 보안 서버(140) 및 운영체계 제공사 서버(150)와 연결되는 네트워크를 구성할 수 있다. 이하, 각 구성 요소 별로 그 기능을 상술한다.
USB 커넥터(110)는 휴대용 USB 저장 장치(100)에 저장된 데이터를 사용자 컴퓨터(130)로 전송하거나 사용자 컴퓨터(130)로부터 데이터를 수신할 때 두 장치 사이에서 연결 수단으로 사용된다. USB 버전 1.1 및 버전 2.0 등의 포트규격이 사용될 수 있으며 USB 허브 등을 이용하여 복수 개의 휴대용 USB 저장 장치(100)를 재부팅이나 별도의 셋업 과정 없이 자동인식으로 사용자 컴퓨터(130)에 연결하여 사용할 수 있다.
메모리 수단(120)은 메모리 수단(120)은 데이터가 저장된 공간으로서 시스템 영역(121) 및 사용자 사용 영역(122)로 구분될 수 있다. 시스템 영역(121)은 USB 드라이버, USB 설치 프로그램, 하나 이상의 에이전트(agent) 프로그램 등 USB에 저장된 데이터의 보안을 유지하기 위한 프로그램을 저장하는 공간으로 사용될 수 있다.
상기 USB 드라이버는 휴대용 USB 저장 장치(100)가 사용자 컴퓨터(130)와 함께 상호작용을 하도록 제어하는 프로그램으로서 휴대용 USB 저장 장치(100)가 사용자 컴퓨터(130)에 접속되면 사용자 컴퓨터(130)의 운영체계로 로드된다. 또한, 상기 USB 드라이버는 소정의 보안 서버로 접속할 수 있는 통신망과 연결되어 있는 사용자 컴퓨터(130)에 상기 인스톨(install) 프로그램 및 어플리케이션 프로그램을 상기 사용자 컴퓨터에 자동으로 설치하도록 제어한다.
이 때, 상기 USB 드라이버는 휴대용 USB 저장 장치(100)에 저장된 특정 함수를 호출하여 상기 인스톨 프로그램을 설치하고 상기 에이전트 프로그램에 의해 보안 서버(130)로부터 상기 어플리케이션 프로그램을 사용자 컴퓨터(130)에 수신하도록 제어할 수 있다. 또한, 상기 USB 드라이버의 파일 확장자명의 일례로서 ".DLL"이나 ".EXE"와 같은 확장자를 사용할 수 있다.
상기 인스톨 프로그램은 휴대용 USB 저장 장치(100)와 관련된 다양한 설정을 할 수 있다. 설정의 일례로서, 메모리 수단(120)의 시스템 영역(121) 및 사용자 사용 영역(122)을 설정할 수 있도록 한다. 개인용 컴퓨터의 운영체계가 하드디스크 내에 유지하는 파일 배치표로서 파일들이 저장되어 있는 복수의 클러스터의 위치도를 제공하는 FAT/FAT32(File Allocation Table)을 그대로 적용하여 저장 영역의 파티션을 형성할 수 있도록 한다. 따라서, 운영체계는 휴대용 USB 저장 장치(100)의 각 클러스터의 위치와 순서를 기록한 FAT 엔트리를 만들며, 파일을 읽을 때 여러 클러스터로부터 읽어 들인 파일의 내용을 순서에 맞게 다시 짜 맞추어 사용자에게 전체 내용을 함께 보여주도록 할 수 있다.
상기 에이전트 프로그램은 사용자 컴퓨터(130)에 데이터의 보안을 유지되도록 하는 상기 어플리케이션 프로그램이 수신되도록 하고 상기 어플리케이션 프로그램의 패턴 데이터, 업데이트 모듈 등이 보안 서버(140)에 새롭게 업데이트 되었는지를 실시간 또는 설정된 주기에 따라 확인하고 업데이트된 경우 사용자 컴퓨터(130)의 상기 어플리케이션 프로그램이 업데이트되도록 패턴 데이터, 업데이트 모듈 등을 다운로드 하는 기능을 수행한다.
시스템 영역(121)은 사용자가 시스템 영역(121)에 존재하는 파일로 용이하게 접근할 수 없도록 히든(hidden) 영역으로 유지하거나, 사용자가 파일명 등은 확인할 수 있지만 삭제나 변경 등을 할 수 없도록 디스플레이 장치를 통해 시각적으로 표시만(예를 들어서, 점선 문자, 적색 문자 등으로 표기) 가능하도록 하거나 또는 사용자가 필요에 따라 파일을 추가, 변경, 삭제까지 할 수 있도록 억세스가 가능하도록 할 수도 있다.
사용자 사용 영역(122)은 사용자가 원하는 각종 데이터를 저장하는 공간이다. 특정 데이터에 한정하지 않고 문서 파일, 사진 파일 또는 인터넷 뱅킹을 위한 공인 인증서 등의 파일을 저장하고 유지할 수 있는 메모리 영역으로 사용자가 컴퓨터로 전송하여 사용하기를 원하는 데이터가 저장될 수 있다.
사용자 컴퓨터(130)는 휴대용 USB 저장 장치(100)와 접속되고 사용자 사용 영역(122)에 저장된 데이터 및 시스템 영역(121)에 저장된 데이터를 수신한다. 은행 업무를 처리하는데 필요한 공인 인증서 등 사용자 데이터를 사용자 사용 영역(122)에서 수신하고 USB 드라이버를 시스템 영역(121)에서 수신할 수 있다. 상기 USB 드라이버는 정보 보호와 관련된 안티 바이러스, 안티 애드웨어, 키보드 보호, 윈도우 보안 패치 등이 실행되도록 하는 휴대용 USB 저장 장치(100)에 저장된 에이전트 프로그램이 사용자 컴퓨터(130)에 설치되도록 제어할 수 있다. 상기 에이전트 프로그램이 설치되면 상기 에이전트 프로그램은 원격의 보안 서버(140)로부터 보안과 관련된 어플리케이션 프로그램을 수신하고 사용자는 상기 사용자 데이터를 안전하게 사용할 수 있다. 이 때, 에이전트 프로그램은 상기 어플리케이션 프로그 램의 업데이트 여부도 판단하여 업데이트가 된 경우 원격의 보안 서버(140)로부터 업데이트 데이터를 수신할 수 있다.
또한, 본 발명에 다른 실시예에 따르면, 휴대용 USB 저장 장치(100)를 사용자 컴퓨터(130)에 접속하는 경우, 상기 에이전트 프로그램의 소정의 고유 식별자를 이용하여 휴대용 USB 저장 장치(100)의 인증을 수행하도록 할 수 있다. 상기 고유 식별자는 상기 에이전트 프로그램의 시리얼 번호가 사용될 수 있다.
즉, 개인용 컴퓨터의 하드 디스크에 일반 유틸리티 프로그램(예컨대, 백신 프로그램 등)을 설치할 때, 제품의 시리얼 번호를 입력하도록 되어 있는데 이러한 인증 방식은 원격 서버와 연결하여 인증하는 방식이 아니라 상기 프로그램을 설치하는 컴퓨터로 설치를 허용하는 인증 방식을 사용할 수 있다. 휴대용 USB 저장 장치(100)는 사용자 컴퓨터(130)에 접속된 상태에서 본 발명에 따른 각종 보안 동작을 수행하기 때문에, 상기 에이전트 프로그램이 보안 서버(140)로 접속하는 경우에 이미 사용자가 휴대용 USB 저장 장치(100)를 사용자 컴퓨터(130)에 접속하였다는 사실은 전제가 된다.
즉, 휴대용 USB 저장 장치(100)는 사용자 컴퓨터(130)에 접속되어 있어야만 동작을 하기 때문에 상기 에이전트 프로그램이 서버에 접속을 하는 경우, 사용자가 휴대용 USB 저장 장치(100)를 컴퓨터에 접속시킨 상태이므로 인증을 할 필요가 없다. 다만, 어떤 에이전트 프로그램이 언제, 어디서 보안 서버(140)로부터 업데이트를 받았는가를 로그로 남기기 위하여 상기 에이전트 프로그램의 분류에 필요한 고유 식별자를 부여할 수 있다.
상기 고유 식별자를 부여하는 방법은 프로그램의 시리얼 번호를 이용할 수도 있고, 휴대용 USB 저장 장치(100)에 저장된 GUID 제너레이터(Global Unique Identifier Generator)를 이용하여 프로그램에 고유 식별자를 생성하는 방법을 사용할 수도 있다. 여기서, GUID는 마이크로소프트가 워드 문서와 같은 실체에 고유한 정체성을 부여하기 위해, 프로그램에서 생성하는 고유번호를 지칭하는 용어이다. 각 종류별로 다른 종류의 GUID를 가지는데 예를 들어서 마이크로소프트 액세스 데이터베이스는 사본에 대해 고유한 식별자를 유지하기 위해 16 바이트 길이의 필드를 사용한다.
또한, 상기 고유 식별자는 최초 한 번만 생성되고 어플리케이션 프로그램의 정보 파일(예를 들어서, 확장자 ".ini" 파일) 등으로 기록될 수 있다. 또한, 생성된 고유 식별자는 복수의 에이전트 프로그램을 구분하기 위한 목적으로 사용될 수 있다.
또한, 사용자 컴퓨터(130)의 운영체계는 상기 에이전트 프로그램의 실행 파일을 자동 실행(autorun)함으로써, 휴대용 USB 저장 장치(100)의 인증 과정 및 휴대용 USB 저장 장치(100)에 저장된 프로그램의 설치 및 보안 서버(140)로부터 상기 어플리케이션 프로그램, 상기 어플리케이션 프로그램의 업데이트 모듈, 패턴 데이터 등을 다운로드 받는 과정을 자동으로 수행하도록 할 수 있다.
상기 자동 실행을 위한 한 방법으로서, 사용자 컴퓨터(130)에 로드된 USB 드라이버가 파일 전송 함수를 호출하여 상기 인스톨 프로그램을 상기 사용자 컴퓨터에 설치하도록 제어하도록 하고, 다시 파일 수신 함수를 호출하여 상기 어플리케이 션 프로그램을 사용자 컴퓨터(130)에 수신하도록 제어하도록 할 수 있다.
예를 들어서, 사용자 컴퓨터(130)에 로드 된 USB드라이버는 USBDriverSendFile()을 호출하여 휴대용 USB 저장 장치에 저장된 상기 인스톨 프로그램을 요청하고 USBdriverReceiveFile()로 어플리케이션 프로그램의 파일을 수신할 수 있다. 그 다음에, DriverRegisteredFunctionHandler() 함수를 통해 운영체계가 어플리케이션 프로그램의 실행 파일인 SmartProtectionUSB.exe를 수행하여 줄 것을 요청하고 운영체계가 이를 수행 함으로서 이상에서 설명한 자동 실행(autorun) 기능을 실행 할 수 있다.
또한, 사용자 컴퓨터(130)는 USB 포트(135)를 갖추고 있는 일반 개인용 컴퓨터 등을 사용할 수 있다. 사용자 컴퓨터(130)의 내부 구조에 대한 설명은 도 10을 참조하여 후술하기로 한다.
보안 서버(140)는 본 발명에 따른 데이터의 보안을 위해 비교하기 위한 기준 데이터로서 사용할 수 있는 패턴 데이터, 에이전트 프로그램의 업데이트 모듈을 사용자 컴퓨터(130)로 전송하고, 상기 에이전트 프로그램의 상기 고유 식별자를 이용하여 상기 에이전트 프로그램의 접속 시 해당 접속을 인증하는 기능을 수행할 수 있다.
이 때, 사용자 컴퓨터(130)에 설치된 상기 어플리케이션 프로그램은 상기 패턴 데이터를 상기 검사 또는 상기 치료를 하기 위한 기준 데이터로 이용하고, 보안 서버(140)로부터 최신 버전의 패턴 데이터를 상기 사용자 컴퓨터로 다운로드 받도록 제어할 수 있다.
또한, 상기 에이전트 프로그램은 보안 서버(140)로 상기 어플리케이션 프로그램의 버전 정보를 포함하는 업데이트 쿼리를 전송하고, 보안 서버(140)는 상기 업데이트 쿼리에 포함된 상기 버전 정보에 따라 최신 버전의 업데이트 모듈을 상기 사용자 컴퓨터로 전송하도록 제어할 수 있다.
운영체계 제공사 서버(150)는 운영체계를 제공한 업체로부터 운영체계 패치 프로그램을 사용자가 다운로드 하거나 자동으로 다운로드 되어 기존의 운영체계의 보안과 연관된 파일을 업데이트 시켜주는 기능을 한다. 도 1에서 나타난 것과 같이, 제공사 서버(150)는 보안 서버(140)와 연결되어 운영체계 패치를 전송하고 보안 서버(140)는 수신한 운영체계 패치를 사용자 컴퓨터(130)에 상기 에이전트 프로그램의 요청에 따라 설치되도록 할 수 있다. 예를 들어서, 보안 서버(140)가 마이크로소프트사의 윈도우 NT 등의 운영체계를 사용하는 경우, 마이크로소프트사의 서버에서 새로운 운영체계 패치를 저장하면 운영체계의 새로운 패치의 유무를 검색한 후에 보안 서버(140)로 수신하도록 하고 다시 사용자 컴퓨터(130)로 전송되도록 하여 자동으로 윈도우 보안 패치가 설치되도록 할 수 있다.
이하, 본 발명에 따른 다양한 활용례를 구현한 예시 화면과 함께 상술한다.
도 2는 본 발명의 제 1 실시예에 따른, 바이러스 검사 인터페이스를 설명하기 위한 도면이다.
사용자 컴퓨터(130)에 저장된 어플리케이션 프로그램으로 바이러스(virus), 트로이 목마(Trojan horse), 웜(worm), 애드웨어(adware), 및 백 도어(back door) 중 적어도 어느 하나에 대한 감염 여부 검사 또는 감염된 파일을 치료하도록 제어 하는 보안 프로그램을 이용하여 휴대용 USB 저장 장치(100)의 데이터 및 사용자 컴퓨터(130)의 데이터의 보안도 유지하는 기능을 할 수 있다.
본 발명에 따른 어플리케이션 프로그램은 사용자가 휴대용 USB 저장 장치(100)를 사용자 컴퓨터(130)에 접속하는 경우 에이전트 프로그램에 의하여 자동 실행되어 사용자 컴퓨터(130)의 저장 장치에 바이러스, 애드웨어 등이 감염되어 있는지를 검사하고 발견되는 경우 치료를 하도록 제어한다.
사용자가 이와 같은 보안 동작과 관련된 세부적인 설정을 할 수 있도록 하는 보안 인터페이스 메뉴는 사용자 컴퓨터에서 작업이 진행될 때 언제라도 바로 실행할 수 있도록 운영체계의 시스템 트레이(System Tray)에 작은 아이콘으로 나타낼 수 있다. 시스템 트레이는 윈도우의 작업표시줄에 시계와 하나 이상의 프로그램 아이콘을 표시함으로써 상기 프로그램이 있다는 것을 사용자가 지속적으로 알아차릴 수 있도록 하여 사용자의 접근성을 높인 인터페이스를 형성할 수 있다.
도면부호 <a> 는 상기 시스템 트레이의 보안 프로그램 아이콘을 우클릭 또는 더블 클릭하는 경우 나타나는 보안 인터페이스 메뉴를 도시한다. 보안 인터페이스 메뉴에서 바이러스 검사(210) 항목을 클릭하면 바이러스 검사와 관련된 세부 항목을 설정할 수 있다.
일례로, 세부 항목 화면의 좌측에는 사용자 컴퓨터(130)가 포함하는 디스크 드라이브의 폴더 및 파일을 트리 구조로 표시하고 우측에는 바이러스 검사와 관련 설정, 업데이트 관련 설정, 바이러스 관련 히스토리를 저장하는 로그 및 검역소 항목으로 구성하여 사용자가 원하는 메뉴 항목을 선택할 수 있도록 하는 인터페이스 를 표시한다. 사용자는 일부 디스크, 폴더 등을 선택적으로 검사할 수 있다.
도면부호 <b> 는 바이러스 검사를 완료한 화면을 보여준다. 검사 결과(220)에서 휴대용 USB 저장 장치(100)에 저장된 사용자 데이터를 포함하여 사용자 컴퓨터(130)에 새롭게 입력되는 프로그램의 감염 여부 등을 검사한 내역 및 검사된 폴더, 파일 및 오염된 파일의 수를 사용자에게 표시한다.
도 3은 도 2의 바이러스 검사 인터페이스에 대한 다른 실시예를 설명하기 위한 도면이다.
도면부호 <a>에서 보는 것과 같이, 바이러스에 감염된 파일이 발견되면 바이러스 검사 상태를 보여주는 창 하단에 위와 같이 발견된 바이러스의 정보를 표시할 수 있다. 감염된 파일이름과 이 파일이 위치해 있는 폴더이름 그리고 감염된 바이러스의 이름을 보여주고 감염이 된 것인지, 감염을 의심하고 있는 것인지에 대한 감염 상태 정보(310)를 이 바이러스가 검출된 날짜와 함께 또한 보여준다. 또한, 감염된 바이러스를 치료하면 치료가 완료(320)되었다는 사실을 표시하고 치료가 되지 않으면 검역소로 파일을 이동시키도록 제어할 수 있다. 간혹 있을 수 있는 사용자의 귀중한 정보가 삭제될 위험으로부터 사용자를 보호하기 위하여 상기 어플리케이션 프로그램의 엔진이 치료할 수 없는 경우는 감염된 파일의 처리 여부를 사용자가 결정하도록 형성할 수 있다.
도면부호 <b> 에서 사용자는 로그에 기록된 각 검사된 파일의 치료 성공 여부, 파일 삭제 성공 여부, 검역소 보관 성공 여부 등 파일에 대한 히스토리 정보를 파악할 수 있다. 또한, 사용자가 새로운 파일을 수신하는 경우에 항상 바이러스 감염 여부를 확인할 수 있도록 실시간 감시 모드를 옵션으로 선택할 수 있도록 설정할 수 있다. 실시간 감시 기능으로서 하나는 바이러스가 실시간으로 발견 되었을 때, 이의 치료 유무를 사용자에게 질의하는 실시간 감시 기능을 설정할 수 있고, 치료 유무를 사용자에게 묻지 않고 스스로 판단하여 처리하도록 하는 기능을 할 수도 있다.
또한, 도면에 도시하지는 않았으나, 이상에서 설명한 바이러스 검사와 유사한 방법으로 어떤 사람이나 조직에 관한 정보를 수집하는데 도움을 주는 기술로서 인터넷에서 어떤 사용자에 관한 정보를 수집하여 광고업체나 또는 관심 있는 사람들에게 넘기기 위해 누군가의 컴퓨터에 비밀리에 잠입하는 스파이웨어(spyware)라고도 하는 애드웨어(adware)를 치료하는 방법으로도 사용할 수 있다. 일례로서, 환경설정에서 부팅 시 검사하도록 옵션을 설정해 두면, 매번 개인용 컴퓨터를 새로 켤 때 마다 개인용 컴퓨터의 레지스트리나 쿠키 등에 기생하는 Mal-ware중의 하나인 애드웨어의 유무를 검사하도록 설정할 수 있다. 사용자가 필요에 따라 트레이의 메뉴로부터 애드웨어 검사 등을 수동으로 실행할 수도 있다.
마찬가지로, 자기 복사 능력은 없이 고의적인 부작용만 가지고 있는 트로이 목마(Trojan horse), 자기 자신을 컴퓨터 시스템에 해를 끼칠 수 있는 장소에 위치하는 바이러스나 복제코드의 일종인 웜(worm) 및 컴퓨터 시스템의 보안이 제거된 비밀통로로서 서비스 기술자나 유지 보수 프로그래머들의 액세스 편의를 위해 시스템 설계자가 고의적으로 만들어 놓은 백 도어(back door) 등의 검사 및 치료를 위한 방법으로 이상에서 기술한 방법을 응용할 수 있다.
또한, 본 발명의 다른 실시예에 따르면, 어플리케이션 프로그램이 설치되면 자동으로 메모리 검사를 수행하지만 사용자가 별도로 메모리를 검사하고 싶을 때 상기 보안 인터페이스 메뉴 중 메모리 검사를 선택하여 감염 여부를 검사하고 치료할 수 있다.
도 4는 본 발명의 제2 실시예에 따른, 키보드 보호 인터페이스를 설명하기 위한 도면이다.
사용자 컴퓨터(130)에 저장된 또 다른 어플리케이션 프로그램으로 사용자 컴퓨터(130)를 조작하는 키보드에서 입력되는 키(Key)를 스캔하고 상기 스캔된 키와 매칭되는 코드값을 가로채어 인코딩하며, 상기 인코딩된 코드값을 상기 사용자 컴퓨터(130)에서 구동되는 키보드 보안 프로그램으로 전달하도록 제어할 수 있다.
사용자 컴퓨터(130)의 키보드를 이용하여 사용자가 타이핑을 하면 상기 타이핑 동작 검색하는 키 스캔이 이루어지고 값들은 대응하는 코드(ASCII Code 등)의 값들과 매치되어 어플리케이션 프로그램에 전달될 수 있다. 일례로, 마이크로 소프트사의 윈도우가 제공하는 IME와 같은 것이 있다. 이 때, 아무런 보안 장치가 없는 사용자 컴퓨터(130)라면, 통신망으로 연결된 원격 컴퓨터의 해킹 프로그램이 이 인터럽트에 관여하여 상기 코드를 감지할 수 있다(Global Hooking이라는 기법).
따라서, 키보드 보안 프로그램이 먼저 상기 코드를 가로채도록 하고 인코딩하여 다른 프로그램이 해킹을 해서 그 값을 가져간다 하더라도 인식할 수 없도록 하고 어플리케이션 프로그램으로 전달할 수 있는 방식으로 변경한 다음 사용자의 프로그램 중 키 입력 부분을 통제하도록 만들어진 시큐어 어플리케이션 프로그램 컨트롤러가 이 이상의 정보를 수신하여 복호화 한 다음 최종 이 키 값을 필요로 하는 사용자의 어플리케이션 프로그램으로 전달하게 할 수 있다. 이렇게 키보드로부터 상기 어플리케이션 프로그램에 전달되는 키 값은 통제할 수 있으나, 상기 코드의 보안이 유지되도록 할 수 있다. 좀 더 안전하게 위해 상기 어플리케이션 프로그램이 해킹에 노출되는 경우를 방지하기 위하여 항상 실시간 해킹을 감시할 수 있도록 할 수 있다.
도면부호 <a>는 상기 키보드 보안 프로그램의 예시로서, Process Name란(410)에서 상기 키보드 보안 프로그램으로부터 보호할 사용자의 프로그램들을 등록할 수 있다. 예를 들어서, Notepad에서 사용자가 작성하는 모든 내용을 보호하고 싶은 경우 Notepad 프로그램(notepad.exe)을 등록시킬 수 있다.
도면부호 <b>는 Process Name란(410)에 등록된 워드프로세서 프로그램이 상기 키보드 보안 프로그램의 동작 중에 실행되는 일례를 도시한다. 특정 아이콘(420)이 상기 워드프로세서 위에 표시되고 상기 워드프로세서를 사용하는 동안 발생하는 모든 키보드 해킹 시도를 차단할 수 있다.
또한, 사용자의 의사에 따라 Global Hooking이 가능하도록 하는(Permit List(허용 목록))도 설정할 수 있도록 한다.
도 5는 본 발명의 제3 실시예에 따른, 윈도우 보안 패치 기능을 설명하기 위한 도면이다.
도 5에 도시되어 있는 것과 같이, 운영체계 보안업데이트 최종 실행 날짜(510)를 사용자에게 제공하는 인터페이스를 구현할 수 있다. 최종 실행 날짜(510) 를 기준으로 하여, 운영체계 보안 관련의 에이전트 프로그램은 주기적으로 보안 서버(140)에 접속하여 새로운 패치(patch)의 유무를 확인하도록 할 수 있다. 또한, 새로운 패치가 발견될 경우 그것을 다운로드 하여 사용자 컴퓨터(130)에 상기 패치를 설치하도록 할 수 있다. 상기 에이전트 프로그램과 상기 보안 서버(140)가 서로 동일한 패치 목록을 가지고 있으며 상기 패치 목록을 통해 사용자 컴퓨터(130)가 항상 최신의 패치를 유지하고 있는가를 확인하도록 할 수 있다.
즉, 보안 서버(140)는 운영체계 제공사 서버(150)로 접속하여 업데이트된 최신 버전의 운영체계 보안 패치를 수신하고, 상기 에이전트 프로그램은 상기 보안 서버에 접속하여 상기 최신 버전의 운영체계 보안 패치를 검색한 경우, 상기 사용자 컴퓨터로 상기 운영체계 보안 패치를 다운로드 받아 상기 사용자 컴퓨터의 운영체계 보안 패치를 업데이트하도록 제어할 수 있다.
앞서 설명한 것과 같이, 운영체계의 보안 패치는 당사의 서버가 운영체계 제공사 서버(150)의 업데이트 패치를 실시간으로 다운로드 받아 저장할 수 있다.
이상에서 설명한 어플리케이션 프로그램은 자동으로 수행되나 사용자가 별도로 검사하고 싶을 때 상기 보안 인터페이스 메뉴를 임의로 선택하여 감염 여부를 검사하고 치료할 수 있다.
도 6은 본 발명의 제1 실시예에 따른, 휴대용 USB 저장 장치를 이용한 컴퓨터 보안 방법을 설명하기 위한 흐름도이다.
단계(S610)에서 사용자 컴퓨터는 휴대용 USB 저장 장치가 접속되는 것을 감지한다. 상기 휴대용 USB 저장 장치와 상기 USB 포트가 접속된 경우, 상기 휴대용 USB 저장 장치의 메모리 수단에 저장된 USB 드라이버를 상기 사용자 컴퓨터의 운영체계로 로드한다(단계(S620)). 이 때, 상기 사용자 컴퓨터는 보안 서버로 접속할 수 있는 통신망과 연결되어 있어서 에이전트 프로그램이 상기 보안 서버로 접속하여 필요한 데이터를 요청할 수 있다.
단계(S630)에서 상기 로드된 USB 드라이버가 상기 인스톨 프로그램 및 어플리케이션 프로그램을 상기 사용자 컴퓨터에 자동으로 설치한다. 상기 설치 방법의 일례로서, 상기 로드된 USB 드라이버가 파일 전송 함수를 호출하여 상기 인스톨 프로그램을 상기 사용자 컴퓨터에 설치하도록 제어하도록 하고, 상기 로드된 USB 드라이버가 다시 파일 수신 함수를 호출하여 상기 어플리케이션 프로그램을 상기 사용자 컴퓨터에서 수신하도록 제어하도록 할 수 있다.
단계(S640)에서 상기 운영체계가 상기 에이전트 프로그램의 실행 파일을 자동 실행한다. 상기 에이전트 프로그램으로는 바이러스, 애드웨어 등 감염 여부를 조사하는 프로그램, 키보드 보안 프로그램, 운영체계 보안 패치 프로그램 등을 포함할 수 있다.
또한, 상기 에이전트 프로그램이 상기 통신망을 통하여 상기 보안 서버로 접속하도록 하고 상기 보안 서버에 저장된 상기 어플리케이션 프로그램의 업데이트 모듈 또는 패턴 데이터를 상기 사용자 컴퓨터로 다운로드 받도록 할 수 있다(미도시함).
도 7은 도 6에서 휴대용 USB 저장 장치를 이용하여 바이러스를 검사 또는 치료하는 방법을 설명하기 위한 흐름도이다.
단계(S641)에서 상기 패턴 데이터를 상기 검사 또는 상기 치료를 하기 위한 기준 데이터로 이용하여 사용자 컴퓨터에 저장된 파일을 검사한다. 상기 패턴 데이터는 새로운 바이러스 등이 생성될 때 마다 새롭게 업데이트되어야 하므로 에이전트 프로그램이 보안 서버에 접속하여 주기적으로 혹은 실시간으로 다운로드를 받을 수 있다.
단계(S642)에서 상기 저장된 파일에서 바이러스, 트로이 목마, 웜, 애드웨어, 및 백 도어 중 적어도 어느 하나가 검색되는 경우, 치료가 가능한 파일이면 치료를 한다. 이 때, 항상 실시간 감시, 하드 디스크 검사 등을 수행하는 옵션을 설정할 수 있다.
단계(S643)에서 검사를 통해서 치료가 불가능한 파일은 다른 데이터와 격리된 별도의 저장 영역으로 이동시킨다. 사용자가 별도의 저장 영역에 저장된 데이터를 직접 관리할 수 있도록 검역소를 만들 수 있다.
도 8은 본 발명의 제2 실시예에 따른, 휴대용 USB 저장 장치를 이용하여 키보드의 보안을 유지하는 방법을 설명하기 위한 흐름도이다.
단계(S644)에서 상기 사용자 컴퓨터를 조작하는 키보드에서 입력되는 키(Key)를 스캔한다. 상기 키의 스캔은 특정 코드(아스키 코드 등)와 대응되도록 할 수 있다.
단계(S645)에서 상기 스캔된 키 값과 매칭되는 코드값을 가로채고, 상기 에이전트 프로그램에 전달되기 전에 상기 매칭되는 코드값을 인코딩 한다(단계(S646)).
단계(S647)에서 상기 인코딩된 코드값을 시큐어 어플리케이션 프로그램 컨트롤러가 디코딩을 하고, 상기 사용자 컴퓨터의 어플리케이션 프로그램에 전달되도록 한다(단계(S648)).
도 9는 본 발명의 제 3 실시예에 따른, 휴대용 USB 저장 장치를 이용하여 운영체계 보안 패치를 하는 방법을 설명하기 위한 흐름도이다.
단계(S649)에서 상기 에이전트 프로그램이 상기 보안 서버에 접속하여 업데이트된 운영체계 보안 패치를 검색한다. 상기 보안 서버는 운영체계 제공사 서버와 동기화되어 실시간으로 업데이트된 운영체계 보안 패치를 수신한다.
단계(S650)에서 상기 사용자 컴퓨터에 상기 운영체계 보안 패치를 설치함으로써 상기 사용자 컴퓨터의 운영체계 보안 패치를 자동으로 업데이트한다.
따라서, 운영체계 제공사에서 운영체계의 결함이나 보안의 취약성을 보완하기 위하여 운영체계 사용자에게 제공하는 보안 패치가 사용자 컴퓨터에서 항상 최신 버전으로 업데이트 되도록 할 수 있다.
도 10은 본 발명에 따른, 휴대용 USB 저장 장치를 이용한 보안 동작이 수행되는 범용 컴퓨터 장치의 내부 블록도이다.
컴퓨터 장치(1000)는 램(RAM: Random Access Memory)(1020)과 롬(ROM: Read Only Memory)(1030)을 포함하는 주기억장치와 연결되는 하나 이상의 프로세서(1010)를 포함한다. 프로세서(1010)는 중앙처리장치(CPU)로 불리기도 한다. 본 기술분야에서 널리 알려져 있는 바와 같이, 롬(1030)은 데이터(data)와 명령(instruction)을 단방향성으로 CPU에 전송하는 역할을 하며, 램(1020)은 통상적으 로 데이터와 명령을 양방향성으로 전송하는 데 사용된다. 램(1020) 및 롬(1030)은 컴퓨터 판독 가능 매체의 어떠한 적절한 형태를 포함할 수 있다. 대용량 기억장치(Mass Storage)(1040)는 양방향성으로 프로세서(1010)와 연결되어 추가적인 데이터 저장 능력을 제공하며, 상기된 컴퓨터 판독 가능 기록 매체 중 어떠한 것일 수 있다. 대용량 기억장치(1040)는 프로그램, 데이터 등을 저장하는데 사용되며, 통상적으로 주기억장치보다 속도가 느린 하드 디스크와 같은 보조기억장치이다. CD 롬(1060)과 같은 특정 대용량 기억장치가 사용될 수도 있다. 프로세서(1010)는 비디오 모니터, 트랙볼, 마우스, 키보드, 마이크로폰, 터치스크린 형 디스플레이, 카드 판독기, 자기 또는 종이 테이프 판독기, 음성 또는 필기 인식기, 조이스틱, 또는 기타 공지된 컴퓨터 입출력장치와 같은 하나 이상의 입출력 인터페이스(1050)와 연결된다. 마지막으로, 프로세서(1010)는 네트워크 인터페이스(1070)를 통하여 유선 또는 무선 통신 네트워크에 연결될 수 있다. 이러한 네트워크 연결을 통하여 상기된 방법의 절차를 수행할 수 있다. 상기된 장치 및 도구는 컴퓨터 하드웨어 및 소프트웨어 기술 분야의 당업자에게 잘 알려져 있다.
상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있다.
지금까지 본 발명에 따른 휴대용 USB 저장 장치에 저장된 데이터를 보호하기 위한 동작 제어 방법에 대하여 설명하였고, 앞서 도 1 내지 도 5의 실시예들에서 언급한 내용들이 본 실시예에도 그대로 적용할 수 있으므로, 이하 상세한 내용은 생략하기로 한다.
본 발명에 따른 휴대용 USB 저장 장치의 보안 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
본 발명에 따르면, 휴대용 USB 저장 장치에 저장된 데이터를 사용자 컴퓨터에 접속하여 사용하는 경우 안티 바이러스, 안티 애드웨어, 키보드 보안, 운영체제 보안 패치 관리 기능을 수행하여 데이터의 보안을 유지할 수 있는 효과가 있다.
또한, 본 발명에 따르면, 휴대용 USB 저장 장치의 메모리 영역의 구조가 고정적이지 않으므로 사용자가 원하는 대로 저장 공간을 활용할 수 있는 효과가 있다.
또한, 본 발명에 따르면, 어플리케이션 프로그램 및 업데이트 데이터를 휴대용 USB 저장 장치에 저장하지 않으므로 사용자는 보다 확장된 메모리 공간을 제공한다.
또한, 본 발명에 따르면, 휴대용 USB 저장 장치의 인증 절차를 단순화함으로써 통신망의 보안 서버에 접속하지 않더라도 인증 시간을 단축할 수 있는 효과를 기대할 수 있다.
또한, 본 발명에 따르면, 사용자가 휴대용 USB 저장 장치에 저장된 보안 등과 관련된 어플리케이션 프로그램의 설치 또는 해제 작업을 직접 수행하지 않더라도 자동으로 수행하도록 함으로써 사용자의 편의를 도모할 수 있는 효과가 있다.

Claims (16)

  1. 휴대용 USB 저장 장치에 있어서,
    USB 커넥터; 및
    소정의 USB 드라이버, 인스톨(install) 프로그램 및 하나 이상의 에이전트(agent) 프로그램이 기록된 시스템 영역 및 임의의 데이터가 저장될 수 있는 사용자 사용 영역을 포함하는 메모리 수단
    을 포함하고,
    상기 USB 드라이버는 상기 USB 커넥터가 사용자 컴퓨터의 USB 포트에 접속되는 경우 상기 사용자 컴퓨터의 운영체계로 로드되고 - 상기 사용자 컴퓨터는 소정의 보안 서버로 접속할 수 있는 통신망과 연결되어 있음 -, 상기 로드된 USB 드라이버는 상기 인스톨 프로그램 및 어플리케이션 프로그램을 상기 사용자 컴퓨터에 자동으로 설치하며, 상기 운영체계가 상기 에이전트 프로그램의 실행 파일을 자동 실행(autorun)하고,
    상기 에이전트 프로그램이 상기 통신망을 통하여 상기 보안 서버로 접속하며, 상기 보안 서버에 저장된 상기 어플리케이션 프로그램의 업데이트 모듈 또는 패턴 데이터를 상기 사용자 컴퓨터로 다운로드 받는 것을 특징으로 하는 휴대용 USB 저장 장치.
  2. 제1항에 있어서,
    상기 어플리케이션 프로그램은,
    바이러스(virus), 트로이 목마(Trojan horse), 웜(worm), 애드웨어(adware), 및 백 도어(back door) 중 적어도 어느 하나에 대한 감염 여부 검사 또는 감염된 파일을 치료하도록 제어하는 것을 특징으로 하는 휴대용 USB 저장 장치.
  3. 제2항에 있어서,
    상기 어플리케이션 프로그램은,
    상기 패턴 데이터를 상기 검사 또는 상기 치료를 하기 위한 기준 데이터로 이용하고, 상기 보안 서버로부터 최신 버전의 패턴 데이터를 상기 사용자 컴퓨터로 다운로드 받도록 제어하는 것을 특징으로 하는 휴대용 USB 저장 장치.
  4. 제1항에 있어서,
    상기 어플리케이션 프로그램은,
    상기 사용자 컴퓨터를 조작하는 키보드에서 입력되는 키(Key)를 스캔하고 상기 스캔된 키와 매칭되는 코드값을 가로채어 인코딩하며, 상기 인코딩된 코드값을 상기 사용자 컴퓨터에서 구동되는 소정의 어플리케이션 프로그램으로 전달하도록 제어하는 것을 특징으로 하는 휴대용 USB 저장 장치.
  5. 제1항에 있어서,
    상기 보안 서버는 운영체계 제공사 서버로 접속하여 업데이트된 최신 버전의 운영체계 보안 패치를 수신하고, 상기 에이전트 프로그램은 상기 보안 서버에 접속하여 상기 최신 버전의 운영체계 보안 패치를 검색한 경우, 상기 사용자 컴퓨터로 상기 운영체계 보안 패치를 다운로드 받아 상기 사용자 컴퓨터의 운영체계 보안 패치를 업데이트하도록 제어하는 것을 특징으로 하는 휴대용 USB 저장 장치.
  6. 제1항에 있어서,
    상기 에이전트 프로그램은, 고유 식별자를 더 포함하고 상기 보안 서버는 상기 에이전트 프로그램의 상기 고유 식별자를 이용하여 상기 에이전트 프로그램의 접속을 인증하도록 제어하는 것을 특징으로 하는 휴대용 USB 저장 장치.
  7. 제1항에 있어서,
    상기 에이전트 프로그램은, 상기 보안 서버로 상기 어플리케이션 프로그램의 버전 정보를 포함하는 업데이트 쿼리를 전송하고, 상기 보안 서버는 상기 업데이트 쿼리에 포함된 상기 버전 정보에 따라 최신 버전의 업데이트 모듈을 상기 사용자 컴퓨터로 전송하도록 제어하는 것을 특징으로 하는 휴대용 USB 저장 장치.
  8. 제6항에 있어서,
    상기 고유 식별자는 GUID(Global Unique IDentifier) 제너레이터에 의해 생성된 값인 것을 특징으로 하는 휴대용 USB 저장 장치.
  9. 제1항에 있어서,
    상기 메모리 수단은 하드 디스크 또는 플래시 메모리인 것을 특징으로 하는 휴대용 USB 저장 장치.
  10. 제1항에 있어서,
    상기 USB 드라이버는 상기 USB 커넥터가 상기 사용자 컴퓨터의 USB 포트와 분리되는 경우 상기 어플리케이션 프로그램의 실행이 중지되도록 제어하는 것을 특징으로 하는 휴대용 USB 저장 장치.
  11. 사용자 컴퓨터에 연결된 휴대용 USB 저장 장치의 보안 동작 방법에 있어서,
    (1) 상기 휴대용 USB 저장 장치와 상기 사용자 컴퓨터의 USB 포트와의 접속을 감지하는 단계;
    (2) 상기 휴대용 USB 저장 장치와 상기 USB 포트가 접속된 경우, 상기 휴대용 USB 저장 장치의 메모리 수단에 저장된 USB 드라이버를 상기 사용자 컴퓨터의 운영체계로 로드하는 단계 - 상기 사용자 컴퓨터는 소정의 보안 서버로 접속할 수 있는 통신망과 연결되어 있음 -;
    (3) 상기 로드된 USB 드라이버가 상기 인스톨 프로그램 및 어플리케이션 프로그램을 상기 사용자 컴퓨터에 자동으로 설치하는 단계; 및
    (4) 상기 운영체계가 상기 에이전트 프로그램의 실행 파일을 자동 실행하는 단계;
    를 포함하고,
    상기 (4) 단계는,
    상기 에이전트 프로그램이 상기 통신망을 통하여 상기 보안 서버로 접속하는 단계; 및
    상기 보안 서버에 저장된 상기 어플리케이션 프로그램의 업데이트 모듈 또는 패턴 데이터를 상기 사용자 컴퓨터로 다운로드 받는 단계
    를 더 포함하는 것을 특징으로 하는 휴대용 USB 저장 장치의 보안 동작 방법.
  12. 제11항에 있어서,
    상기 (3) 단계는,
    상기 로드된 USB 드라이버가 파일 전송 함수를 호출하여 상기 인스톨 프로그램을 상기 사용자 컴퓨터에 설치하도록 제어하는 단계; 및
    상기 로드된 USB 드라이버가 파일 수신 함수를 호출하여 상기 어플리케이션 프로그램을 상기 사용자 컴퓨터에서 수신하도록 제어하는 단계
    를 포함하는 것을 특징으로 하는 휴대용 USB 저장 장치의 보안 동작 방법.
  13. 제11항에 있어서,
    상기 (4) 단계는,
    상기 패턴 데이터를 상기 검사 또는 상기 치료를 하기 위한 기준 데이터로 이용하여 사용자 컴퓨터에 저장된 파일을 검사하는 단계;
    상기 저장된 파일에서 바이러스, 트로이 목마, 웜, 애드웨어, 및 백 도어 중 적어도 어느 하나가 검색되는 경우, 치료가 가능한 파일이면 치료를 하는 단계; 및
    상기 검사를 통해서 치료가 불가능한 파일은 다른 데이터와 격리된 별도의 저장 영역으로 이동시키는 단계
    를 포함하는 것을 특징으로 하는 휴대용 USB 저장 장치의 보안 동작 방법.
  14. 제11항에 있어서,
    상기 (4) 단계는,
    상기 사용자 컴퓨터를 조작하는 키보드에서 입력되는 키(Key)를 스캔하는 단계;
    상기 스캔된 키 값과 매칭되는 코드값을 가로채는 단계;
    상기 에이전트 프로그램에 전달되기 전에 상기 매칭되는 코드값을 인코딩 하는 단계;
    상기 인코딩된 코드값을 시큐어 어플리케이션 프로그램 컨트롤러가 디코딩 하는 단계; 및
    상기 사용자 컴퓨터의 어플리케이션 프로그램에 전달하는 단계
    를 포함하는 것을 특징으로 하는 휴대용 USB 저장 장치의 보안 동작 방법.
  15. 제11항에 있어서,
    상기 (4) 단계는,
    상기 에이전트 프로그램이 상기 보안 서버에 접속하여 업데이트된 운영체계 보안 패치를 검색하는 단계 - 상기 보안 서버는 운영체계 제공사 서버와 동기화되어 실시간으로 업데이트된 운영체계 보안 패치를 수신함 -; 및
    상기 사용자 컴퓨터에 상기 운영체계 보안 패치를 설치함으로써 상기 사용자 컴퓨터의 운영체계 보안 패치를 자동으로 업데이트하는 단계
    를 포함하는 것을 특징으로 하는 휴대용 USB 저장 장치의 보안 동작 방법.
  16. 제11항 또는 제15항 중 어느 하나의 항을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
KR1020050070772A 2005-08-02 2005-08-02 컴퓨터 보안 기능을 제공하는 휴대용 usb 저장 장치 및상기 휴대용 usb 저장 장치의 동작 방법 KR20070016029A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020050070772A KR20070016029A (ko) 2005-08-02 2005-08-02 컴퓨터 보안 기능을 제공하는 휴대용 usb 저장 장치 및상기 휴대용 usb 저장 장치의 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050070772A KR20070016029A (ko) 2005-08-02 2005-08-02 컴퓨터 보안 기능을 제공하는 휴대용 usb 저장 장치 및상기 휴대용 usb 저장 장치의 동작 방법

Publications (1)

Publication Number Publication Date
KR20070016029A true KR20070016029A (ko) 2007-02-07

Family

ID=43650311

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050070772A KR20070016029A (ko) 2005-08-02 2005-08-02 컴퓨터 보안 기능을 제공하는 휴대용 usb 저장 장치 및상기 휴대용 usb 저장 장치의 동작 방법

Country Status (1)

Country Link
KR (1) KR20070016029A (ko)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100842835B1 (ko) * 2007-10-11 2008-07-03 (주)유니윈테크놀러지 이동식 저장장치, 정보보안장치, 호스트 장치의 정보 보호방법 및 정보보안시스템
WO2008140975A1 (en) * 2007-05-11 2008-11-20 Microsoft Corporation Trusted operating environment for malware detection
KR100893341B1 (ko) * 2007-04-17 2009-04-14 (주)넷크루즈 사이버수사 증거데이터 수집을 위한 메모리장치와 이를이용한 사이버수사 자동화 시스템 및 그 서비스 방법
WO2009094018A1 (en) * 2008-01-22 2009-07-30 Hewlett-Packard Development Company, L.P. Shared secret used between keyboard and application
KR100940508B1 (ko) * 2007-12-12 2010-02-10 (주)세이퍼존 보안 유에스비 메모리 관리 시스템
KR100947086B1 (ko) * 2008-08-22 2010-03-10 엘아이지넥스원 주식회사 이동형 하드웨어 탈착 시스템 및 방법
KR100947910B1 (ko) * 2007-08-03 2010-03-17 김태봉 보안 통신 제공 장치 및 방법 및 그 프로그램을 기록한기록 매체
KR100975133B1 (ko) * 2007-11-15 2010-08-11 주식회사 코스콤 보조기억매체의 보안 관리 시스템 및 이를 이용한 보안관리 방법
US7853999B2 (en) 2007-05-11 2010-12-14 Microsoft Corporation Trusted operating environment for malware detection
KR101064234B1 (ko) * 2009-05-22 2011-09-14 이영락 S/w 보안을 위한 보안키 생성방법 및 이를 적용한 단말장치
KR101359378B1 (ko) * 2013-07-23 2014-02-07 (주)넷맨 보안 무결성 검사 장치와 방법
KR101488389B1 (ko) * 2008-12-19 2015-01-30 엘지전자 주식회사 휴대 단말기 및 그 동작방법
WO2015156640A1 (en) * 2014-04-11 2015-10-15 Samsung Electronics Co., Ltd. Method and device for controlling security screen in electronic device
US9251350B2 (en) 2007-05-11 2016-02-02 Microsoft Technology Licensing, Llc Trusted operating environment for malware detection
KR101980487B1 (ko) * 2018-07-09 2019-05-20 박영훈 네트워크 보안 usb 장치

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100893341B1 (ko) * 2007-04-17 2009-04-14 (주)넷크루즈 사이버수사 증거데이터 수집을 위한 메모리장치와 이를이용한 사이버수사 자동화 시스템 및 그 서비스 방법
US7853999B2 (en) 2007-05-11 2010-12-14 Microsoft Corporation Trusted operating environment for malware detection
WO2008140975A1 (en) * 2007-05-11 2008-11-20 Microsoft Corporation Trusted operating environment for malware detection
US9251350B2 (en) 2007-05-11 2016-02-02 Microsoft Technology Licensing, Llc Trusted operating environment for malware detection
US8230511B2 (en) 2007-05-11 2012-07-24 Microsoft Corporation Trusted operating environment for malware detection
US8104088B2 (en) 2007-05-11 2012-01-24 Microsoft Corporation Trusted operating environment for malware detection
KR100947910B1 (ko) * 2007-08-03 2010-03-17 김태봉 보안 통신 제공 장치 및 방법 및 그 프로그램을 기록한기록 매체
KR100842835B1 (ko) * 2007-10-11 2008-07-03 (주)유니윈테크놀러지 이동식 저장장치, 정보보안장치, 호스트 장치의 정보 보호방법 및 정보보안시스템
KR100975133B1 (ko) * 2007-11-15 2010-08-11 주식회사 코스콤 보조기억매체의 보안 관리 시스템 및 이를 이용한 보안관리 방법
KR100940508B1 (ko) * 2007-12-12 2010-02-10 (주)세이퍼존 보안 유에스비 메모리 관리 시스템
GB2469594A (en) * 2008-01-22 2010-10-20 Hewlett Packard Development Co Shared secret used between keyboard and application
US9292715B2 (en) 2008-01-22 2016-03-22 Hewlett-Packard Development Company, L.P. Shared secret used between keyboard and application
GB2469594B (en) * 2008-01-22 2012-08-29 Hewlett Packard Development Co Shared secret used between keyboard and application
WO2009094018A1 (en) * 2008-01-22 2009-07-30 Hewlett-Packard Development Company, L.P. Shared secret used between keyboard and application
KR100947086B1 (ko) * 2008-08-22 2010-03-10 엘아이지넥스원 주식회사 이동형 하드웨어 탈착 시스템 및 방법
KR101488389B1 (ko) * 2008-12-19 2015-01-30 엘지전자 주식회사 휴대 단말기 및 그 동작방법
KR101064234B1 (ko) * 2009-05-22 2011-09-14 이영락 S/w 보안을 위한 보안키 생성방법 및 이를 적용한 단말장치
KR101359378B1 (ko) * 2013-07-23 2014-02-07 (주)넷맨 보안 무결성 검사 장치와 방법
WO2015156640A1 (en) * 2014-04-11 2015-10-15 Samsung Electronics Co., Ltd. Method and device for controlling security screen in electronic device
US10002255B2 (en) 2014-04-11 2018-06-19 Samsung Electronics Co., Ltd. Method and device for controlling security screen in electronic device
KR101980487B1 (ko) * 2018-07-09 2019-05-20 박영훈 네트워크 보안 usb 장치
US10547619B1 (en) 2018-07-09 2020-01-28 Young Hoon Park USB device for network security

Similar Documents

Publication Publication Date Title
KR20070016029A (ko) 컴퓨터 보안 기능을 제공하는 휴대용 usb 저장 장치 및상기 휴대용 usb 저장 장치의 동작 방법
US10235524B2 (en) Methods and apparatus for identifying and removing malicious applications
US10356086B1 (en) Methods and apparatuses for securely operating shared host computers with portable apparatuses
US8006241B2 (en) Automatic software installation and cleanup
US20070289019A1 (en) Methodology, system and computer readable medium for detecting and managing malware threats
US10169589B2 (en) Securely booting a computer from a user trusted device
CN101681407B (zh) 用于恶意软件检测的可信操作环境
US8245293B2 (en) Methods and apparatuses for securely operating shared host computers with portable apparatuses
US7668974B2 (en) Method and system for local provisioning of device drivers for portable storage devices
US8806494B2 (en) Managed control of processes including privilege escalation
EP2347542B1 (en) Combining a mobile device and computer to create a secure personalized environment
US20100031308A1 (en) Safe and secure program execution framework
KR20010094953A (ko) 라이센싱된 애플리케이션 인스톨 방법, 프로그램 저장장치 및 프로그램 제품
CN101681406A (zh) 用于恶意软件检测的可信操作环境
EP2786545B1 (en) Method and computer device to control software file downloads
US20050015606A1 (en) Malware scanning using a boot with a non-installed operating system and download of malware detection files
WO2006124239A2 (en) Disk protection using enhanced write filter
US8850563B2 (en) Portable computer accounts
TW201804354A (zh) 儲存裝置及其資料保護方法與資料保護系統
US20230009963A1 (en) System and method for application tamper discovery
US20020066023A1 (en) Security technique for an open computing platform system
CN114861160A (zh) 提升非管理员账户权限的方法及装置、设备、存储介质
US20230038774A1 (en) System, Method, and Apparatus for Smart Whitelisting/Blacklisting
Griffiths et al. Fireguard-A secure browser with reduced forensic footprint
KR20100049368A (ko) 터미널 환경의 서버 기반 컴퓨팅 시스템에서의 액티브엑스 관리 시스템 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E601 Decision to refuse application