KR20090054359A - 악성코드 자동실행 차단 장치 및 방법 - Google Patents

악성코드 자동실행 차단 장치 및 방법 Download PDF

Info

Publication number
KR20090054359A
KR20090054359A KR1020080027301A KR20080027301A KR20090054359A KR 20090054359 A KR20090054359 A KR 20090054359A KR 1020080027301 A KR1020080027301 A KR 1020080027301A KR 20080027301 A KR20080027301 A KR 20080027301A KR 20090054359 A KR20090054359 A KR 20090054359A
Authority
KR
South Korea
Prior art keywords
autorun
storage device
file
removable storage
malicious code
Prior art date
Application number
KR1020080027301A
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 US12/209,361 priority Critical patent/US20090138969A1/en
Publication of KR20090054359A publication Critical patent/KR20090054359A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1254Automatic configuration, e.g. by driver
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Abstract

본 발명은 악성코드의 자동실행을 차단하기 위한 악성코드 자동실행 차단 장치 및 방법에 관한 것으로서, 특히 이동식 저장장치에 저장된 자동실행 파일을 통하여 악성코드가 자동으로 실행되는 것을 차단하기 위한 악성코드 자동실행 차단 장치 및 방법에 관한 것이다. 본 발명에 따른 악성코드 자동실행 차단 장치는 이동식 저장장치의 연결 여부를 모니터링하여 상기 이동식 저장장치의 전역 식별자를 획득하고, 악성코드를 실행하는 자동실행 파일을 상기 이동식 저장장치에서 삭제하는 장치 관리부; 및 상기 이동식 저장장치의 전역 식별자를 이용하여 상기 자동실행 파일의 내용을 저장하는 레지스트리 키의 생성 여부를 판단하고 상기 레지스트리 키를 삭제하는 레지스트리 관리부로 구성된다. 본 발명은 이동식 저장장치가 시스템에 연결되는 경우 자동실행 기능을 수행하는 레지스트리 키를 검색하고 이를 삭제함으로써, 이동식 저장장치를 통한 악성코드의 자동실행을 원천적으로 차단할 수 있다.
악성 코드, 자동 실행 차단, autorun.inf

Description

