KR102017016B1 - Apparatus and method for malware - Google Patents

Apparatus and method for malware Download PDF

Info

Publication number
KR102017016B1
KR102017016B1 KR1020170106037A KR20170106037A KR102017016B1 KR 102017016 B1 KR102017016 B1 KR 102017016B1 KR 1020170106037 A KR1020170106037 A KR 1020170106037A KR 20170106037 A KR20170106037 A KR 20170106037A KR 102017016 B1 KR102017016 B1 KR 102017016B1
Authority
KR
South Korea
Prior art keywords
file
program
redirection
monitored
malicious
Prior art date
Application number
KR1020170106037A
Other languages
Korean (ko)
Other versions
KR20190020999A (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 KR1020170106037A priority Critical patent/KR102017016B1/en
Publication of KR20190020999A publication Critical patent/KR20190020999A/en
Application granted granted Critical
Publication of KR102017016B1 publication Critical patent/KR102017016B1/en

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/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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Virology (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 컴퓨터 시스템에 접근하여 파일 오픈을 요청하는 프로그램(110)이 감시대상 프로그램인가 여부를 감시필터(130)가 확인하고, 확인 결과 감시대상 프로그램이 아닐 때에는 원본데이터 저장수단(150)이 보유하는 원본 파일에 대해 정상적으로 파일 수정을 할 수 있도록 하고, 반대로, 파일 오픈을 요청하는 프로그램이 감시대상 프로그램으로 판정된 때에는 감시필터(130)는 원본데이터 저장수단(150)에 저장된 원본 파일의 복사본인 리다이렉션 파일을 새로 생성하여 원본 파일의 저장경로와는 다른 경로인 리다이렉션 데이터 저장수단(160)에 저장하며, 감시대상 프로그램은 리다이렉션 데이터 저장수단(160)에 저장된 리다이렉션 파일에 대해서만 파일 수정을 할 수 있도록 한다. 또, 리다이렉션 파일에 대한 유효성 검증 결과, 유효성이 있으면 그 리다이렉션 파일을 원본 파일과 병합하고, 유효성이 없으면 리다이렉션 데이터 저장수단(160)에서 삭제한다.According to the present invention, the monitoring filter 130 checks whether the program 110 requesting to open a file by accessing the computer system is a monitored program, and the original data storage means 150 retains the stored data when the checked program is not the monitored program. The file can be modified normally with respect to the original file. On the contrary, when it is determined that the program requesting to open the file is a monitored program, the monitoring filter 130 is a copy of the original file stored in the original data storage means 150. Create a new redirection file and store it in the redirection data storage means 160, which is a different path from the original file's storage path, and the monitored program can modify the file only for the redirection file stored in the redirection data storage means 160. do. In addition, if the validation result of the redirection file is valid, the redirection file is merged with the original file. If the redirection file is not valid, the redirection file storage unit 160 deletes the redirection file.

Description

악성프로그램 처리장치 및 처리방법{APPARATUS AND METHOD FOR MALWARE}Malicious program processing device and processing method {APPARATUS AND METHOD FOR MALWARE}

본 발명은 악성프로그램 처리장치 및 처리방법에 관한 것으로, 특히, 컴퓨터 시스템으로 접근하는 파일이 악성코드 등에 감염된 악성프로그램으로 의심되어서 감시가 필요한 감시대상 프로그램일 경우에 이 감시대상 프로그램에 의해 수정된 파일을 리다이렉션 경로에서 관리하도록 함으로써 시스템을 악성프로그램으로부터 안전하게 보호하도록 하는 악성프로그램 처리장치 및 처리방법에 관한 것이다.The present invention relates to a malicious program processing apparatus and method, and more particularly, a file modified by the program to be monitored when a file approaching the computer system is a monitored program that is suspected to be a malicious program infected with a malicious code or the like and needs to be monitored. The present invention relates to a malicious program processing apparatus and a method for managing a system securely from malicious programs by managing the same in a redirect path.

컴퓨터 바이러스, 웜, 트로이 목마, 또는 스파이웨어와 같이, 사용자 몰래 컴퓨터 시스템에 침투하여 피해를 주는 이른바 악성프로그램의 탐지방법으로 시그니처(signature) 기반의 정적 탐지방법과 악성프로그램의 행위를 기반으로 한 행위기반 탐지방법이 있다.Detecting so-called malicious programs that infiltrate and damage computer systems, such as computer viruses, worms, Trojan horses, or spyware, are based on signature-based static detection and malicious program behavior. There is a base detection method.

이들 방법 중 실행되는 프로그램의 행위를 분석하여 악성 여부를 탐지하는 행위기반 탐지방법으로 예를 들어 특허문헌 1, 2 등에 기재된 다양한 탐지방법이 있다.Among these methods, there are various detection methods described in, for example, Patent Documents 1 and 2 as an action-based detection method that detects malicious status by analyzing the behavior of a program to be executed.

특허문헌 1에서는 분석의 대상이 되는 파일(프로그램)의 실행 시에 호출되는 API와 파라미터를 분석하여 행위의 위험점수를 측정하고, 측정된 위험점수를 합산하여 파일의 위험정도를 계산함으로써 그 파일이 악성프로그램인가 여부를 확인하도록 하고 있다.Patent Literature 1 analyzes APIs and parameters that are called at the time of execution of a file (program) to be analyzed and measures the risk score of the action, and calculates the risk level of the file by summing the measured risk scores. It checks whether it is a malicious program.

또, 특허문헌 2에서는 프로세스(프로그램)가 실행되는 과정에서 수집된 특성 인자 정보를 이용하여 특징벡터를 생성하고, 생성된 특징벡터를 이용하여 프로세스에 악성코드가 포함되어 있는가 여부를 탐지하도록 하고 있다.In addition, Patent Literature 2 generates a feature vector using characteristic parameter information collected in the process of executing a process (program), and detects whether a process contains malicious code using the generated feature vector. .

그러나 특허문헌 1, 2를 포함한 공지의 행위기반 탐지방법에서는 실행되는 프로그램이 악성프로그램으로 확인되기 전에 수행한, 예를 들어 원본 파일의 수정이나 삭제, 경로 변경과 같은 행위들에 대해서는 치료나 복원이 어렵다는 문제가 있다.However, in the known behavior-based detection methods including Patent Documents 1 and 2, treatment or restoration is performed for actions performed before the executed program is identified as a malicious program, for example, modifying or deleting the original file, or changing the path. There is a problem that is difficult.

등록특허 10-1404882호 공보(2014. 6. 11. 공고)Publication No. 10-1404882 (Notified on June 11, 2014) 공개특허 10-2017-81386호 공보(2017.07.12. 공개)Publication No. 10-2017-81386 (published Jul. 12, 2017)

본 발명은 종래기술의 상기 문제점을 감안하여 이루어진 것으로, 의심되는 프로그램의 시스템 리소스 조작 행위들에 대해서는 본래의 시스템 리소스와 분리시켜서 관리하고, 그 후에 그 프로그램이 악성프로그램으로 확인된 경우에는 분리되어 관리되던 리소스를 제거함으로써 악성프로그램이 실행되기 전의 환경으로 시스템을 유지시키도록 하는 악성프로그램 처리장치 및 처리방법을 제공하는 것을 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made in view of the above problems of the prior art, and manages system resource manipulation behaviors of a suspected program separately from the original system resources, and then separates and manages the program if it is identified as a malicious program. It is an object of the present invention to provide a malicious program processing apparatus and method for maintaining a system in an environment before a malicious program is executed by removing a resource.

상기 과제를 해결하기 위한 본 발명의 악성프로그램 처리장치는, 컴퓨터 시스템으로 접근하여 파일 오픈 요청을 하는 프로그램이 악성프로그램으로 의심되는 감시대상 프로그램인가 여부를 확인하는 감시필터와, 상기 감시대상 프로그램 여부를 판단하기 위한 감시대상항목을 보유하는 감시대상항목 데이터베이스를 포함하며, 상기 감시필터는, 상기 파일 오픈 요청을 하는 프로그램이 상기 감시대상항목 중 어느 하나 이상에 해당하면 그 프로그램을 감시대상 프로그램으로 판정하고, 상기 감시대상 프로그램이 오픈 요청을 한 파일의 원본 파일을 복사하여 리다이렉션 파일을 생성하며, 생성한 상기 리다이렉션 파일을 상기 원본 파일의 파일 경로와는 다른 경로인 리다이렉션 경로에 저장한다.Malicious program processing apparatus of the present invention for solving the above problems, a surveillance filter for accessing a computer system to check whether a program requesting a file open is a monitored program suspected to be a malicious program, and whether the monitored program; And a watched item database holding a watched item for judging, wherein the watched filter determines that the program as a watched program when the program requesting the file open corresponds to any one or more of the watched items. Copying the original file of the file that the monitoring target program makes an open request to generate a redirection file, and storing the generated redirection file in a redirection path which is different from the file path of the original file.

또, 상기 과제를 해결하기 위한 본 발명의 악성프로그램 처리방법은, 컴퓨터 시스템으로 접근하여 파일 오픈 요청을 하는 프로그램이 악성프로그램으로 의심되는 감시대상 프로그램인가 여부를 판단하는 단계 a)와, 상기 단계 a)의 판단 결과 상기 파일 오픈 요청을 한 프로그램이 감시대상 프로그램인 때에는 그 프로그램이 오픈 요청한 파일의 원본 파일을 복사하여 리다이렉션 파일을 생성하는 단계 b)와, 생성한 상기 리다이렉션 파일을 상기 원본 파일의 파일 경로와는 다른 경로인 리다이렉션 경로에 저장하는 단계 c)를 포함한다.In addition, the malicious program processing method of the present invention for solving the above problems, step a) of determining whether or not the program to access the computer system file request to open the file suspected to be a malicious program, and the step a B) generating a redirection file by copying the original file of the file requested by the program when the program requesting the file open request is a monitored program; and generating the redirection file by the file of the original file. And storing c) in a redirection path that is different from the path.