악성코드 자동실행 차단 장치 및 방법{Device and Method for Blocking Autorun of Malicious Code}
본 발명은 악성코드의 자동실행을 차단하기 위한 악성코드 자동실행 차단 장치 및 방법에 관한 것으로서, 특히 이동식 저장장치에 저장된 자동실행 파일을 통하여 악성코드가 자동으로 실행되는 것을 차단하기 위한 악성코드 자동실행 차단 장치 및 방법에 관한 것이다.
최근 윈도우즈(Windows)의 자동실행(autorun) 기능을 이용하여 범용 직렬 버스(Universal Serial Bus, 이하 "USB") 메모리와 같은 이동식 저장장치를 통해 악성코드를 감염시키는 방식의 공격이 늘어나고 있다. 여기서, 윈도우즈(Windows)의 자동실행 기능이란 윈도우즈를 운영체제로 사용하는 시스템에 USB와 같은 포트를 통해 이동식 저장장치가 연결되면 이동식 저장장치에 저장된 자동실행 파일(autorun.inf)의 내용에 따라 특정 명령이 자동으로 실행되는 기능을 말한다.
도 1은 자동실행 기능을 이용하여 악성코드를 전염시키는 과정을 나타내는 도 면이다.
도 1을 참조하면, 해커와 같은 악의적인 사용자는 USB 메모리와 같은 이동식 저장장치(110)에 악성코드(121) 및 상기 악성코드를 자동으로 실행하기 위한 자동실행 파일인 autorun.inf 파일(122)을 함께 저장한다. 이에 따라, 일반 사용자가 개인용 컴퓨터(130)에 이동식 저장장치(110)를 연결하는 경우 이동식 저장장치(110)에 저장된 악성코드(121)가 자동으로 실행되어 사용자의 시스템이 악성코드에 감염된다.
레지스트리(registry) 설정을 통해 비교적 용이하게 비활성화 설정이 가능한 자동연주(autoplay) 기능과 달리, 자동실행 기능은 일반 사용자들이 비활성화 설정을 하기 어렵기 때문에 피해가 더욱 확산되고 있다. 또한, 백신과 같은 일반적인 보안 소프트웨어들은 시그니처(signature) 기반으로 이미 알려진 악성코드에 한해 탐지를 수행하는바 자동실행 기능을 이용한 악성코드 감염에 대하여 완벽한 대책이 될 수 없다.
본 발명에서 해결하고자 하는 과제는, USB 메모리와 같은 이동식 저장장치에 저장된 자동실행 파일을 이용하여 악성코드가 전파되는 것을 방지하기 위한 악성코드 자동실행 차단 장치 및 방법을 제공하는 것이다.
상술한 과제를 해결하기 위한 본 발명의 일 측면은 이동식 저장장치의 연결 여부를 모니터링하여 상기 이동식 저장장치의 전역 식별자를 획득하고, 악성코드를 실행하는 자동실행 파일을 상기 이동식 저장장치에서 삭제하는 장치 관리부; 및 상기 이동식 저장장치의 전역 식별자를 이용하여 상기 자동실행 파일의 내용을 저장하는 레지스트리 키의 생성 여부를 판단하고 상기 레지스트리 키를 삭제하는 레지스트리 관리부를 포함하는 악성코드 자동실행 차단 장치를 제공한다.
본 발명의 다른 측면은 이동식 저장장치가 시스템에 연결되었는 지를 모니터링하는 단계; 상기 이동식 저장장치의 전역 식별자를 획득하는 단계; 상기 이동식 저장장치의 전역 식별자를 이용하여 악성코드를 실행하는 자동실행 파일의 내용을 저장하는 레지스트리 키의 생성 여부를 판단하는 단계; 상기 레지스트리 키를 삭제하는 단계; 및 상기 자동실행 파일을 삭제하는 단계를 포함하는 악성코드 자동실행 차단 방법을 제공한다.
본 발명은 이동식 저장장치가 시스템에 연결되는 경우 자동실행 기능을 수행하는 레지스트리 키를 검색하고 이를 삭제함으로써, 이동식 저장장치를 통한 악성코드의 자동실행을 원천적으로 차단할 수 있다.
또한, 본 발명은 이동식 저장장치에 포함된 자동실행 파일을 삭제함과 동시에 자동실행 파일과 같은 이름의 폴더를 생성함으로써, 이동식 저장장치에 자동실행 파일이 다시 생성되는 것을 방지할 수 있다.
도 2는 본 발명의 일 실시예에 따른 악성코드 자동실행 차단 장치의 구성을 나타내는 블록도이다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 악성코드 자동실행 차단 장치(210)는 사용자 인터페이스부(211), 장치 관리부(212) 및 레지스트리 관리부(213)를 포함한다.
사용자 인터페이스부(211)는 악성코드 자동실행 차단 장치(210)의 동작 중에 필요한 사용자(220)의 명령을 입력받고, 자동실행 기능 차단 또는 자동실행 파일(예를 들어, autorun.inf 파일)의 삭제와 같은 이벤트 결과를 사용자(220)에게 출력한다. 장치 관리부(212)는 이동식 저장장치(230)가 시스템에 연결되는지 모니터링하여 연결된 이동식 저장장치(230)의 전역 식별자(GUID)를 획득하고, 이동식 저장장치(230) 내에 자동실행 파일을 삭제하거나 자동실행 파일과 같은 이름을 갖 는 폴더를 생성하는 역할을 한다. 일 실시예에서, 이동식 저장장치는 USB 메모리와 같은 분리 가능한 데이터 저장장치를 포함한다.
레지스트리 관리부(213)는 자동실행 기능의 동작 여부를 판단하기 위하여 자동실행 파일에 저장된 명령어 및 데이터를 저장하는 특정 레지스트리 키(registry key)의 생성 여부를 판단하고, 자동실행 기능이 동작하지 않도록 상기 레지스트리 키를 삭제하는 역할을 한다. 일 실시예에서, 레지스트리 관리부(213)는 이동식 저장장치(230)의 전역 식별자(GUID)를 이용하여 레지스트리(240)를 검색함으로써 특정 레지스트리 키(registry key)의 생성 여부를 판단할 수 있다.
도 3은 본 발명의 일 실시예에 따른 악성코드 자동실행 차단 방법의 과정을 나타내는 순서도이다.
도 3을 참조하면, 장치 관리부는 이동식 저장장치가 시스템에 연결되었는지 여부를 모니터링하고(310), 이동식 저장장치가 연결된 경우 연결된 이동식 저장장치의 전역 식별자(GUID)를 획득한다(320).
다음으로, 레지스트리 관리부는 획득한 전역 식별자를 이용하여 자동실행 파일의 내용을 저장하는 레지스트리 키가 생성되었는 지를 판단하고, 상기 레지스트리 키가 생성되지 않은 경우 단계 310으로 복귀한다(330). 예를 들어, 윈도우즈 운영체제를 사용하는 시스템의 경우 autorun.inf 파일을 저장하는 이동식 저장장치의 연결이 인식되면, 윈도우즈 운영체제의 레지스트리 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2에 이동식 저장장치의 전역 식별자(GUID)를 이름으로 하는 레지스트리 키가 생 성되고 그 하위에 autorun.inf 파일의 내용이 저장된다. 따라서, 레지스트리 관리부는 해당 위치의 레지스트리에 이름이 이동식 저장장치의 전역 식별자인 레지스트리 키가 생성되었는지 검색함으로써 자동실행 기능의 작동 여부를 판단할 수 있다.
단계 330의 판단결과에 따라 자동실행 파일의 내용을 저장하는 레지스트리 키가 검색된 경우, 레지스트리 관리부는 해당 레지스트리 키를 삭제하여 자동실행 기능을 차단하고(340), 장치 관리부는 이동식 저장장치에 저장된 자동실행 파일을 삭제한다(350). 일 실시예에서, 장치 관리부는 자동실행 파일을 삭제함과 동시에 이동식 저장장치에 자동실행 파일의 이름과 같은 이름의 폴더를 생성하여 다시 자동실행 파일이 생성되는 것을 방지할 수 있다. 예를 들어, 자동실행 파일이 autorun.inf인 경우 장치 관리부는 autorun.inf 파일을 삭제한 후 autorun.inf 폴더를 생성하여 autorun.inf 파일이 다시 생성되는 것을 방지할 수 있다.
다른 실시예에서, 자동실행 파일을 삭제하기 이전에 사용자 인터페이스부는 자동실행 파일의 삭제 여부에 대한 사용자의 입력을 수신하고, 장치 관리부는 수신한 사용자의 입력에 따라 자동실행 파일을 삭제하거나 삭제하지 않을 수 있다.
자동실행 기능 차단 과정이 완료되면, 사용자 인터페이스부는 자동실행 기능의 차단 결과를 사용자에게 표시한다(360). 일 실시예에서, 사용자 인터페이스부는 자동실행 파일의 삭제 여부 또는 자동실행 파일의 내용을 저장하는 레지스트리 키의 삭제 여부를 사용자에게 표시할 수 있다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것은 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
도 1은 자동실행 기능을 이용하여 악성코드를 전염시키는 과정을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 악성코드 자동실행 차단 장치의 구성을 나타내는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 악성코드 자동실행 차단 방법의 과정을 나타내는 순서도이다.