이와 같이 본 발명은 정상프로그램에 의해 파일 수정이 이루어진 파일과 악성프로그램으로 의심되는 감시대상 프로그램에 의해 파일 수정이 이루어진 파일을 서로 다른 경로에 분리하여 보관하도록 함으로써 악성프로그램으로 의심되는 프로그램에 의해 수정된 파일과 정상프로그램에 의해 수정된 파일을 서로 분리하여 관리할 수 있는 동시에, 리다이렉션 파일의 유효성 검증 결과 유효성이 없는 것으로 판명된 때에는 유효성이 없는 리다이렉션 파일을 시스템으로부터 삭제하는 등에 의해 간단하게 처리할 수 있으므로 시스템을 악성프로그램으로부터 안전하게 보호할 수 있다.As described above, the present invention is modified by a program suspected to be a malicious program by storing the file modified by a normal program and a file modified by a monitored program suspected to be a malicious program in different paths. The file and the file modified by the normal program can be managed separately from each other, and when the validation of the redirection file turns out to be invalid, it can be easily processed by deleting the invalid redirection file from the system. It can protect your system from malicious programs.

도 1은 본 발명의 바람직한 실시형태의 악성프로그램 처리장치를 나타내는 블록도,
도 2는 본 발명의 바람직한 실시형태의 악성프로그램 처리방법의 흐름을 나타내는 플로차트,
도 3은 파일의 유효성을 검증하는 파일 유효성 검증방법의 흐름을 나타내는 플로차트이다.
1 is a block diagram showing a malicious program processing apparatus according to a preferred embodiment of the present invention;
2 is a flowchart showing the flow of a malicious program processing method according to a preferred embodiment of the present invention;
3 is a flowchart showing the flow of a file validation method for validating a file.

이하, 본 발명의 바람직한 실시형태에 대해서 첨부 도면을 참조하면서 상세하게 설명한다.EMBODIMENT OF THE INVENTION Hereinafter, preferred embodiment of this invention is described in detail, referring an accompanying drawing.

먼저, 본 발명의 바람직한 실시형태의 악성프로그램 처리장치에 대해서 설명한다. 도 1은 본 발명의 바람직한 실시형태의 악성프로그램 처리장치를 나타내는 블록도이다.First, a malicious program processing apparatus of a preferred embodiment of the present invention will be described. 1 is a block diagram showing a malicious program processing apparatus of a preferred embodiment of the present invention.

본 실시형태에서의 악성프로그램 처리장치(100)는 정상프로그램(application)이 사용하는 리소스(resource)와 악성프로그램이 사용하는 리소스를 서로 분리하여 관리하는 리다이렉션(redirection) 기법을 이용하며, 이를 위해 사용자 모드(user mode)에서 실행되는 프로그램(110)과 커널 모드(kernel mode)의 실제 데이터 사이의 행위를 감시하는 기능을 하는 필터에 리다이렉션 기능을 추가하여 감시필터(130)를 구성하고, 이 감시필터(130)에 의해 실제 데이터와 악성프로그램이 사용하는 리소스를 분리하여 관리하도록 함으로써 컴퓨터 시스템 내의 리소스들을 안전하게 보호할 수 있도록 한다.The malicious program processing apparatus 100 according to the present embodiment uses a redirection technique that separates and manages resources used by a normal application and resources used by a malicious program. The supervisory filter 130 is configured by adding a redirection function to the filter that monitors the behavior between the program 110 running in the user mode and the actual data of the kernel mode. By 130, it is possible to separate and manage the resources used by the actual data and malicious programs to secure the resources in the computer system.