Claims (14)

  1. 이동식 저장장치의 연결 여부를 모니터링하여 상기 이동식 저장장치의 전역 식별자를 획득하고, 악성코드를 실행하는 자동실행 파일을 상기 이동식 저장장치에서 삭제하는 장치 관리부; 및
    상기 이동식 저장장치의 전역 식별자를 이용하여 상기 자동실행 파일의 내용을 저장하는 레지스트리 키의 생성 여부를 판단하고 상기 레지스트리 키를 삭제하는 레지스트리 관리부
    를 포함하는 악성코드 자동실행 차단 장치.
  2. 제 1항에 있어서,
    상기 자동실행 파일 또는 상기 레지스트리 키의 삭제 여부에 따라 자동실행 기능 차단 결과를 사용자에게 출력하는 사용자 인터페이스부를 더 포함하는 악성코드 자동실행 차단 장치.
  3. 제 2항에 있어서,
    상기 사용자 인터페이스부는 상기 사용자로부터 상기 자동실행 파일의 삭제 여부에 대한 명령을 수신하고,
    상기 장치 관리부는 상기 사용자의 명령에 따라 상기 자동실행 파일을 삭제하는 악성코드 자동실행 차단 장치.
  4. 제 1항에 있어서,
    상기 장치 관리부는 상기 자동실행 파일의 이름과 동일한 이름을 갖는 폴더를 상기 이동식 저장장치에 생성하는 악성코드 자동실행 차단 장치.
  5. 제 1항에 있어서,
    상기 자동실행 파일은 autorun.inf 파일인 악성코드 자동실행 차단 장치.
  6. 제 5항에 있어서,
    상기 레지스트리 키는 윈도우즈 운영제체의 레지스트리 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2에 생성되는 악성코드 자동실행 차단 장치.
  7. 제 6항에 있어서,
    상기 레지스트리 키의 이름은 상기 이동식 저장장치의 전역 식별자인 악성코드 자동실행 차단 장치.
  8. 이동식 저장장치가 시스템에 연결되었는 지를 모니터링하는 단계;
    상기 이동식 저장장치의 전역 식별자를 획득하는 단계;
    상기 이동식 저장장치의 전역 식별자를 이용하여 악성코드를 실행하는 자동실행 파일의 내용을 저장하는 레지스트리 키의 생성 여부를 판단하는 단계;
    상기 레지스트리 키를 삭제하는 단계; 및
    상기 자동실행 파일을 삭제하는 단계
    를 포함하는 악성코드 자동실행 차단 방법.
  9. 제 8항에 있어서, 상기 자동실행 파일을 삭제하는 단계 이후에,
    자동실행 기능 차단 결과를 사용자에게 출력하는 단계를 더 포함하는 악성코드 자동실행 차단 방법.
  10. 제 8항에 있어서,
    상기 자동실행 파일을 삭제하는 단계 이전에, 사용자로부터 상기 자동실행 파일의 삭제 여부에 대한 명령을 수신하는 단계를 더 포함하고,
    상기 자동실행 파일을 삭제하는 단계에서, 상기 자동실행 파일은 상기 사용자의 명령에 따라 삭제되는 악성코드 자동실행 차단 방법.
  11. 제 8항에 있어서, 상기 자동실행 파일을 삭제하는 단계 이후에,
    상기 자동실행 파일의 이름과 동일한 이름을 갖는 폴더를 상기 이동식 저장장치에 생성하는 단계를 더 포함하는 악성코드 자동실행 차단 방법.
  12. 제 8항에 있어서,
    상기 자동실행 파일은 autorun.inf 파일인 악성코드 자동실행 차단 방법.
  13. 제 12항에 있어서,
    상기 레지스트리 키는 윈도우즈 운영제체의 레지스트리 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2에 생성되는 악성코드 자동실행 차단 방법.
  14. 제 13항에 있어서,
    상기 레지스트리 키의 이름은 상기 이동식 저장장치의 전역 식별자인 악성코드 자동실행 차단 방법.