상기 기능을 실행하는 본 실시형태의 악성프로그램 처리장치(100)는 컴퓨터 시스템 내에 설치되며, 도 1에 나타내는 것과 같이, 감시필터(130)와 감시대상항목 데이터베이스(140)와 원본데이터 저장수단(150)과 리다이렉션 데이터 저장수단(160)과 리다이렉션 정보 메모리(170)를 포함한다.The malicious program processing apparatus 100 of the present embodiment for executing the above functions is installed in a computer system, and as shown in FIG. 1, the monitoring filter 130, the monitoring target item database 140, and the original data storing means 150. ), A redirection data storage means (160) and a redirection information memory (170).

감시필터(130)는 윈도 OS(Windows Operating System)에서 제공되는 미니필터에 리다이렉션 기능을 추가한 것이며, 컴퓨터 시스템에 접근하여 어떤 작업을 실행하기 위해 파일의 오픈(file open)을 요청하는 모든 프로그램(110)에 대해 그 프로그램(110)이 악성코드의 감염이 의심되는 프로그램, 즉, 감시대상 프로그램인가 여부를 판단하고, 감시대상 프로그램인 때에는 원본 파일을 복사한 리다이렉션 파일을 원본 파일의 경로와는 다른 경로인 리다이렉션 경로에 저장하고, 감시대상 프로그램에 의한 파일의 수정은 리다이렉션 파일에 대해서만 실행되도록 한다.The supervisory filter 130 is a redirection function added to the mini-filter provided by the Windows operating system (Windows Operating System), and all programs (file open) that request a file open to access a computer system and execute a task ( For 110, the program 110 determines whether the program is suspected of being infected with malicious code, that is, a program to be monitored. If the program is a monitored program, the redirected file copied from the original file is different from the path of the original file. It is saved in the redirection path which is the path, and the modification of the file by the monitored program is executed only for the redirection file.

보다 상세하게는, 일반적으로 파일의 수정 등을 위해 리소스에 접근하는 프로그램(110)은 커널 모드(kernel mode)에서 수정하고자 하는 파일의 핸들을 얻어서 파일의 수정을 하게 되며, 감시필터(130)는 파일의 수정 등을 위해 사용자 모드로 접근하는 모든 프로그램 또는 스레드(thread)(본 명세서에서는 파일의 수정 등을 위해 사용자 모드로 접근하는 모든 프로그램 또는 스레드 등을 포괄하는 용어로 「프로그램」이라는 용어를 사용한다)에 대해 그 프로그램(110)이 악성코드 등에 감염된 악성프로그램일 가능성이 있어서 감시의 대상이 되는 프로그램(본 명세서에서는 이 프로그램을 「감시대상 프로그램」이라 하고, 감시대상 프로그램이 아닌 프로그램을 「정상프로그램」이라 한다)인가 여부를 판단한다.More specifically, in general, the program 110 accessing a resource for file modification, etc., obtains a handle of a file to be modified in kernel mode, and modifies the file, and the monitoring filter 130 All programs or threads that access the user mode for file modification, etc. (In this specification, the term "program" is used to encompass all the programs or threads that access user mode for file modification.) The program 110 may be a malicious program infected with a malware or the like, and the program to be monitored (in this specification, this program is referred to as a "monitored program", and a program that is not a monitored program is "normal"). Program).

이를 위해 악성프로그램 처리장치(100)는 감시대상항목 데이터베이스(140)를 가지고 있고, 감시대상항목 데이터베이스(140)에는 복수의 감시대상항목을 보유하고 있으며, 악성프로그램 처리장치(100)의 사용자 모드로 접근하는 프로그램(110)이 감시대상항목 데이터베이스(140)가 보유하고 있는 감시대상항목 중 어느 하나 이상에 해당하면 그 프로그램을 감시대상 프로그램으로 설정한다.To this end, the malicious program processing apparatus 100 has a monitoring target item database 140, the monitoring target item database 140 has a plurality of monitoring target items, and the user mode of the malicious program processing device 100. If the approaching program 110 corresponds to any one or more of the monitored target items held by the monitored target database 140, the program is set as the monitored target program.

이하에 감시대상항목 데이터베이스(140)가 보유하는 감시대상항목의 예에 대해 간단하게 설명한다.An example of the monitored object held by the monitored object database 140 will be briefly described below.

- 디지털 서명의 유무 : 대부분의 프로그램은 그 프로그램을 만든 제작사의 디지털 서명이 존재하므로, 사용자 모드로 접근하는 프로그램(110)에 디지털 서명이 있으면 정상프로그램으로 간주해도 좋다. 그러나 최근에는 디지털 서명 파일이 유출 등에 의한 디지털 서명의 변조도 이루어지고 있어서 디지털 서명이 있다는 것만으로는 무조건 신뢰할 수 없는 경우도 있으므로, 바람직하게는 디지털 서명의 유무와 함께 인증서의 서명자나 서명 내에 존재하는 다른 정보들도 함께 확인하면 신뢰도를 더 높일 수 있다.-The presence or absence of a digital signature: Since most programs have a digital signature of the manufacturer who made the program, if a digital signature exists in the program 110 to access the user mode, the program may be regarded as a normal program. However, in recent years, digital signature files have been tampered with by leaking digital signature files, so there may be cases where digital signatures cannot be trusted unconditionally. Checking other information together can increase reliability.

- 실행파일 속성정보의 유효성 : 일반적인 상용 프로그램에는 파일 버전, 제작자 이름, 파일 설명과 같은 파일의 속성정보가 존재하므로, 사용자 모드로 접근하는 프로그램(110)에 이와 같은 속성정보가 포함되어 있지 않거나, 또는 그 프로그램 파일이 속성정보와 일치하지 않으면 감시대상 프로그램으로 한다.-Validity of the execution file property information: Since a general commercial program has file property information such as a file version, a producer name, and a file description, such property information is not included in the program 110 accessing the user mode. If the program file does not match the attribute information, the program is monitored.

- 파일이 실행되는 경로 : 악성프로그램의 경우는 원격지로부터 다운로드 받아서 실행되는 방법을 주로 사용하므로, 사용자 모드로 접근하는 프로그램(110)이 인터넷 Temp 폴더나 Downloads 폴더와 같은 특정 경로에서 실행되는 프로그램일 경우에는 악성프로그램일 가능성이 있으므로 감시대상 프로그램으로 한다.-Path in which the file is executed: In case of a malicious program, a method of downloading and executing it from a remote location is mainly used. Therefore, when the program 110 accessing the user mode is a program executed in a specific path such as the Internet Temp folder or the Downloads folder. There is a possibility that it is a malicious program.

- 인젝션된 스레드 여부 : 악성프로그램이 EXE, COM과 같은 실행파일이 아닌 경우에는 실행중인 다른 프로세스에 로딩시키는 방법을 사용하며(이를 'DLL 인젝션'이라고 함), 사용자 모드로 접근하는 프로그램(110)의 스레드 생성 감시에 의해 인젝션된 스레드인지 여부를 확인하여, 인젝션된 스레드일 경우에는 감시대상 프로그램으로 한다.-Whether the thread is injected: If the malicious program is not an executable file such as EXE or COM, it loads into another running process (this is called 'DLL injection'), and the program 110 accesses the user mode. It checks whether or not the thread is injected by thread creation monitoring. If the thread is injected, the program to be monitored is used.

- 스크립트 형태 프로그램 : VBScript, WScript, powershell, php 등의 스크립트 실행 프로그램이나 java 프로그램과 같은 인터프리터를 이용한 형태의 악성 프로그램이 존재하므로, 스크립트를 실행할 수 있는 프로세스나 인터프리터의 경우 감시대상 프로그램으로 한다.-Script type program: Script execution program such as VBScript, WScript, powershell, php or malicious program using interpreter such as java program exist. Therefore, process or interpreter that can execute script is to be monitored.

사용자 모드로 접근하는 프로그램(110)이 감시대상 프로그램으로 판정된 때에는 감시필터(130)는 그 감시대상 프로그램에 의해 이전에 리다이렉션한 리다이렉션 파일(redirection file)이 리다이렉션 데이터 저장수단(160)에 저장되어 있는가 여부를 확인한다.When the program 110 approaching the user mode is determined to be a monitored program, the monitoring filter 130 stores a redirection file previously redirected by the monitored program in the redirection data storage means 160. Check whether there is.

확인 결과, 이전에 리다이렉션한 리다이렉션 파일이 있으면 리다이렉션 정보 메모리(170)에서 그 리다이렉션 파일의 파일정보를 취득하고, 취득한 리다이렉션 파일의 파일 정보를 적용하여 커널에서 리다이렉션 파일의 핸들을 얻어서 프로그램에 반환하며, 이에 의해 이전에 리다이렉션 데이터 저장수단(160)에 저장되어 있던 리다이렉션 파일의 파일 수정이 이루어지도록 한다.As a result of the check, if there is a redirection file that was previously redirected, the redirection information memory 170 obtains file information of the redirection file, applies the file information of the redirection file obtained, obtains a handle of the redirection file from the kernel, and returns it to the program. As a result, file modification of the redirection file previously stored in the redirection data storage means 160 is performed.

반대로, 확인 결과, 감시대상 프로그램으로부터 이전의 파일 오픈 요청에 의해 리다이렉션한 리다이렉션 파일이 리다이렉션 데이터 저장수단(160)에 저장되어 있지 않으면, 감시필터(130)는 원본데이터 저장수단(150)에 저장되어 있는 원본 파일을 복사한 복사본 파일인 리다이렉션 파일을 생성하여 리다이렉션 데이터 저장수단(160)에 저장하는 동시에, 생성한 리다이렉션 파일의 파일정보를 리다이렉션 정보 메모리(170)에 저장한다.On the contrary, if the redirection file that is redirected by the previous file open request from the program to be monitored is not stored in the redirection data storage means 160, the monitoring filter 130 is stored in the original data storage means 150. A redirection file, which is a copy file of which the original file is copied, is generated and stored in the redirection data storage unit 160, and the file information of the generated redirection file is stored in the redirection information memory 170.

그 후에, 감시필터(130)는 새로 생성한 리다이렉션 파일의 파일정보를 적용하여 커널에서 리다이렉션 파일의 핸들을 얻어서 프로그램에 반환하며, 이에 의해 새로 생성되어 리다이렉션 데이터 저장수단(160)에 저장된 리다이렉션 파일의 파일 수정이 이루어진다.Thereafter, the monitoring filter 130 applies the file information of the newly generated redirection file to obtain a handle of the redirection file from the kernel and returns the handle to the program. File modifications are made.

한편, 사용자 모드로 접근하는 프로그램(110)이 감시대상 프로그램인 때에는 감시필터(130)는 원본데이터 저장수단(150)에 저장되어 있는 원본 파일의 핸들을 얻어서 프로그램에 반환하며, 이에 의해 원본데이터 저장수단(150)에 저장되어 있는 원본 파일의 수정이 이루어지게 된다.On the other hand, when the program 110 to access the user mode is the program to be monitored, the monitoring filter 130 obtains a handle of the original file stored in the original data storage means 150 and returns to the program, thereby storing the original data Modifications to the original file stored in the means 150 are made.

감시대상항목 데이터베이스(140)는 사용자 모드로 접근하는 프로그램(110)이 감시대상 프로그램인가 여부를 판단하기 위한 감시대상항목을 보유하며, 감시대상항목에 대해서는 앞에서 설명한 것과 같다.The monitoring target item database 140 holds the monitoring target item for determining whether the program 110 accessing the user mode is the monitored program, and the monitoring target item is the same as described above.

원본데이터 저장수단(150)은 정상프로그램에 의해 작성 또는 수정된 원본 파일을 저장하는 데이터 저장수단이며, 예를 들어 하드디스크, CD-ROM, RAM이나 ROM과 같은 전자적 기억장치 등의 공지 구성의 저장수단을 이용할 수 있다.Original data storage means 150 is a data storage means for storing the original file created or modified by the normal program, for example, the storage of a known configuration such as an electronic storage device such as a hard disk, CD-ROM, RAM or ROM Means can be used.

리다이렉션 데이터 저장수단(160)은 감시필터(130)가 원본데이터 저장수단(150)에 저장되어 있는 원본 파일로부터 복사된 복사본인 리다이렉션 파일을 저장하는 데이터 저장수단이며, 예를 들어 하드디스크, CD-ROM, RAM이나 ROM과 같은 전자적 기억장치 등의 공지 구성의 저장수단을 이용할 수 있다. 또, 리다이렉션 데이터 저장수단(160)은 원본 파일을 저장하는 원본데이터 저장수단(150)과는 물리적으로 동일한 저장수단을 이용해도 좋고, 다른 저장수단을 이용해도 좋으나, 원본데이터 저장수단(150)과는 그 접근경로가 달라야 하며, 감시필터(130)가 감시대상 프로그램으로 판정한 프로그램에 의한 파일의 수정은 이 리다이렉션 데이터 저장수단(160)에 저장되어 있는 리다이렉션 파일에 대해서만 가능하다.The redirection data storage means 160 is a data storage means for which the monitoring filter 130 stores a redirection file which is a copy copied from the original file stored in the original data storage means 150. For example, the redirection data storage means 160 is a hard disk, a CD-. The storage means of well-known structures, such as ROM, RAM, and an electronic memory device, such as ROM, can be used. In addition, the redirection data storage means 160 may use the same storage means as the original data storage means 150 for storing the original file, or may use other storage means, but the original data storage means 150 The access path must be different, and modification of the file by the program determined by the monitoring filter 130 as the program to be monitored is possible only for the redirection file stored in the redirection data storing means 160.