KR1020080027301A 2007-11-26 2008-03-25 악성코드 자동실행 차단 장치 및 방법 KR20090054359A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/209,361 US20090138969A1 (en) 2007-11-26 2008-09-12 Device and method for blocking autorun of malicious code

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020070120600 2007-11-26
KR20070120600 2007-11-26

Publications (1)

Publication Number Publication Date
KR20090054359A true KR20090054359A (ko) 2009-05-29

Family

ID=40861534

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080027301A KR20090054359A (ko) 2007-11-26 2008-03-25 악성코드 자동실행 차단 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20090054359A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101135629B1 (ko) * 2009-10-26 2012-04-17 한국전자통신연구원 이동형 usb 저장장치의 자동실행방지 방법 및 장치
KR20140086149A (ko) 2012-12-28 2014-07-08 현대자동차주식회사 차량의 스위치 장치
US9362073B2 (en) 2013-05-06 2016-06-07 Hyundai Motor Company Switch apparatus for vehicle
US9545899B2 (en) 2012-12-28 2017-01-17 Hyundai Motor Company Replaceable switch apparatus for vehicle

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101135629B1 (ko) * 2009-10-26 2012-04-17 한국전자통신연구원 이동형 usb 저장장치의 자동실행방지 방법 및 장치
US9613207B2 (en) 2009-10-26 2017-04-04 Electronics And Telecommunications Research Institute Method and apparatus for preventing autorun of portable USB storage
KR20140086149A (ko) 2012-12-28 2014-07-08 현대자동차주식회사 차량의 스위치 장치
US9545899B2 (en) 2012-12-28 2017-01-17 Hyundai Motor Company Replaceable switch apparatus for vehicle
US9362073B2 (en) 2013-05-06 2016-06-07 Hyundai Motor Company Switch apparatus for vehicle