리다이렉션 정보 메모리(170)는 감시필터(130)가 원본데이터 저장수단(150)에 저장되어 있는 원본 파일로부터 복사된 복사본인 리다이렉션 파일을 생성한 경우에, 그 리다이렉션 파일의 파일정보를 저장하는 메모리이며, 리다이렉션 파일의 파일정보는 예를 들어 원본 파일의 파일 경로, 최초로 파일이 복사된 복사일자와 복사시각, 리다이렉션 파일의 이름 등이다.The redirection information memory 170 is a memory for storing the file information of the redirection file when the monitoring filter 130 generates a redirection file which is a copy copied from the original file stored in the original data storage means 150. For example, the file information of the redirection file is, for example, the file path of the original file, the copy date and time of copying the first file, and the name of the redirection file.

다음에, 도 2를 이용하여 본 발명의 바람직한 실시형태의 악성프로그램 처리방법에 대해서 설명한다. 도 2는 본 발명의 바람직한 실시형태의 악성프로그램 처리방법의 흐름을 나타내는 플로차트이다.Next, the malicious program processing method of the preferred embodiment of the present invention will be described with reference to FIG. 2 is a flowchart showing the flow of a malicious program processing method of a preferred embodiment of the present invention.

먼저, 악성프로그램 처리장치(100)의 사용자 모드로 접근하는 프로그램(110)으로부터 파일의 수정 등을 위한 파일 오픈 요청이 있으면(단계 S11), 단계 S12에서 감시필터(130)는 파일 오픈 요청을 하는 프로그램이 감시대상 프로그램인가 여부를 확인한다.First, if there is a file open request for modification of a file from the program 110 accessing the user mode of the malicious program processing apparatus 100 (step S11), in step S12, the monitoring filter 130 performs a file open request. Check whether the program is a monitored program.

단계 S12의 확인 결과, 파일 오픈 요청을 하는 프로그램이 감시대상 프로그램이 아니면(단계 S12=NO) 단계 S13으로 진행하며, 단계 S13에서 감시필터(130)는 커널에서 원본 파일의 핸들을 얻어서 프로그램(110)에 반환하고, 단계 S18에서 요청한 원본 파일을 오픈 하여 파일 내용의 수정이나 파일의 삭제 또는 변경 등의 작업을 실행하고 종료한다.As a result of checking in step S12, if the program requesting to open the file is not a program to be monitored (step S12 = NO), the process proceeds to step S13. ), The original file requested in step S18 is opened, and operations such as modification of the file contents, deletion or change of the file, and the like are terminated.

또, 단계 S12의 확인 결과, 파일 오픈 요청을 하는 프로그램이 감시대상 프로그램이면(단계 S12=YES) 단계 S14로 진행하며, 단계 S14에서 감시필터(130)는 리다이렉션 정보 메모리(170)에 저장되어 있는 리다이렉션 파일의 파일정보인 원본 파일의 파일 경로, 최초로 파일이 복사된 복사일자와 복사시각, 리다이렉션 파일의 이름 등의 정보를 확인함으로써 감시대상 프로그램이 오픈 요청을 하는 파일의 이전에 리다이렉션한 리다이렉션 파일이 있는가 여부를 확인한다.As a result of checking in step S12, if the program requesting to open the file is a program to be monitored (step S12 = YES), the process proceeds to step S14. In step S14, the monitoring filter 130 is stored in the redirection information memory 170. By checking information such as the file path of the original file, which is the file information of the redirected file, the copy date and time of copying the first file, and the name of the redirected file, the redirected file that was previously redirected to the file that the monitored program requests to open is displayed. Check whether there is.

단계 S14의 확인 결과 이전에 리다이렉션한 리다이렉션 파일이 없으면(단계 S14=NO) 감시필터(130)는 원본데이터 저장수단(150)에 저장되어 있는 원본 파일을 복사하여 새로운 리다이렉션 파일을 생성하고, 생성한 리다이렉션 파일을 리다이렉션 데이터 저장수단(160)에 저장한 후 단계 S16으로 진행하며, 단계 S16에서는 감시필터(130)는 리다이렉션 데이터 저장수단(160)에 저장한 리다이렉션 파일의 파일정보를 리다이렉션 정보 메모리(170)에 저장한 후 단계 S17로 진행한다. 앞에서도 설명한 것과 같이, 리다이렉션 파일의 파일정보는 원본 파일의 파일 경로, 최초로 파일이 복사된 복사일자와 복사시각, 리다이렉션 파일의 이름 등이다.If there is no redirection file previously redirected as a result of checking in step S14 (step S14 = NO), the supervisory filter 130 creates a new redirection file by copying the original file stored in the original data storage means 150 and generating the new redirection file. After the redirection file is stored in the redirection data storing means 160, the process proceeds to step S16. ), And the flow advances to step S17. As described above, the file information of the redirection file is the file path of the original file, the copy date and time of the first file copy, the name of the redirection file, and the like.

또, 단계 S14의 확인 결과 이전에 리다이렉션한 파일이 있으면(단계 S14=YES) 단계 S17로 진행하며, 단계 17에서 감시필터(130)는 그 리다이렉션 파일의 파일정보를 적용해서 커널에서 리다이렉션 파일의 핸들을 얻어서 프로그램에 반환하고 단계 S18로 진행하며, 단계 S18에서는 리다이렉션 파일의 수정이나 삭제, 변경과 같은 파일 수정작업을 실행하고 종료한다.If there is a file that has been redirected before as a result of checking in step S14 (step S14 = YES), the process proceeds to step S17. In step 17, the monitoring filter 130 applies the file information of the redirection file to handle the redirect file in the kernel. And return to the program and proceed to step S18. In step S18, file modification operations such as modification, deletion, or modification of the redirection file are executed and finished.

이상과 같이, 본 실시형태에서는 사용자 모드에서 접근하여 파일 오픈을 요청하는 프로그램(110)이 감시대상 프로그램인가 여부를 감시필터(130)가 확인하고, 확인 결과 감시대상 프로그램이 아닐 때에는 원본데이터 저장수단(150)이 보유하는 원본 파일에 대해 정상적으로 파일 수정을 할 수 있도록 하고, 반대로, 파일 오픈을 요청하는 프로그램이 감시대상 프로그램으로 판정된 때에는 감시필터(130)는 원본데이터 저장수단(150)에 저장된 원본 파일의 복사본인 리다이렉션 파일을 새로 생성하여 원본 파일의 경로와는 다른 경로인 리다이렉션 경로(리다이렉션 데이터 저장수단(160))에 저장하며, 감시대상 프로그램은 리다이렉션 경로에 저장된 리다이렉션 파일에 대해서만 파일 수정을 할 수 있도록 한다.As described above, in the present embodiment, the monitoring filter 130 checks whether the program 110 requesting the file open by accessing the user mode is the program to be monitored. When the program requesting the file open is determined to be a monitored program, the monitoring filter 130 stores the original data stored in the original data storage means 150. Creates a new redirection file, which is a copy of the original file, and saves it in the redirection path (redirection data storage means 160), which is different from the path of the original file.The monitored program can modify the file only for the redirection file stored in the redirection path. Do it.