Similar Documents

Publication Publication Date Title
US11270015B2 (en) Secure disk access control
US20090138969A1 (en) Device and method for blocking autorun of malicious code
US8364974B2 (en) Pre-boot firmware based virus scanner
US7669059B2 (en) Method and apparatus for detection of hostile software
US20070094654A1 (en) Updating rescue software
US8495741B1 (en) Remediating malware infections through obfuscation
US10382477B2 (en) Identification apparatus, control method therefor, and storage medium
US9286468B2 (en) Option read-only memory use
WO2015196982A1 (zh) 一种Android恶意程序检测和处理方法、装置及设备
US10817211B2 (en) Method for completing a secure erase operation
US9245122B1 (en) Anti-malware support for firmware
JP2010262609A (ja) 効率的なマルウェアの動的解析手法
US9448888B2 (en) Preventing a rollback attack in a computing system that includes a primary memory bank and a backup memory bank
KR101974989B1 (ko) 위험 파일에 대응하는 행위 정보를 결정하는 방법 및 장치
KR20090054359A (ko) 악성코드 자동실행 차단 장치 및 방법
CN106951326B (zh) 一种文件解锁方法及电子设备
KR100985076B1 (ko) Usb 디바이스 보안 장치 및 방법
JP2018081514A (ja) マルウェアの解析方法及び記憶媒体
TW201305842A (zh) 在儲存裝置上即時監控檔案系統以維護安全的方法與裝置
WO2005103909A1 (ja) セキュリティ保全方法およびデータ蓄積装置、セキュリティ保全サーバ、及びそのプログラムを記録した記録媒体
JP2017204173A (ja) データ保護プログラム、データ保護方法及びデータ保護装置
CN108108635B (zh) 数据安全处理方法、装置和系统
WO2009048158A1 (ja) ファイルチェック装置、ファイルチェックプログラムおよびファイルチェック方法
US10339314B2 (en) Device, method and storage medium for terminating operation of software that is not successfully verified
US9462140B2 (en) Scanner and non-transitory storage medium storing instructions executable by the scanner

Legal Events

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