이와 같은 처리와 동시에 또는 처리가 이루어진 이후에는, 리다이렉션 경로에 보관 중인 리다이렉션 파일이 악성코드 등에 감염된 악성프로그램에 의해 수정된 파일인가 여부의 검증, 즉, 파일 유효성 검증을 하며, 검증 결과 악성프로그램에 의해 수정이 이루어진 파일로서 유효성이 없는 파일로 판명된 때에는 악성프로그램 처리장치(100)는 리다이렉션 파일의 삭제 등의 처리를 하며, 역으로, 유효성이 있는 파일로 판명되면 그 리다이렉션 파일을 원본데이터 저장수단(150)에 보관중인 원본 파일과 병합하는 등의 처리를 한다.At the same time as this processing or after the processing, the redirection file stored in the redirection path is verified whether the file is modified by a malicious program infected with malicious code, that is, the file is validated. When the modified file is found to be an invalid file, the malicious program processing apparatus 100 processes the deletion of the redirection file, etc. On the contrary, when the file is found to be a valid file, the malicious file processing unit stores the redirection file as an original data storage means ( And merging with the original file stored in 150).

리다이렉션 경로에 보관 중인 리다이렉션 파일의 파일 유효성 검증은 통상의 유효성 검증절차를 통해서 이루어지며, 이하에 간략하게 설명한다. 도 3은 프로그램의 유효성을 검증하는 유효성 검증방법을 나타내는 플로차트이다.File validation of the redirection file stored in the redirection path is performed through a normal validation procedure, which will be briefly described below. 3 is a flowchart showing a validation method for validating a program.

먼저, 단계 S21에서 리다이렉션 파일의 파일 데이터를 판독하고 단계 S22로 진행하며, 단계 S22에서는 판독한 리다이렉션 파일의 파일 데이터 중 파일 헤더 값을 검증한다.First, in step S21, the file data of the redirection file is read and the process proceeds to step S22, and in step S22, the file header value of the file data of the read redirection file is verified.

일반적으로 응용프로그램에서 사용되는 파일들은 예를 들어 jpg, exe, docx, …와 같은 특정 확장자 명을 가지고, 이와 같은 특정 확장자를 가진 파일은 파일의 진입부에 고유의 값, 즉, 파일 헤더 값을 가지며, 악성프로그램은 통상적으로 이 파일 헤더 값을 변조하므로, 리다이렉션 파일의 파일 헤더 값의 확인에 의해 파일 유효성을 검증할 수 있다.Generally, files used in application programs are jpg, exe, docx,… A file with a specific extension, such as, has a value unique to the entry of the file, i.e., a file header value, and since a malicious program typically modulates the file header value, the file of the redirect file You can validate the file by checking the header value.

단계 S22의 검증 결과 리다이렉션 파일이 유효한 것으로 판정되면(단계S22=YES) 단계 S23으로 진행하여 명령어 검증을 실행한다.If the verification result of step S22 determines that the redirection file is valid (step S22 = YES), the flow advances to step S23 to execute command verification.

일부 악성프로그램은 파일의 헤더는 그대로 두고 특정한 오프셋(offset) 위치에서부터 파일을 변조하므로, 이 경우에는 파일 헤더 값의 확인 만에 의해서는 완전한 파일 유효성 검증을 할 수 없다. 따라서 단계 S22의 검증 결과 파일 헤더 값이 유효한 것으로 인정되는 경우에도 명령어형 검증코드를 적용하여 파일에 포함된 데이터를 확인함으로써 한번더 파일의 유효성 검증을 실행한다.Some malware modifies the file from a specific offset position, leaving the file header intact. In this case, only validating the file header value does not allow full file validation. Therefore, even when the file header value of the verification result of step S22 is found to be valid, the file is validated once more by applying the imperative verification code to check the data included in the file.

단계 S23의 검증 결과도 리다이렉션 파일이 유효한 것으로 판명되면 단계 S24로 진행하여 유효성이 검증된 리다이렉션 파일을 원본 파일과 병합하고 종료한다.If the verification result of step S23 also proves that the redirection file is valid, the flow advances to step S24 to merge the validated redirection file with the original file and ends.

또, 단계 S22에서의 파일 헤더 값의 검증 결과, 또는 단계 S23에서의 명령어형 검증 결과 리다이렉션 파일이 유효성이 없는 것으로 판명되면 단계 S25로 진행하여 유효성이 없는 리다이렉션 파일을 시스템으로부터 삭제하는 등의 처리를 진행하고 종료한다.If the verification result of the file header value in step S22 or the imperative verification result in step S23 turns out that the redirection file is invalid, the process proceeds to step S25 to delete an invalid redirection file from the system. Proceed and exit.

이와 같이 본 실시형태에서는 정상프로그램에 의해 파일 수정이 이루어진 파일과 악성프로그램으로 의심되는 감시대상 프로그램에 의해 파일 수정이 이루어진 파일을 서로 다른 경로에 분리하여 보관하도록 함으로써 악성프로그램으로 의심되는 프로그램에 의해 수정된 파일과 정상프로그램에 의해 수정된 파일을 서로 분리하여 관리할 수 있는 동시에, 리다이렉션 파일의 유효성 검증 결과 유효성이 없는 것으로 판명된 때에는 유효성이 없는 리다이렉션 파일을 시스템으로부터 삭제하는 등에 의해 간단하게 처리할 수 있으므로 시스템을 악성프로그램으로부터 안전하게 보호할 수 있다.As described above, in the present embodiment, a file modified by a normal program and a file suspected to be a malicious program are separated and stored in different paths by a monitored program suspected to be a malicious program. Managed files and files modified by normal programs can be managed separately from each other, and when the validation of the redirection file turns out to be invalid, it can be easily processed by deleting the invalid redirection file from the system. Therefore, you can protect your system from malicious programs.

이상, 본 발명을 바람직한 실시형태에 의해 설명하였으나, 본 발명은 상기 실시형태에 한정되는 것은 아니며, 청구범위에 기재된 발명의 범위 내에서 다양한 변경이나 변형이 가능하다.As mentioned above, although this invention was demonstrated by preferable embodiment, this invention is not limited to the said embodiment, A various change and a deformation | transformation are possible within the scope of the invention as described in a claim.

상기 실시형태에서는 시스템의 사용자 모드로 접근하는 프로그램(110)이 감시대상항목 데이터베이스(140)가 보유하는 감시대상항목 중 어느 하나 이상에 해당하는 프로그램인가 여부를 확인함으로써 감시대상 프로그램 여부를 판정하는 것으로 설명하였으나, 예를 들어 앞에서 설명한 파일의 유효성 검증과정이나, 또는 다른 과정에서 악성코드 등에 감염되지 않은 것으로 판정된 프로그램(본 명세서에서는 이 프로그램을 「정상적인 프로그램」이라고 하며, 감시대상 프로그램이 아닌 프로그램을 가리키는 「정상프로그램」과는 구별되는 용어이다)을 별도의 데이터베이스 등에 의해 관리하도록 하고, 시스템의 사용자 모드로 접근하는 프로그램(110)이 이 데이터베이스에 있으면 그 프로그램을 정상프로그램으로 판정하도록 해도 좋다.In the above embodiment, it is determined whether or not the program to be monitored is checked by confirming whether the program 110 accessing the user mode of the system corresponds to any one or more of the items to be monitored in the monitored item database 140. Although described above, for example, a program that is determined to have not been infected with a malicious code in the process of validating the file or other process described above (in this specification, this program is referred to as a "normal program". The term " normal program " indicated herein may be managed by a separate database or the like, and if the program 110 accessing the user mode of the system exists in the database, the program can be determined as a normal program.

또, 상기 과정에서 악성프로그램으로 판정된 프로그램에 대해서는 악성프로그램 데이터베이스에 의해 관리하도록 하고, 시스템의 사용자 모드로 접근하는 프로그램(110)이 악성프로그램 데이터베이스에 있으면 그 프로그램을 감시대상 프로그램으로 판정하도록 해도 좋다.In addition, a program determined to be a malicious program in the above process may be managed by a malicious program database. If a program 110 that accesses the user mode of the system is in the malicious program database, the program may be determined to be a monitored program. .

또, 상기 실시형태와 상기 변형 예는 따로따로 실시해도 좋고, 서로 조합하여 실시해도 좋다.In addition, the said embodiment and the said modification may be implemented separately, and may be implemented in combination with each other.

100 악성프로그램 처리장치
110 프로그램
130 감시필터
140 감시대상항목 데이터베이스
150 원본데이터 저장수단
160 리다이렉션 데이터 저장수단
170 리다이렉션 정보 메모리
100 Malware Handling Device
110 programs
130 supervisory filter
140 Monitored Items Database
150 Original data storage means
160 Redirect data storage means
170 Redirection Information Memory

Claims (11)

컴퓨터 시스템으로 접근하여 파일 오픈 요청을 하는 프로그램이 악성프로그램으로 의심되는 감시대상 프로그램인가 여부를 확인하는 감시필터와,
상기 감시대상 프로그램 여부를 판단하기 위한 감시대상항목을 보유하는 감시대상항목 데이터베이스를 포함하며,
상기 감시필터는,
상기 파일 오픈 요청을 하는 프로그램이 상기 감시대상항목 중 어느 하나 이상에 해당하면 그 프로그램을 감시대상 프로그램으로 판정하고,
상기 감시대상 프로그램이 오픈 요청을 한 파일의 원본 파일을 복사하여 리다이렉션 파일을 생성하며,
생성한 상기 리다이렉션 파일을 상기 원본 파일의 파일 경로와는 다른 경로인 리다이렉션 경로에 저장하고,
상기 리다이렉션 경로에 저장된 상기 리다이렉션 파일을 이용하여 파일 수정을 하며,
상기 감시대상항목은 디지털 서명의 유무, 실행파일 속성정보의 유효성, 파일이 실행되는 경로, 인젝션된 스레드 여부 중 하나 이상인 악성프로그램 처리장치.
A monitoring filter that checks whether a program that accesses a computer system and requests a file open is a monitored program suspected of being a malicious program;
It includes a monitoring target item database for holding a monitoring target item for determining whether or not the program to be monitored,
The monitoring filter,
If the program requesting to open the file corresponds to any one or more of the items to be monitored, the program is determined to be a monitored program,
Redirect file is generated by copying the original file of the file that the watched program has requested to open,
The generated redirection file is stored in a redirection path which is different from the file path of the original file.
Modify the file by using the redirection file stored in the redirection path;
The monitoring target item is at least one of a digital signature, validity of executable file attribute information, a file execution path, and whether or not an injected thread is used.
청구항 1에 있어서,
상기 감시필터는 상기 리다이렉션 파일을 생성하기 전에, 상기 감시대상 프로그램에 의해 이전에 생성된 리다이렉션 파일이 있는가 여부를 더 확인하고,
이전에 생성된 리다이렉션 파일이 있으면 그 리다이렉션 파일을 이용하여 파일 수정이 이루어지도록 하는 악성프로그램 처리장치.
The method according to claim 1,
The surveillance filter further checks whether there is a redirect file previously generated by the surveillance target program before generating the redirect file.
Malware handling device that allows modification of files by using the redirected file if there is a previously generated redirected file.
청구항 2에 있어서,
상기 리다이렉션 파일의 파일정보를 저장하는 리다이렉션 정보 메모리를 더 포함하며,
상기 이전에 생성된 리다이렉션 파일의 유무는 상기 리다이렉션 파일의 파일정보에 의해 확인하는 악성프로그램 처리장치.
The method according to claim 2,
A redirection information memory for storing file information of the redirection file;
The presence or absence of the previously generated redirection file is a malicious program processing apparatus for confirming by the file information of the redirection file.
삭제delete 청구항 1에 있어서,
상기 악성프로그램 처리장치는 상기 리다이렉션 파일의 유효성 검증을 더 실행하고,
검증 결과 유효성이 없는 파일인 때에는 상기 리다이렉션 파일을 삭제하는 악성프로그램 처리장치.
The method according to claim 1,
The malicious program processing apparatus further executes validation of the redirection file,
And a malicious program processing apparatus for deleting the redirect file when the file is invalid as a result of the verification.
청구항 1에 있어서,
상기 악성프로그램 처리장치는 상기 리다이렉션 파일의 유효성 검증을 더 실행하고,
검증 결과 유효성이 있는 파일인 때에는 상기 리다이렉션 파일을 상기 원본 파일과 병합하는 악성프로그램 처리장치.
The method according to claim 1,
The malicious program processing apparatus further executes validation of the redirection file,
And a malicious program processing apparatus for merging the redirection file with the original file when the file is valid.
컴퓨터 시스템으로 접근하여 파일 오픈 요청을 하는 프로그램이 악성프로그램으로 의심되는 감시대상 프로그램인가 여부를 판단하기 위한 감시대상항목을 보유하는 악성프로그램 처리장치에 의한 악성 프로그램 처리방법으로,
컴퓨터 시스템으로 접근하여 파일 오픈 요청을 하는 프로그램이 악성프로그램으로 의심되는 감시대상 프로그램인가 여부를 판단하는 단계 a)와,
상기 단계 a)의 판단 결과 상기 파일 오픈 요청을 한 프로그램이 감시대상 프로그램인 때에는 그 프로그램이 오픈 요청한 파일의 원본 파일을 복사하여 리다이렉션 파일을 생성하는 단계 b)와,
생성한 상기 리다이렉션 파일을 상기 원본 파일의 파일 경로와는 다른 경로인 리다이렉션 경로에 저장하는 단계 c)와,
상기 리다이렉션 경로에 저장된 상기 리다이렉션 파일을 이용하여 파일의 수정을 하는 단계를 포함하며,
상기 감시대상항목은 디지털 서명의 유무, 실행파일 속성정보의 유효성, 파일이 실행되는 경로, 인젝션된 스레드 여부 중 하나 이상이고,
상기 단계 a)에서는 상기 파일 오픈 요청을 하는 프로그램이 상기 감시대상항목 중 어느 하나 이상에 해당하면 그 프로그램을 감시대상 프로그램으로 판정하는 악성프로그램 처리방법.
A malicious program processing method by a malicious program processing device that has a watched item for determining whether a program requesting a file open request by accessing a computer system is a monitored program suspected to be a malicious program.
A) determining whether the program requesting the file open by accessing the computer system is a monitored program suspected to be a malicious program;
B) generating a redirection file by copying the original file of the file requested by the program when the program requesting the file open is the monitored program as a result of the step a);
C) storing the generated redirection file in a redirection path which is different from the file path of the original file;
Modifying the file by using the redirection file stored in the redirection path;
The monitoring target item is one or more of the presence or absence of a digital signature, validity of executable file attribute information, a path in which a file is executed, or whether an injected thread is used.
In step a), if the program requesting to open the file corresponds to any one or more of the items to be monitored, the malicious program processing method for determining the program as a program to be monitored.
청구항 7에 있어서,
상기 단계 b)에서 상기 리다이렉션 파일을 생성하기 전에, 상기 감시대상 프로그램이 이전에 생성한 리다이렉션 파일이 있는가 여부를 확인하는 단계 d)를 더 포함하며,
상기 단계 d)의 확인 결과 이전에 생성된 리다이렉션 파일이 있으면 그 리다이렉션 파일을 이용하여 파일 수정이 이루어지도록 하는 악성프로그램 처리방법.
The method according to claim 7,
Before generating the redirection file in step b), further comprising: checking whether there is a redirection file previously generated by the monitored program;
And if there is a redirection file generated before as a result of the checking in step d), modifying the file by using the redirection file.
청구항 8에 있어서,
상기 이전에 생성된 리다이렉션 파일의 유무는 상기 컴퓨터 시스템이 보유하는 리다이렉션 파일의 파일정보에 의해 확인하는 악성프로그램 처리방법.
The method according to claim 8,
The presence or absence of the previously generated redirection file is a malicious program processing method for confirming by the file information of the redirection file held by the computer system.
청구항 7에 있어서,
상기 단계 c) 이후에 실행되며 상기 리다이렉션 파일의 유효성 검증을 실행하는 단계 e)를 더 포함하고,
상기 단계 e)의 검증 결과 유효성이 없는 파일인 때에는 상기 리다이렉션 파일을 삭제하는 악성프로그램 처리방법.
The method according to claim 7,
Executing after the step c) and performing validation of the redirection file;
The malicious program processing method of deleting the redirection file when the verification result of step e) is invalid.
청구항 7에 있어서,
상기 단계 c) 이후에 실행되며 상기 리다이렉션 파일의 유효성 검증을 실행하는 단계 e)를 더 포함하고,
상기 단계 e)의 검증 결과 유효성이 있는 파일인 때에는 상기 리다이렉션 파일을 상기 원본 파일과 병합하는 악성프로그램 처리방법.
The method according to claim 7,
Executing after the step c) and performing validation of the redirection file;
And when the file is valid as a result of the verification of step e), merges the redirection file with the original file.
KR1020170106037A 2017-08-22 2017-08-22 Apparatus and method for malware KR102017016B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170106037A KR102017016B1 (en) 2017-08-22 2017-08-22 Apparatus and method for malware

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170106037A KR102017016B1 (en) 2017-08-22 2017-08-22 Apparatus and method for malware

Publications (2)

Publication Number Publication Date
KR20190020999A KR20190020999A (en) 2019-03-05
KR102017016B1 true KR102017016B1 (en) 2019-09-06

Family

ID=65760576

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170106037A KR102017016B1 (en) 2017-08-22 2017-08-22 Apparatus and method for malware

Country Status (1)

Country Link
KR (1) KR102017016B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020189823A1 (en) * 2019-03-20 2020-09-24 주식회사 하우리 Device and method for dealing with malicious programs by using technique of checking validity of redirection file

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101710928B1 (en) * 2015-09-04 2017-03-13 숭실대학교산학협력단 Method for protecting malignant code in mobile platform, recording medium and device for performing the system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101031786B1 (en) * 2009-02-03 2011-04-29 주식회사 안철수연구소 Malicious code prevention apparatus and method using level classification of suspicious behavior and isolated execution, and computer-readable medium storing program for method thereof
KR101404882B1 (en) 2013-01-24 2014-06-11 주식회사 이스트시큐리티 A system for sorting malicious code based on the behavior and a method thereof
KR102450834B1 (en) 2016-01-04 2022-10-05 한국전자통신연구원 Behavior-based malicious code detection apparatus and method using multiple feature vector

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101710928B1 (en) * 2015-09-04 2017-03-13 숭실대학교산학협력단 Method for protecting malignant code in mobile platform, recording medium and device for performing the system

Also Published As

Publication number Publication date
KR20190020999A (en) 2019-03-05

Similar Documents

Publication Publication Date Title
US10984097B2 (en) Methods and apparatus for control and detection of malicious content using a sandbox environment
US11645383B2 (en) Early runtime detection and prevention of ransomware
US9824217B2 (en) Runtime detection of self-replicating malware
US9336390B2 (en) Selective assessment of maliciousness of software code executed in the address space of a trusted process
US9680848B2 (en) Apparatus, system and method for detecting and preventing malicious scripts using code pattern-based static analysis and API flow-based dynamic analysis
RU2571723C2 (en) System and method of reducing load on operating system when executing antivirus application
Doupe et al. deDacota: toward preventing server-side XSS via automatic code and data separation
Altekar et al. OPUS: Online Patches and Updates for Security.
US10462160B2 (en) Method and system for identifying uncorrelated suspicious events during an attack
US11455400B2 (en) Method, system, and storage medium for security of software components
US10440036B2 (en) Method and system for modeling all operations and executions of an attack and malicious process entry
US20160142437A1 (en) Method and system for preventing injection-type attacks in a web based operating system
IL267241B2 (en) System and methods for detection of cryptoware
CN103473501B (en) A kind of Malware method for tracing based on cloud security
JP2019521400A (en) Detecting speculative exploit attempts
Burket et al. {GuardRails}: A {Data-Centric} Web Application Security Framework
US20220108001A1 (en) System for detecting and preventing unauthorized software activity
US7620983B1 (en) Behavior profiling
KR102017016B1 (en) Apparatus and method for malware
US9785775B1 (en) Malware management
KR101503827B1 (en) A detect system against malicious processes by using the full path of access files
US10880316B2 (en) Method and system for determining initial execution of an attack
JP5955475B1 (en) Program, information processing apparatus, and information processing method
JP6787841B2 (en) Access control device, access control method and access control program
WO2017114341A1 (en) Root virus removal method and apparatus, and electronic device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right