[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR101986638B1 - Malware preventing system and method for object file to protect - Google Patents

Malware preventing system and method for object file to protect Download PDF

Info

Publication number
KR101986638B1
KR101986638B1 KR1020180026397A KR20180026397A KR101986638B1 KR 101986638 B1 KR101986638 B1 KR 101986638B1 KR 1020180026397 A KR1020180026397 A KR 1020180026397A KR 20180026397 A KR20180026397 A KR 20180026397A KR 101986638 B1 KR101986638 B1 KR 101986638B1
Authority
KR
South Korea
Prior art keywords
file
user
input
malicious
log
Prior art date
Application number
KR1020180026397A
Other languages
Korean (ko)
Inventor
김주생
문종순
유휘재
김현오
Original Assignee
주식회사 안랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 안랩 filed Critical 주식회사 안랩
Priority to KR1020180026397A priority Critical patent/KR101986638B1/en
Application granted granted Critical
Publication of KR101986638B1 publication Critical patent/KR101986638B1/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • 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

Landscapes

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

Abstract

The present invention relates to a malware prevention system for a file to be protected, and to a malware prevention method therefor. The malware prevention system for a file to be protected automatically sets a file to be protected in a manner to determine and decide a user writing file which is a main target of a malicious code such as ransomware, and efficiently blocks the attacks from the malicious code such as ransomware in advance without a separate protection target setting procedure by the user.

Description

보호대상 파일에 대한 악성 차단 시스템 및 악성 차단 방법{MALWARE PREVENTING SYSTEM AND METHOD FOR OBJECT FILE TO PROTECT}TECHNICAL FIELD [0001] The present invention relates to a malicious blocking system and a malicious blocking method for a protected file,

본 발명은 악성코드로부터 파일을 보호하는 기술에 관한 것으로, 더욱 상세하게는 악성코드의 주 공격 대상이 되는 파일을 자동으로 탐지 및 보호 대상으로 설정하여, 별도 사용자에 의한 보호 대상 설정 절차 없이도 악성코드로부터의 공격을 효과적으로 사전 차단할 수 있는 기술에 관한 것이다.The present invention relates to a technology for protecting a file from malicious code, and more particularly, to a technique for automatically protecting a file to be a target of malicious code detection and protection, And more particularly, to a technique capable of effectively blocking an attack from an attacker.

랜섬웨어는, 정보(파일)를 외부로 유출시키는 형태의 공격을 감행하는 악성코드와는 달리, 정보(파일)를 암호화하거나 압축하는 등 임의로 변조시켜 사용자가 다시 보기 어려운 상태 즉 사용 불가능 상태로 만드는 형태의 공격을 감행한다.Unlike malicious code that attacks information (file) to the outside, Ransomware modifies information (file) by arbitrarily modifying it by encrypting it or compressing it, Attack in the form of.

이러한 랜섬웨어는, 정보(파일)를 사용 불가능 상태로 만든 후(변조) 정보(파일) 공격 사실을 사용자에게 알려, 정보(파일) 복원의 대가로 금전을 갈취하는 악의적 목적으로 주로 사용되고 있다. Such a randomware is mainly used as a malicious purpose of taking information (file) into an unusable state (modulation), informing the user of the information (file) attack and withdrawing money in return for information (file) restoration.

이때, 랜섬웨어는, 금전 갈취의 목적 달성을 위해, 정보(파일)를 사용 불가능 상태로 변조시킬 뿐 완전히 파괴하지는 않기 때문에, 랜섬웨어의 공격을 사전에 명백하게 인지하는 것이 쉽지 않고 따라서 공격 자체를 차단하는 것이 어려운 실정이다.At this time, since Ransomware modifies the information (file) to an unusable state but does not completely destroy it in order to achieve the purpose of withdrawal of money, it is not easy to recognize Ransomware's attack clearly in advance, It is difficult to do.

이에, 기존에는 다양한 형태의 랜섬웨어들의 행위를 분석하여 얻은 위협 행위를 기반으로 랜섬웨어를 진단/차단하기 위한 다양한 차단 기술(보안제품)들이 사용되고 있다.In the past, various blocking technologies (security products) have been used to diagnose / block Ransomware based on the threats obtained by analyzing the behavior of various types of Ransomware.

헌데, 기존의 차단 기술(보안제품)의 경우, 사용자가 직접 보호 대상의 파일 및 이 파일들에 접근을 허용하는 프로세스를 설정(지정)하는 설정 절차를 전제로 한다.However, in the case of the existing blocking technology (security product), it is premised on a setting procedure for setting (specifying) a file to be protected and a process for allowing the user to access the files directly.

즉, 기존의 차단 기술(보안제품)에서는, 사용자가 보호 대상의 파일 및 프로세스를 설정(지정)하지 않으면, 랜섬웨어로부터 보호 받을 수 없다.That is, in the existing blocking technology (security product), unless the user sets (designates) a file and process to be protected, it can not be protected from the Ransomware.

헌데, 사용자가 보호 대상의 파일을 설정(지정)하는 설정 절차를 직접 행해야 하는 기존의 방식은, 사용자에게 매우 번거로울 뿐 아니라, 실제로 랜섬웨어로부터 보호 받을 필요가 없는 파일도 보호 대상으로 설정될 수도 있고 반드시 랜섬웨어로부터의 보호가 필요한 파일임에도 보호 대상으로 설정되지 못하고 누락될 수도 있는 등, 보호 대상 파일 설정의 신뢰도가 최적화되지 못하는 문제점이 있다.However, the conventional method in which a user directly performs a setting procedure for setting (specifying) a file to be protected is very troublesome to the user, and a file that does not need to be protected from the Rangemotor may be set as a protection target There is a problem that the reliability of the protection target file setting can not be optimized because the protection target file can not be set as a protection target even though it is a file that needs to be protected from the RAN firmware.

한편, 랜섬웨어의 주 공격 대상은, 금전 갈취의 목적 달성을 위해, 재 설치 및 다운로드 등이 가능한 프로그램 파일이나 시스템 파일이 아닌, 사용자에게 복원의 의미가 큰 사용자 저작 파일이 주를 이루고 있다.On the other hand, the main target of Ransomware is not a program file or a system file which can be reinstalled and downloaded in order to achieve the purpose of money withdrawal, but a user author file having a great meaning of restoration is mainly made by the user.

이에, 본 발명에서는, 랜섬웨어의 주 공격 대상이 되는 파일을 자동으로 탐지 및 보호 대상으로 설정하여, 별도 사용자에 의한 보호 대상 설정 절차 없이도 랜섬웨어로부터의 공격을 효과적으로 사전 차단할 수 있는 기술(기법)을 제안하고자 한다.Accordingly, the present invention provides a technology that can automatically detect and protect a file to be a primary attack target of Ransomware, effectively prevent an attack from the Ransomware without a protection target setting procedure by a separate user, .

본 발명은 상기한 사정을 감안하여 창출된 것으로서, 본 발명에서 도달하고자 하는 목적은, 악성코드(예: 랜섬웨어)의 주 공격 대상이 되는 파일을 자동으로 탐지 및 보호 대상으로 설정하여, 별도 사용자에 의한 보호 대상 설정 절차 없이도 랜섬웨어로부터의 공격을 효과적으로 사전 차단할 수 있는 보호대상 파일에 대한 악성 차단 시스템 및 악성 차단 방법을 제공하는데 있다.SUMMARY OF THE INVENTION The present invention has been made in view of the above circumstances, and it is an object of the present invention to provide a system and method for automatically detecting and protecting a file to be a main attack target of a malicious code (e.g., A malicious blocking system and a malicious blocking method for a protected file that can effectively prevent an attack from the RANEMWARE without a protection target setting procedure.

상기 목적을 달성하기 위한 본 발명의 제 1 관점에 따른 보호대상 파일에 대한 악성 차단 방법은, 기 정의된 사용자 입력 탐지 룰에 따라 사용자에 의한 입력이 탐지되는 프로세스가 확인되면, 상기 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성하는 로그생성단계; 파일 생성 시, 상기 파일의 생성에 관여한 프로세스가 상기 사용자입력로그가 생성된 이력이 있는 프로세스인지 여부를 확인하는 프로세스확인단계; 및 상기 확인 결과 사용자입력로그가 생성된 이력이 있는 프로세스인 경우, 상기 파일을 기 정의된 악성 차단 룰이 적용되는 보호 대상의 사용자저작파일로 판단하는 보호대상설정단계를 포함한다.According to a first aspect of the present invention, there is provided a malicious blocking method for a file to be protected, the method comprising the steps of: detecting a process of detecting an input by a user according to a predefined user input detection rule; A log generation step of generating a user input log for the identified process; Checking whether a process involved in the generation of the file is a process having a history in which the user input log is generated at the time of file creation; And a protection target setting step of, when the user input log is a process having a history in which the user input log is generated, determining that the file is a user copyright file to be protected to which the predefined malicious blocking rule is applied.

상기 목적을 달성하기 위한 본 발명의 제 2 관점에 따른 보호대상 파일에 대한 악성 차단 시스템은, 기 정의된 사용자 입력 탐지 룰에 따라 사용자에 의한 입력이 탐지되는 프로세스가 확인되면, 상기 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성하는 로그생성부; 파일 생성 시, 상기 파일의 생성에 관여한 프로세스가 상기 사용자입력로그가 생성된 이력이 있는 프로세스인지 여부를 확인하는 프로세스확인부; 및 상기 확인 결과 사용자입력로그가 생성된 이력이 있는 프로세스인 경우, 상기 파일을 기 정의된 악성 차단 룰이 적용되는 보호 대상의 사용자저작파일로 판단하는 보호대상설정부를 포함한다.In order to achieve the above object, according to a second aspect of the present invention, there is provided a malicious blocking system for a file to be protected, wherein when a process of detecting an input by a user is detected according to a predefined user input detection rule, A log generation unit for generating a user input log for the identified process; A process confirmation unit for checking whether a process involved in the generation of the file is a process having a history in which the user input log is generated at the time of file creation; And a protection unit configured to determine that the file is a user file to be protected, to which the malicious blocking rule has been applied, when the user input log is a process having a history in which the user input log is generated.

본 발명의 실시예들에 따르면, 악성코드(예: 랜섬웨어)가 실제 공격 대상으로 삼는 파일을 자동으로 탐지 및 보호 대상으로 설정하여, 별도 사용자에 의한 보호 대상 설정 절차 없이도 랜섬웨어로부터의 공격을 효과적으로 사전 차단할 수 있다.According to the embodiments of the present invention, it is possible to automatically detect and protect a file targeted by an actual malicious code (e.g., Rangomewaware) as an object to be protected, and to perform an attack from the Ransomware It is possible to effectively block it.

이로 인해, 본 발명의 실시예들에 따르면, 사용성을 높이면서, 악성코드(예: 랜섬웨어) 진단 및 차단율을 높일 수 있는 효과를 도출한다.Thus, according to the embodiments of the present invention, it is possible to improve the diagnosis and the blocking rate of a malicious code (e.g., Raman software) while improving usability.

도 1은 본 발명의 바람직한 실시예에 따른 보호대상 파일에 대한 악성 차단 시스템의 구성을 보여주는 구성도이다.
도 2 및 도 3은 본 발명의 바람직한 실시예에 따른 보호대상 파일에 대한 악성 차단 방법을 보여주는 흐름도이다.
FIG. 1 is a block diagram showing the configuration of a malicious blocking system for a file to be protected according to a preferred embodiment of the present invention.
FIG. 2 and FIG. 3 are flowcharts illustrating a malicious blocking method for a file to be protected according to a preferred embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 설명한다.Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings.

먼저, 도 1을 참조하여 본 발명을 설명하면 다음과 같다. 여기서, 도 1은 본 발명의 바람직한 실시예에 따른 보호대상 파일에 대한 악성 차단 시스템의 구성을 보여주고 있다.First, the present invention will be described with reference to FIG. Here, FIG. 1 shows a configuration of a malicious code blocking system for a file to be protected according to a preferred embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 독립된 사용자 디바이스(200)에 탑재되는 것이 바람직하다. 이러한 본 발명의 보호대상 파일에 대한 악성 차단 시스템(100)은, 사용자 디바이스(200)에 설치되는 어플리케이션, 또는 진단 엔진 형태일 수도 있다.As shown in FIG. 1, the malicious blocking system 100 for a file to be protected according to the present invention is preferably installed in an independent user device 200. The malicious blocking system 100 for the protection target file of the present invention may be in the form of an application installed in the user device 200 or a diagnostic engine.

도 1에서는, 설명의 편의를 위해, 사용자 디바이스(200)에서 레지스트리, 파일, 네트워크, 프로세스 관련 행위를 수행하는 주체인 다수의 프로세스(1,2,...N)와, 사용자 디바이스(200, 메모리 공간)에 저장되어 있는 정보(파일) 및 다수의 프로세스(1,2,...N) 사이에서 정보(파일)에 대한 I/O를 제어하는 파일시스템(210), 기 지정된 백업영역(150)의 구성을 도시하였다.1, a plurality of processes (1, 2, ..., N), which are principals for performing registry, file, network, and process related actions in the user device 200, A file system 210 for controlling I / O for information (files) between information (files) stored in a plurality of processes (1, 2, 150 shown in FIG.

도 1에 도시된 바와 같이 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 기 정의된 사용자 입력 탐지 룰에 따라 사용자에 의한 입력이 탐지되는 프로세스가 확인되면, 상기 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성하는 로그생성부(110)와, 파일 생성 시, 상기 파일의 생성에 관여한 프로세스가 상기 사용자입력로그가 생성된 이력이 있는 프로세스인지 여부를 확인하는 프로세스확인부(120)와, 상기 확인 결과 사용자입력로그가 생성된 이력이 있는 프로세스인 경우, 상기 파일을 기 정의된 악성 차단 룰이 적용되는 보호 대상의 사용자저작파일로 판단하는 보호대상설정부(130)를 포함한다.As shown in FIG. 1, in the malicious blocking system 100 for a file to be protected according to the present invention, when a process of detecting an input by a user is detected according to a predefined user input detection rule, A log generation unit 110 for generating a user input log for the identified process, and a process for checking whether the process involved in the generation of the file is a process having a history in which the user input log is generated (120) for judging that the file is a protected user work file to which the predefined malicious blocking rule is applied when the user input log is a history having a generated history, .

더 나아가, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 보호기능수행부(140)를 더 포함할 수 있다.Furthermore, the malicious blocking system 100 for a file to be protected according to the present invention may further include a protection function execution unit 140.

그리고, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 백업영역(150)을 자체적으로 포함하는 구성일 수도 있다.The malicious blocking system 100 for a file to be protected according to the present invention may include a backup area 150 itself.

로그생성부(110)는, 기 정의된 사용자 입력 탐지 룰에 따라 사용자에 의한 입력이 탐지되는 프로세스가 확인되면, 상기 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성한다.The log generation unit 110 generates a user input log for the process in which the user input detection is confirmed when a process of detecting an input by a user is confirmed according to a predefined user input detection rule.

여기서, 사용자 입력 탐지 룰은, 마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 존재하는 윈도우를 탐색하는 과정, 상기 탐색한 윈도우의 프로세스를 인지하는 과정, 상기 탐색한 윈도우에서 마우스 입력 또는 키보드 입력의 입력 이벤트가 발생하면, 상기 인지한 프로세스를 사용자에 의한 입력이 탐지되는 프로세스로 확인하는 과정을 포함할 수 있다.Here, the user input detection rule includes a process of searching for a window in which at least one of a cursor of a mouse input and a caret of a keyboard input is present, a process of recognizing a process of the searched window, The process of recognizing the recognized process as a process of detecting an input by a user may be included.

즉, 사용자 입력 탐지 룰은, 사용자에 의한 입력, 달리 표현하면 사용자 저작 행위로 볼 수 있는 입력 이벤트를 탐지하기 위한 룰이다.That is, the user input detection rule is a rule for detecting an input event which can be regarded as input by a user or otherwise expressed by a user authoring action.

이러한 사용자 입력 탐지 룰에 따라 사용자에 의한 입력이 탐지되는 프로세스를 확인하는 기능은, 별도의 탐지부(미도시)에서 수행될 수도 있고 또는 로그생성부(110)에서 수행될 수도 있다.The function of confirming the process of detecting the input by the user according to the user input detection rule may be performed in a separate detection unit (not shown) or in the log generation unit 110.

이하에서는 설명의 편의 상, 사용자 입력 탐지 룰에 따라 사용자에 의한 입력이 탐지되는 프로세스를 확인하는 기능을, 로그생성부(110)에서 수행하는 것으로 가정하여 설명하겠다.Hereinafter, for convenience of explanation, it is assumed that the log generating unit 110 performs a function of checking a process of detecting an input by a user according to a user input detection rule.

구체적으로 설명하면, 로그생성부(110)는, 사용자 입력 탐지 룰에 따라, 마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 존재하는 윈도우를 탐색하는 동작을 지속적으로 수행한다.Specifically, the log generating unit 110 continuously performs an operation of searching for a window in which at least one of a cursor of a mouse input and a caret of a keyboard input exists in accordance with a user input detection rule do.

마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 존재하는 윈도우란, 사용자에 의한 입력 즉 사용자 저작 행위로 볼 수 있는 입력 이벤트가 발생될 수 있는 액티브 상태의 윈도우(이하, 액티브 윈도우)로 이해할 수 있다.A window in which at least one of a cursor of a mouse input and a caret of a keyboard input exists is a window in which an input event that can be viewed by a user, that is, a user authoring action, Active window).

그리고, 로그생성부(110)는, 사용자 입력 탐지 룰에 따라, 탐색한 윈도우 즉 액티브 윈도우의 프로세스를 인지한다.The log generation unit 110 recognizes the process of the searched window, that is, the active window, according to the user input detection rule.

그리고, 로그생성부(110)는, 탐색한 윈도우 즉 액티브 윈도우에서 마우스 입력 또는 키보드 입력의 입력 이벤트가 발생하면, 금번 액티브 윈도우에 대하여 인지한 프로세스를 사용자에 의한 입력이 탐지되는 프로세스로 확인한다.When an input event of a mouse input or a keyboard input is generated in the searched window, that is, the active window, the log generation unit 110 confirms the process recognized for the currently active window by a process of detecting input by the user.

예를 들어, "작업.doc"이름의 word 파일이 활성화되어 표시되는 화면 상이 마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 위치(존재)하는 경우를 가정할 수 있다.For example, it can be assumed that at least one of a cursor of a mouse input and a caret of a keyboard input is located on a screen on which a word file with the name "job.doc" is activated and displayed .

이처럼 가정하는 경우, 로그생성부(110)는, 사용자 입력 탐지 룰에 따라 "작업.doc"이름의 word 파일이 활성화되어 표시되는 화면을 액티브 윈도우로 탐지하게 될 것이다.In such a case, the log generation unit 110 will detect a screen in which a word file with the name "job.doc" is activated and displayed as an active window according to the user input detection rule.

이에, 로그생성부(110)는, 금번 탐지한 액티브 윈도우의 프로세스로서 word.exe를 인지할 수 있고, 금번 탐지한 액티브 윈도우에서 입력 이벤트가 발생하는지 여부를 모니터링한다.Accordingly, the log generator 110 can recognize word.exe as a process of the active window detected this time, and monitors whether or not an input event is generated in the active window detected this time.

이때 로그생성부(110)는, 마우스나 키보드를 통해 입력되는 입력 이벤트를 감시 및 기록하기 위해 기 설정된 입력 이벤트 감시 함수의 프로시저를 기반으로, 마우스 입력 또는 키보드 입력의 입력 이벤트가 발생하는지 여부를 모니터링할 수 있다.At this time, the log generating unit 110 determines whether an input event of a mouse input or a keyboard input is generated based on a procedure of a preset input event monitoring function to monitor and record an input event input through a mouse or a keyboard Can be monitored.

또는, 로그생성부(110)는, 파일시스템(210)의 모든 스레드에 전달되는 키보드를 후킹(hooking)하도록 기 설정된 후킹 함수의 프로시저를 기반으로, 키보드 입력의 입력 이벤트가 발생하는지 여부를 모니터링할 수 있다.Alternatively, the log generation unit 110 may monitor whether or not an input event of a keyboard input is generated based on a procedure of a predetermined hooking function for hooking a keyboard that is delivered to all threads of the file system 210 can do.

물론, 로그생성부(110)는, 입력 이벤트 감시 함수 또는 후킹 함수의 프로시저를 기반으로 한 모니터링 방식 외에도 다양한 방식을 통해, 금번 탐지한 액티브 윈도우에서 입력 이벤트가 발생하는지 여부를 모니터링할 수 있다.Of course, the log generating unit 110 may monitor whether or not an input event occurs in the active window detected through various methods other than the monitoring method based on the input event monitoring function or the hooking function procedure.

로그생성부(110)는, 금번 탐지한 액티브 윈도우에서 마우스 입력 또는 키보드 입력의 입력 이벤트 즉 사용자 저작 행위로 볼 수 있는 입력 이벤트가 발생하면, 금번 액티브 윈도우에 대하여 인지한 프로세스(word.exe)를 사용자에 의한 입력이 탐지되는 프로세스로 확인할 수 있다.When an input event such as a mouse input or a keyboard input is detected in the currently active window, that is, an input event that can be viewed as a user authoring action, the log generating unit 110 generates a process (word.exe) This can be confirmed by the process in which the input by the user is detected.

전술과 같이, 로그생성부(110)는, 사용자 입력 탐지 룰에 따라, 액티브 윈도우 탐색하는 동작을 지속적으로 수행하여, 사용자에 의한 입력이 탐지되는 프로세스를 확인하는 동작을 지속적으로 반복 수행할 것이다.As described above, according to the user input detection rule, the log generation unit 110 continuously performs an active window search operation and continuously repeats the operation of confirming the process of detecting the input by the user.

이에, 로그생성부(110)는, 사용자 입력 탐지 룰에 따라서 사용자에 의한 입력이 탐지되는 프로세스가 확인되면, 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성할 수 있다.Accordingly, when the process of detecting the input by the user is confirmed according to the user input detection rule, the log generation unit 110 can generate the user input log for the process in which the user input detection is confirmed.

다수의 프로세스(1,2,...N) 중 임의의 프로세스(예: 프로세스1)가 사용자 디바이스(200, 메모리 공간)에 저장되어 있는 정보(파일)에 대한 접근(행위)을 시도하게 되면, 파일시스템(210)은 해당되는 파일에 대하여 프로세스1의 시도된 접근(행위)에 따른 I/O를 처리하게 될 것이다.When an arbitrary process (for example, process 1) of a plurality of processes (1, 2, ... N) attempts to access (act) information (file) stored in the user device 200 , The file system 210 will process the I / O according to the attempted access (action) of Process 1 for the file in question.

이에, 로그생성부(110)는, 파일시스템(210)에서 처리되는 I/O를 확인하여, 전술과 같이 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성할 수 있다.Accordingly, the log generator 110 can check the I / O processed in the file system 210 and generate a user input log for the process in which user input detection is confirmed as described above.

구체적으로, 로그생성부(110)는, 사용자 입력 탐지가 확인된 프로세스에 대하여, 입력 이벤트가 발생된 시간, 프로세스에 대한 프로세스정보, 입력 이벤트가 존재하는 파일정보, 입력 이벤트의 종류 중 적어도 하나로 구성되는 사용자입력로그를 생성할 수 있다.Specifically, the log generating unit 110 is configured to include at least one of a time at which an input event was generated, a process information for a process, file information in which an input event exists, and a type of an input event, A user input log can be generated.

예를 들어, 전술과 같이"작업.doc"이름의 word 파일이 활성화된 액티브 윈도우에서 입력 이벤트(예: write)가 발생하여, 사용자에 의한 입력이 탐지되는 프로세스(word.exe)가 확인된 경우로 가정할 수 있다.For example, if an input event (for example, write) occurs in an active window in which a word file with the name "action.doc" is activated as described above, and a process (word.exe) .

이러한 가정의 경우, 로그생성부(110)는, 금번 사용자 입력 탐지가 확인된 프로세스(word.exe)에 대하여, 입력 이벤트가 발생된 시간(예: 2018년01월12일x시y분10초), 프로세스에 대한 프로세스정보(예: word.exe), 입력 이벤트가 존재하는 파일정보(예: 작업.doc), 입력 이벤트의 종류(예: write)로 구성되는 사용자입력로그를 생성할 수 있다. In this case, the log generation unit 110 generates a log generation process for the process (word.exe) in which the detection of the user input is confirmed, the time at which the input event occurred (for example, ), The process information about the process (for example, word.exe), the file information where the input event exists (for example, job.doc), and the type of input event (for example, write) .

전술의 사용자입력로그의 구성을 보면 알 수 있듯이, 사용자입력로그는, 언제 어떤 프로세스에 의해 어떤 파일에 어떤 입력이 행해졌는지에 대한 로그정보로 이해할 수 있다.As can be seen from the above-described configuration of the user input log, the user input log can be understood as log information about when a certain process has performed input to which file.

이와 같이, 로그생성부(110)는, 사용자 입력 탐지 룰에 따라서 사용자에 의한 입력이 탐지되는 프로세스가 확인될 때마다, 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성할 수 있다. In this manner, the log generating unit 110 can generate a user input log for a process in which user input detection is confirmed whenever a process of detecting an input by a user is confirmed according to a user input detection rule.

이렇게 되면, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 사용자 디바이스(200)에서 사용자에 의한 입력, 달리 표현하면 사용자 저작 행위로 볼 수 있는 입력 이벤트가 탐지될 때마다 생성된 사용자입력로그들을 누적/관리하게 될 것이다.In this case, the malicious blocking system 100 for the protection object file according to the present invention generates the malicious blocking system 100 according to the input by the user in the user device 200, And accumulate / manage user input logs.

프로세스확인부(120)는, 파일 생성 시, 파일의 생성에 관여한 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인지 여부를 확인한다.The process check unit 120 checks whether a process involved in file creation at the time of file creation is a history having a history in which a user input log is generated.

구체적으로, 프로세스확인부(120)는, 파일시스템(210)에서 처리되는 I/O를 확인하여, 새롭게 생성되는 파일이 있는지 여부를 인지하고, 새로운 파일 생성에 관여하는 프로세스를 인지할 수 있다.Specifically, the process check unit 120 can check whether there is a newly generated file by checking the I / O processed in the file system 210, and recognize the process involved in creating a new file.

이에, 프로세스확인부(120)는, 새로운 파일 생성 인지 시, 금번 파일의 생성에 관여하는 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인지 여부를 확인한다.The process check unit 120 checks whether the process involved in generating the new file is a process having a history in which the user input log is generated.

예를 들면, 프로세스확인부(120)는, 기 누적/관리되는 사용자입력로그들 중, 금번 파일의 생성에 관여하는 프로세스와 일치하는 프로세스정보의 사용자입력로그가 존재하면, 금번 파일의 생성에 관여하는 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인 것으로 확인할 수 있다. For example, if there is a user input log of the process information corresponding to the process involved in generation of this file among the pre-accumulated / managed user input logs, the process verification unit 120 may be involved in generation of this file Can be confirmed as a process having a history in which a user input log is generated.

보호대상설정부(130)는, 프로세스확인부(120)의 확인 결과 금번 파일의 생성에 관여하는 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인 경우, 금번 생성된 파일을 기 정의된 악성 차단 룰이 적용되는 보호 대상의 사용자저작파일로 판단한다.When the process related to the generation of the current file is a process having a history in which a user input log is generated as a result of the confirmation by the process verification unit 120, the protector pending unit 130 deletes the generated file from the predefined malicious blocking rule Is determined to be a user copyrighted file to be protected.

사용자입력로그가 생성된 이력이 있는 프로세스란, 사용자에 의한 직접적인 저작 행위(입력)가 행해질 때 관여한 프로세스를 의미한다.A process having a history in which a user input log is generated refers to a process involved when a direct authoring action (input) is performed by the user.

따라서, 파일의 생성에 관여한 프로세스가 사용자입력로그 생성 이력이 있는 프로세스인 경우라면, 금번 생성되는 파일 역시 사용자의 저작 행위(입력)가 언제든지 행해질 수 있는 파일임을 의미한다고 보아도 무방할 것이다.Accordingly, if the process involved in file creation is a process having a history of generating a user input log, the file to be generated at this time may also be a file in which a user's authoring action (input) can be performed at any time.

이에, 보호대상설정부(130)는, 프로세스확인부(120)의 확인 결과 금번 파일의 생성에 관여하는 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인 경우, 금번 생성된 파일을 악성 차단 룰이 적용되는 보호 대상의 사용자저작파일로 자동 판단할 수 있다.If the process related to the generation of the current file is a process having a history in which the user input log is generated as a result of the confirmation of the process verification unit 120, It can be automatically judged as a user's author file of the protected object to be applied.

이렇게 되면, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 파일 생성 시마다, 해당 파일에 대하여 보호 대상의 파일 즉 사용자저작파일로 취급할지 여부를 자동으로 판단할 수 있다. In this case, the malicious code blocking system 100 for a file to be protected according to the present invention can automatically determine whether or not the file is to be treated as a file to be protected, that is, a user authoring file, at the time of file creation.

보호기능수행부(140)는, 사용자저작파일로 판단한 파일에 대하여, 악성 차단 룰에 따라 파일을 보호하는 파일 보호기능을 수행한다.The protection function execution unit 140 performs a file protection function for protecting a file according to a malicious blocking rule on a file determined as a user authoring file.

이때 본 발명에서는 악성 차단 룰에 제한을 두지 않는다.At this time, the present invention does not limit the malicious blocking rule.

다만, 본 발명은, 랜섬웨어와 같이 파일을 임의로 변조시켜 사용 불가능 상태로 만드는 형태의 공격을 감행하는 악성코드로부터의 공격을 차단하여 파일을 보호하는 기술과 관련이 있으므로, 이러한 차단 방식을 따르는 악성 차단 룰이라면 채용 가능할 것이다.However, since the present invention relates to a technology for protecting a file by blocking an attack from malicious code that attempts to attack the form of arbitrarily modifying a file, such as a random software, to an unusable state, If it is a blocking rule, it can be adopted.

즉, 보호기능수행부(140)는, 사용자저작파일로 판단한 파일에 대하여, 접근 시도가 인지되면 악성 차단 룰에 따라 기 검증된 프로세스에 의한 시도인 경우에만 접근을 허용하는 방식으로, 보호 대상의 파일(사용자저작파일)을 악성코드의 공격으로부터 보호할 수 있다.That is, when the access attempt is recognized, the protection function execution unit 140 permits access to the file determined as the user authoring file only in the case of an attempt by the previously verified process according to the malicious blocking rule. Files (user authoring files) can be protected from malicious code attacks.

예를 들어, 본 발명에서는, 전술의 기 누적/관리되는 사용자입력로그를 근거로, 접근 통계를 생성할 수 있다. For example, in the present invention, access statistics can be generated based on the pre-accumulated / managed user input log described above.

즉, 본 발명에서는, 랜섬웨어와 같이 파일을 임의로 변조시켜 사용 불가능 상태로 만드는 형태의 공격을 감행하는 악성코드가 실제로 공격하는 대상이 사용자저작파일임에 기인하여, 사용자저작파일에 대하여 충분한 학습 기간 동안 생성하여 누적한 사용자입력로그를 근거로 접근 통계를 생성하는 것이다.That is, in the present invention, since malicious code that attacks a form such as random software that arbitrarily modifies a file to make it in an unusable state is actually a user's authoring file, a sufficient learning period And generates access statistics based on accumulated user input logs.

그리고, 이렇게 생성된 각 파일(사용자저작파일)에 대한 접근 통계는, 랜섬웨어의 실제 공격 대상이 되는 사용자저작파일에 대하여 이전부터 접근 통계가 생성된 시점까지 정상 프로세스에 의해 정상적으로 수행된 행위들에 대한 통계를 의미한다.The access statistics for each file (user authoring file) generated as described above are the same as those for the normal operation performed by the normal process from the previous time to the generation of the access statistics, Means statistics for.

이러한 경우라면, 보호기능수행부(140)는, 사용자저작파일로 판단한 파일에 대하여, 접근 시도가 인지되면 악성 차단 룰에 따라 접근 통계를 근거로 금번 접근 시도가 정상적인지(접근 통계에 포함된 정상 행위와 일치) 또는 비정상적인지(접근 통계에 포함된 정상 행위와 불일치)를 판단하여 정상적인 접근 시도로 판단되면, 이를 기 검증된 프로세스에 의한 시도로 판단할 수도 있다.In this case, the protection function execution unit 140 determines whether the access attempt is normal based on the access statistics according to the malicious blocking rule when the access attempt is recognized for the file determined as the user authoring file (normal (In agreement with the behavior) or abnormal (ie, inconsistent with the normal behavior included in the access statistics) and judges that the access attempt is a normal access attempt, this may be determined as an attempt by the verified process.

한편, 본 발명의 보다 구체적인 실시예를 설명하면, 보호대상설정부(130)는, 앞서 사용자저작파일로 판단한 파일 중 사용자에 의한 입력 이벤트가 존재하는 파일을, 사용자저작파일로 확정할 수 있다.The guard protector 130 may determine a file having an input event by a user among the files previously determined to be a user authoring file as a user authoring file.

예를 들면, 보호대상설정부(130)는, 기 누적/관리되는 사용자입력로그들 중, 사용자저작파일로 판단한 파일과 일치하는 파일정보의 사용자입력로그가 존재하면, 해당 파일을 사용자에 의한 입력 이벤트가 존재하는 파일로 판단하고, 그 파일을 사용자저작파일로 확정할 수 있다.For example, if there is a user input log of file information matching the file determined as the user authoring file among the pre-accumulated / managed user input logs, the guard protector 130 deletes the file from the input event It is determined that the file exists, and the file can be determined as a user authoring file.

사용자저작파일로 판단한 파일 중 사용자에 의한 입력 이벤트가 존재하는 파일이란, 사용자의 저작 행위(입력)가 실제로 행해진 파일을 의미한다고 보아도 무방할 것이다.The file in which the input event by the user exists among the files judged as the user authoring file may be regarded as a file in which the authoring action (input) of the user is actually performed.

이렇게 되면, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 보호 대상의 파일 즉 사용자저작파일로 판단(취급)하는 파일 중, 확실하게 사용자저작파일로 확정할 파일을 자동으로 구분/확정할 수 있다.In this case, the malicious code blocking system 100 for the protection target file according to the present invention automatically identifies a file to be confirmed as a user authoring file among the files to be protected, that is, a file judged (handled) / Can be confirmed.

보호기능수행부(140)는, 사용자저작파일로 판단한 파일 및 사용자저작파일로 확정한 파일에 대하여, 악성 차단 룰에 따라 서로 다른 차단수준의 파일 보호기능을 수행한다.The protection function execution unit 140 performs file protection functions of the file determined as the user authoring file and the file determined as the user authoring file at different blocking levels according to the malicious blocking rule.

이때 본 발명에서는 악성 차단 룰에 제한을 두지 않는다.At this time, the present invention does not limit the malicious blocking rule.

다만, 본 발명은, 랜섬웨어와 같이 파일을 임의로 변조시켜 사용 불가능 상태로 만드는 형태의 공격을 감행하는 악성코드로부터의 공격을 차단하여 파일을 보호하는 기술과 관련이 있으므로, 이러한 차단 방식을 따르는 악성 차단 룰이라면 채용 가능할 것이다.However, since the present invention relates to a technology for protecting a file by blocking an attack from malicious code that attempts to attack the form of arbitrarily modifying a file, such as a random software, to an unusable state, If it is a blocking rule, it can be adopted.

즉, 보호기능수행부(140)는, 사용자저작파일로 판단한 파일에 대하여, 접근 시도가 인지되면 악성 차단 룰에 따라 기 검증된 프로세스에 의한 시도인 경우에만 접근을 허용하는 방식으로, 사용자저작파일로 판단한 보호 대상의 파일(사용자저작파일)을 악성코드의 공격으로부터 보호할 수 있다.That is, the protection function execution unit 140 permits access only to the file determined as the user authoring file if the access attempt is recognized, if the access attempt is recognized, according to the malicious blocking rule, (User authoring file) judged to be protected can be protected from malicious code attack.

한편, 보호기능수행부(140)는, 사용자저작파일로 확정한 파일에 대하여, 접근 시도가 인지되면 악성 차단 룰에 따라 기 검증된 프로세스의 허용된 행위를 위한 시도인 경우에만 접근을 허용하는 방식으로, 사용자저작파일로 확정한 보호 대상의 파일(사용자저작파일)을 악성코드의 공격으로부터 보호할 수 있다.Meanwhile, the protection function execution unit 140 may be configured to allow access to the file determined as the user authoring file only when the access attempt is recognized, if the attempt is for an allowed action of the previously verified process according to the malicious blocking rule , The protected file (user authoring file) determined by the user authoring file can be protected from the malicious code attack.

즉, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 검증된 프로세스 및 각 검증된 프로세스 별로 허용되는 권한(행위)이, 기 설정되거나 또는 지속적인 학습과정을 거쳐 유동적으로 반영되는 악성 차단 룰을 채용할 수 있다.That is, the malicious blocking system 100 for a file to be protected according to the present invention is a malicious blocking system for a file to be protected, in which a verified process and an authorized right (action) for each verified process are determined by a predetermined or continuous learning process, A blocking rule can be employed.

이에, 보호기능수행부(140)는, 사용자저작파일로 판단한 파일에 대해서는, 접근 시도가 인지되면 악성 차단 룰에 따라 기 검증된 프로세스에 의한 시도인 경우 권한(행위)은 보지 않고 접근을 허용할 수 있다.The protection function execution unit 140 permits access to the file determined as the user authoring file without viewing the permission (activity) in the case of an attempt by the previously verified process according to the malicious blocking rule if an access attempt is recognized .

한편, 보호기능수행부(140)는, 사용자저작파일로 확정한 파일에 대해서는, 접근 시도가 인지되면 악성 차단 룰에 따라 기 검증된 프로세스의 허용된 행위를 위한 시도인 경우에만 접근을 허용할 수 있다.On the other hand, the protection function execution unit 140 may allow access to the file determined by the user authoring file only when the access attempt is recognized, if the attempt is for an allowed action of the previously verified process according to the malicious blocking rule have.

이와 같이, 보호기능수행부(140)는, 사용자의 저작 행위(입력)가 언제든지 행해질 수 있는 파일 즉 사용자저작파일로 판단한 파일과, 사용자의 저작 행위(입력)가 실제로 행해진 파일 즉 사용자저작파일로 확정한 파일에 대해서, 사용자저작파일로 판단한 파일 보다 사용자저작파일로 확정한 파일에 보다 강한 차단수준의 파일 보호기능을 수행할 수 있다.In this way, the protection function execution unit 140 can be realized by a file that can be performed at any time by a user's authoring action (input), that is, a file judged as a user authoring file and a file in which a user's authoring action For a confirmed file, it is possible to perform a file protection function of a stronger blocking level to a file determined as a user authoring file than a file judged as a user authoring file.

이때, 보호기능수행부(140)는, 사용자저작파일로 판단한 파일에 대하여 전술과 같이 검증된 프로세스에 의한 시도인 경우 권한(행위)은 보지 않고 접근을 허용하는 경우, 접근을 허용한 파일을 기 지정된 백업영역(150)으로 백업하는 자동 백업을 수행할 수 있다.At this time, if the protection function execution unit 140 permits access without viewing the authority (activity) in the case of an attempt by the verified process for the file determined as the user authoring file, It is possible to perform automatic backup in which backup is made to the designated backup area 150. [

전술한 바와 같이 본 발명의 보호대상 파일에 대한 악성 차단 시스템은, 악성코드(예: 랜섬웨어)의 주 공격 대상이 되는 사용자저작파일을 판단 및 확정하는 방식으로 보호 대상의 파일을 자동으로 설정하여, 별도 사용자에 의한 보호 대상 설정 절차 없이도 악성코드(예: 랜섬웨어)로부터의 공격을 효과적으로 사전 차단할 수 있는 기술(기법)을 실현하고 있다.As described above, according to the malicious blocking system for the protection target file of the present invention, a file to be protected is automatically set by a method of judging and confirming a user authoring file which is a main attack target of a malicious code (e.g., (Technology) that can effectively prevent an attack from malicious code (eg, RANMAMWARE) without a protection target setting procedure by a separate user.

이렇게 되면, 본 발명에서는, 보호 대상의 파일을 자동으로 설정하는 새로운 방식의 악성 차단 기술을 실현함으로써, 사용성을 높이면서 악성코드(예: 랜섬웨어) 진단 및 차단율을 높일 수 있는 효과를 도출한다.In this case, according to the present invention, a new malicious blocking technique for automatically setting a file to be protected is realized, thereby enhancing the usability and enhancing the diagnosis and the blocking rate of malicious code (for example, Raman software).

이하에서는, 도 2 및 도 3을 참조하여, 본 발명의 바람직한 실시예에 따른 보호대상 파일에 대한 악성 차단 방법을 보다 구체적으로 설명하도록 한다. 여기서, 설명의 편의를 위해 전술한 도 1에 도시된 구성은 해당 참조번호를 언급하여 설명하겠다. Hereinafter, with reference to FIG. 2 and FIG. 3, a malicious blocking method for a file to be protected according to a preferred embodiment of the present invention will be described in more detail. Here, for convenience of description, the components shown in FIG. 1 will be described with reference to corresponding reference numerals.

먼저 도 2를 참조하여, 본 발명의 보호대상 파일에 대한 악성 차단 방법에서 보호 대상의 파일을 자동으로 설정하는 과정을 설명하겠다.First, referring to FIG. 2, a procedure for automatically setting a file to be protected in the malicious blocking method for a file to be protected according to the present invention will be described.

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 사용자 입력 탐지 룰에 따라, 사용자에 의한 입력(입력 이벤트)를 탐지한다(S100).In the malicious blocking method for a file to be protected according to the present invention, the system 100 detects an input (input event) by a user according to a user input detection rule (S100).

구체적으로, 사용자 입력 탐지 룰은, 마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 존재하는 윈도우를 탐색하는 과정, 상기 탐색한 윈도우의 프로세스를 인지하는 과정, 상기 탐색한 윈도우에서 마우스 입력 또는 키보드 입력의 입력 이벤트가 발생하면, 상기 인지한 프로세스를 사용자에 의한 입력이 탐지되는 프로세스로 확인하는 과정을 포함할 수 있다.Specifically, the user input detection rule includes a process of searching for a window in which at least one of a cursor of a mouse input and a caret of a keyboard input is present, a process of recognizing a process of the searched window, And if the input event of the mouse input or the keyboard input occurs in the window, checking the recognized process as a process of detecting the input by the user.

이에, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 사용자 입력 탐지 룰에 따라, 마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 존재하는 윈도우를 탐색하는 동작을 지속적으로 수행한다.Accordingly, in the malicious blocking method for a file to be protected according to the present invention, the system 100 may include at least one of a cursor of a mouse input and a caret of a keyboard input according to a user input detection rule Continue searching the window.

그리고, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 사용자 입력 탐지 룰에 따라, 마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 존재하는 것으로 탐색한 윈도우 즉 액티브 윈도우의 프로세스를 인지한다.In the malicious blocking method for a file to be protected according to the present invention, the system 100 may include at least one of a cursor of a mouse input and a caret of a keyboard input according to a user input detection rule And the process of the active window.

한편, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 탐색한 윈도우 즉 액티브 윈도우에서 마우스 입력 또는 키보드 입력의 입력 이벤트가 발생하면, 사용자에 의한 입력(입력 이벤트)으로 탐지할 수 있다(S100).On the other hand, in the malicious blocking method for a file to be protected according to the present invention, when an input event of a mouse input or a keyboard input is generated in a searched window, that is, an active window, (S100).

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 사용자에 의한 입력(입력 이벤트)을 탐지한 금번 액티브 윈도우에 대하여, 기 인지한 프로세스를 사용자에 의한 입력이 탐지되는 프로세스로 확인한다(S110).In the malicious blocking method for a file to be protected according to the present invention, the system 100 determines whether or not the current active window that detects input (input event) by the user is a process (S110).

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 사용자 입력 탐지 룰에 따라서 사용자에 의한 입력이 탐지되는 프로세스가 확인되면(S110), 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성할 수 있다(S120).In the malicious blocking method for a file to be protected according to the present invention, when a process of detecting an input by a user is confirmed according to a user input detection rule (S110) A user input log may be generated (S120).

구체적으로, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 사용자 입력 탐지가 확인된 프로세스에 대하여, 입력 이벤트가 발생된 시간, 프로세스에 대한 프로세스정보, 입력 이벤트가 존재하는 파일정보, 입력 이벤트의 종류 중 적어도 하나로 구성되는 사용자입력로그를 생성할 수 있다.Specifically, in the malicious blocking method for a file to be protected according to the present invention, the system 100 determines whether the input event has occurred, the process information about the process, The type of the input event, and the type of the input event.

예를 들어, 전술과 같이"작업.doc"이름의 word 파일이 활성화된 액티브 윈도우에서 입력 이벤트(예: write)가 발생하여, 사용자에 의한 입력이 탐지되는 프로세스(word.exe)가 확인된 경우로 가정할 수 있다.For example, if an input event (for example, write) occurs in an active window in which a word file with the name "action.doc" is activated as described above, and a process (word.exe) .

이러한 가정의 경우, 시스템(100)은, 금번 사용자 입력 탐지가 확인된 프로세스(word.exe)에 대하여, 입력 이벤트가 발생된 시간(예: 2018년01월12일x시y분10초), 프로세스에 대한 프로세스정보(예: word.exe), 입력 이벤트가 존재하는 파일정보(예: 작업.doc), 입력 이벤트의 종류(예: write)로 구성되는 사용자입력로그를 생성할 수 있다. For this assumption, the system 100 determines the time at which the input event was generated (e.g., Jan 12, 2018 x y 10 seconds) for the process (word.exe) for which this user input detection was verified, You can create a user input log consisting of process information about the process (for example, word.exe), file information where the input event exists (for example, job.doc), and the type of input event (for example, write).

전술의 사용자입력로그의 구성을 보면 알 수 있듯이, 사용자입력로그는, 언제 어떤 프로세스에 의해 어떤 파일에 어떤 입력이 행해졌는지에 대한 로그정보로 이해할 수 있다.As can be seen from the above-described configuration of the user input log, the user input log can be understood as log information about when a certain process has performed input to which file.

이와 같이, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 사용자 입력 탐지 룰에 따라서 사용자에 의한 입력이 탐지되는 프로세스가 확인될 때마다, 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성할 수 있다. As described above, in the malicious blocking method for the file to be protected according to the present invention, whenever the process of detecting the input by the user is confirmed according to the user input detection rule, A user input log can be generated.

이렇게 되면, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서, 시스템(100)은, 사용자 디바이스(200)에서 사용자에 의한 입력, 달리 표현하면 사용자 저작 행위로 볼 수 있는 입력 이벤트가 탐지될 때마다 생성된 사용자입력로그들을 누적/관리하게 될 것이다.In this case, in the malicious blocking method for the file to be protected according to the present invention, when an input event that can be regarded as input by the user in the user device 200, The generated user input logs will be accumulated / managed.

전술의 사용자입력로그 생성 과정과는 별개로, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 파일시스템(210)에서 처리되는 I/O를 확인하여, 새롭게 생성되는 파일이 있는지 여부를 인지한다(S130).In addition to the above-described user input log generation process, in the malicious blocking method for the protection target file according to the present invention, the system 100 checks the I / O processed in the file system 210, (Step S130).

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 새로운 파일 생성 인지 시(S130 Yes), 금번 파일의 생성에 관여하는 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인지 여부를 확인한다(S140).In the malicious blocking method for a file to be protected according to the present invention, when the system 100 determines that a new file is created (Yes in S130), the system 100 determines whether the process involved in generating the current file is a history (S140).

예를 들면, 시스템(100)은, 기 누적/관리되는 사용자입력로그들 중, 금번 파일의 생성에 관여하는 프로세스와 일치하는 프로세스정보의 사용자입력로그가 존재하면, 금번 파일의 생성에 관여하는 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인 것으로 확인할 수 있다. For example, when there is a user input log of process information matching the process involved in generation of this file among the user input logs accumulated / managed in the system 100, the system 100 executes a process Can be confirmed as a process having a history in which a user input log is generated.

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, S140단계의 확인 결과 금번 파일의 생성에 관여하는 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인 경우(S140 Yes), 금번 생성된 파일을 기 정의된 악성 차단 룰이 적용되는 보호 대상의 사용자저작파일로 판단한다(S150).In the malicious blocking method for a file to be protected according to the present invention, if the process involved in generating the current file is a history having a history in which a user input log is generated (Yes in S140) The created file is judged as a protection target user authoring file to which the previously defined malicious blocking rule is applied (S150).

즉, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 금번 파일의 생성에 관여하는 프로세스가 사용자입력로그가 생성된 이력이 있는 프로세스인 경우(S140 Yes), 금번 생성되는 파일 역시 사용자의 저작 행위(입력)가 언제든지 행해질 수 있는 파일로 보고, 금번 생성된 파일을 보호 대상의 사용자저작파일로 판단하는 것이다(S150).That is, in the malicious blocking method for the file to be protected according to the present invention, when the process involved in the generation of this file is a process having a history in which a user input log is generated (Yes in S140) The file is also regarded as a file in which a user's authoring action (input) can be performed at any time, and the generated file is determined as a user's authoring file to be protected (S150).

이렇게 되면, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 파일 생성 시마다, 해당 파일에 대하여 보호 대상의 파일 즉 사용자저작파일로 취급할지 여부를 자동으로 판단할 수 있다.In this case, the malicious code blocking system 100 for a file to be protected according to the present invention can automatically determine whether or not the file is to be treated as a file to be protected, that is, a user authoring file, at the time of file creation.

더 나아가, 일 실시예에 따르면, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 앞서 사용자저작파일로 판단한 파일 중 사용자에 의한 입력 이벤트가 존재하는 파일이 있는지 확인하여(S160), 입력 이벤트가 존재하는 파일을 사용자저작파일로 확정할 수 있다(S170).Furthermore, according to one embodiment, in the malicious blocking method for a file to be protected according to the present invention, the system 100 determines whether there is a file in which there is an input event by a user among the files previously determined as the user authoring file S160), the file in which the input event exists can be determined as a user authoring file (S170).

예를 들면, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 기 누적/관리되는 사용자입력로그들 중, 사용자저작파일로 판단한 파일과 일치하는 파일정보의 사용자입력로그가 존재하면, 해당 파일을 사용자에 의한 입력 이벤트가 존재하는 파일로 판단하고, 그 파일을 사용자저작파일로 확정할 수 있다.For example, in the malicious blocking method for a file to be protected according to the present invention, the system 100 may include a user input log of file information matching a file determined as a user authoring file among pre-accumulated / If it exists, the file can be determined as a file in which an input event by the user exists, and the file can be confirmed as a user authoring file.

즉, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 앞서 사용자저작파일로 판단한 파일 중 사용자에 의한 입력 이벤트가 존재하는 파일을, 사용자의 저작 행위(입력)가 실제로 행해진 파일로 보고, 보호 대상의 사용자저작파일로 확정하는 것이다(S170)That is, in the malicious blocking method for a file to be protected according to the present invention, the system 100 can prevent a file having an input event by a user from among files determined as a user authoring file in advance, File, and confirms it as a user copyright file to be protected (S170)

이렇게 되면, 본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 보호 대상의 파일 즉 사용자저작파일로 판단(취급)하는 파일 중, 확실하게 사용자저작파일로 확정할 파일을 자동으로 구분/확정할 수 있다.In this case, the malicious code blocking system 100 for the protection target file according to the present invention automatically identifies a file to be confirmed as a user authoring file among the files to be protected, that is, a file judged (handled) / Can be confirmed.

본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 시스템이 종료되지 않는 한(S180 No), 전술의 사용자입력로그 생성 과정(S100~S120) 및 전술의 보호 대상 파일(판단된 사용자저작파일, 확정된 사용자저작파일) 자동 설정 과정(S130~S170)를 반복해서 수행할 것이다.The malicious blocking system 100 for a file to be protected according to the present invention is a system in which the malicious blocking system 100 for a file to be protected stores the above described user input log generation process (S100 to S120) and the aforementioned protection target file The authoring file, and the determined user authoring file), the automatic setting process (S130 to S170) will be repeated.

다음 도 3을 참조하여, 본 발명의 보호대상 파일에 대한 악성 차단 방법에서 보호 대상의 파일에 대해서 파일 보호기능을 수행하는 과정을 설명하겠다.Referring to FIG. 3, a process of performing a file protection function on a file to be protected in the malicious blocking method for the protection target file according to the present invention will be described.

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 악성 차단 룰에 제한을 두지 않는다.In the malicious blocking method for the file to be protected according to the present invention, the system 100 does not limit the malicious blocking rule.

다만, 본 발명은, 랜섬웨어와 같이 파일을 임의로 변조시켜 사용 불가능 상태로 만드는 형태의 공격을 감행하는 악성코드로부터의 공격을 차단하여 파일을 보호하는 기술과 관련이 있으므로, 이러한 차단 방식을 따르는 악성 차단 룰이라면 채용 가능할 것이다.However, since the present invention relates to a technology for protecting a file by blocking an attack from malicious code that attempts to attack the form of arbitrarily modifying a file, such as a random software, to an unusable state, If it is a blocking rule, it can be adopted.

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 파일시스템(210)에서 처리되는 I/O를 확인하여, 파일로의 접근 시도를 인지한다(S200).In the malicious blocking method for a file to be protected according to the present invention, the system 100 recognizes an access attempt to a file by checking the I / O processed in the file system 210 (S200).

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 파일로의 접근 시도가 인지되면, 해당 접근 시도가 도 2에서 자동 설정(판단 또는 확정)된 사용자저작파일 즉 보호 대상의 파일인지 여부를 확인한다(S210).In the malicious blocking method for a file to be protected according to the present invention, when an access attempt to a file is recognized, the system 100 determines whether the access attempt is a user authoring file automatically determined (determined or determined) It is checked whether the file is a file (S210).

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 보호 대상의 파일(사용자저작파일)이 아닌 경우라면(S210 No), 금번 접근 시도에 대하여 접근을 허용하거나 또는 별도의 정책에 따라 접근을 제한하는 등, 해당 경우에 맞게 설정된 방식으로 접근을 제어할 것이다(S290).In the malicious blocking method for a file to be protected according to the present invention, if the system 100 is not a file to be protected (user authoring file) (S210 No), the system 100 permits access to the access attempt, (S290). In this case, access is controlled in a manner set according to the case.

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 보호 대상의 파일(사용자저작파일)인 경우(S210 Yes), 금번 파일이 사용자저작파일로 판단된 파일인지 여부를 확인한다(S220).In the malicious blocking method for a file to be protected according to the present invention, the system 100 determines whether the current file is a file to be protected (user authoring file) (S210 Yes) or not (S220).

본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 사용자저작파일로 판단된 파일인 경우(S220 Yes), 악성 차단 룰에 따라 기 검증된 프로세스에 의한 시도인 경우(S230 Yes) 권한(행위)은 보지 않고 접근을 허용하고 파일을 백업영역(150)에 자동 백업할 수 있다(S240).In the malicious blocking method for a file to be protected according to the present invention, when the file is judged as a user authoring file (S220 Yes), the system 100 determines whether the malicious blocking rule is an attempt by a previously verified process (S230 Yes) The user can access the file without checking the authority (action) and automatically back up the file to the backup area 150 (S240).

즉, 시스템(100)은, 사용자저작파일로 판단한 파일에 대하여, 접근 시도가 인지되면 악성 차단 룰에 따라 기 검증된 프로세스에 의한 시도인 경우에만 접근을 허용하는 방식으로, 사용자저작파일로 판단한 보호 대상의 파일(사용자저작파일)을 악성코드의 공격으로부터 보호할 수 있다.That is, if the access attempt is recognized for the file determined as the user's authoring file, the system 100 can protect the file judged as the user's authoring file in such a manner that access is permitted only in the case of an attempt by the pre- The target file (user authoring file) can be protected from malicious code attack.

물론, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 악성 차단 룰에 따라 검증되지 않은 프로세스에 의한 시도인 경우 접근을 차단할 것이다(S280).Of course, in the malicious blocking method for the file to be protected according to the present invention, the system 100 will block access in the case of an attempt by an unverified process according to the malicious blocking rule (S280).

한편, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 사용자저작파일로 확정된 파일인 경우(S220 No), 악성 차단 룰에 따라 기 검증된 프로세스의 허용된 행위를 위한 시도인 경우에만(S260) 접근을 허용할 수 있다(S270).Meanwhile, in the malicious blocking method for a file to be protected according to the present invention, when the system 100 determines that the file is the user's authoring file (S220 No) (S260) only when it is an attempt (S270).

즉, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 검증된 프로세스 및 각 검증된 프로세스 별로 허용되는 권한(행위)이, 기 설정되거나 또는 지속적인 학습과정을 거쳐 유동적으로 반영되는 악성 차단 룰을 채용할 수 있다.That is, in the malicious blocking method for the file to be protected according to the present invention, the system 100 can reflect the validated process and the authorized rights (activity) for each verified process through the predetermined or continuous learning process The malicious blocking rule can be adopted.

이에, 시스템(100)은, 사용자저작파일로 확정한 파일에 대해서, 접근 시도가 인지되면 악성 차단 룰에 따라 기 검증된 프로세스의 허용된 행위를 위한 시도인 경우에만 접근을 허용하는 방식으로, 사용자저작파일로 확정한 보호 대상의 파일(사용자저작파일)을 악성코드의 공격으로부터 보호할 수 있다.If the access attempt is recognized for the file determined as the user authoring file, the system 100 may allow the user 100 to access the file only if the access attempt is for an allowed action of the previously verified process according to the malicious blocking rule. The protected file (user authoring file) determined by the authoring file can be protected from the malicious code attack.

물론, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 악성 차단 룰에 따라 검증되지 않은 프로세스 또는 허용되지 않은 권한(행위)의 시도인 경우 접근을 차단할 것이다(S280).Of course, in the malicious blocking method for the file to be protected according to the present invention, the system 100 will block the access in the case of an unauthenticated process or an unauthorized authorization (action) according to the malicious blocking rule (S280).

이와 같이, 본 발명에 따른 보호대상 파일에 대한 악성 차단 방법에서 시스템(100)은, 사용자의 저작 행위(입력)가 언제든지 행해질 수 있는 파일 즉 사용자저작파일로 판단한 파일과, 사용자의 저작 행위(입력)가 실제로 행해진 파일 즉 사용자저작파일로 확정한 파일에 대해서, 사용자저작파일로 판단한 파일 보다 사용자저작파일로 확정한 파일에 보다 강한 차단수준의 파일 보호기능을 수행할 수 있다.As described above, in the malicious blocking method for a file to be protected according to the present invention, the system 100 can be configured to include a file that a user's authoring action (input) can be performed at any time, ) Is actually performed, that is, a file determined as a user authoring file, can perform a file protection function of a stronger blocking level to a file determined as a user authoring file than a file judged as a user authoring file.

본 발명에 따른 보호대상 파일에 대한 악성 차단 시스템(100)은, 시스템이 종료되지 않는 한(S180 No), 전술의 파일 보호기능을 수행하는 과정(S200~S290)을 반복해서 수행할 것이다. The malicious blocking system 100 for the file to be protected according to the present invention will repeatedly execute the above-described process of performing the file protection function (S200 to S290) unless the system is terminated (S180 No).

이상에서 설명한 바와 같이, 본 발명의 보호대상 파일에 대한 악성 차단 방법에 따르면, 악성코드(예: 랜섬웨어)의 주 공격 대상이 되는 사용자저작파일을 판단 및 확정하는 방식으로 보호 대상의 파일을 자동으로 설정하여, 별도 사용자에 의한 보호 대상 설정 절차 없이도 악성코드(예: 랜섬웨어)로부터의 공격을 효과적으로 사전 차단할 수 있는 기술(기법)을 실현하고 있다.As described above, according to the malicious blocking method for the file to be protected according to the present invention, the file to be protected is automatically detected by the method of determining and confirming the user's authoring file that is the main attack target of the malicious code , And realizes a technique (technique) that can effectively prevent an attack from malicious code (for example, Raman software) without a protection target setting procedure by a separate user.

이렇게 되면, 본 발명에서는, 보호 대상의 파일을 자동으로 설정하는 새로운 방식의 악성 차단 기술을 실현함으로써, 사용성을 높이면서 악성코드(예: 랜섬웨어) 진단 및 차단율을 높일 수 있는 효과를 도출한다.In this case, according to the present invention, a new malicious blocking technique for automatically setting a file to be protected is realized, thereby enhancing the usability and enhancing the diagnosis and the blocking rate of malicious code (for example, Raman software).

본 발명의 실시예에 따르는 보호대상 파일에 대한 악성 차단 방법은, 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.A malicious blocking method for a file to be protected according to an embodiment of the present invention may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions recorded on the medium may be those specially designed and constructed for the present invention or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. As described above, the present invention has been described with reference to particular embodiments, such as specific elements, and specific embodiments and drawings. However, it should be understood that the present invention is not limited to the above- And various modifications and changes may be made thereto by those skilled in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be construed as being limited to the embodiments described, and all of the equivalents or equivalents of the claims, as well as the following claims, belong to the scope of the present invention .

100 : 보호대상 파일에 대한 악성 차단 시스템
110 : 로그생성부 120 : 프로세스확인부
130 : 보호대상설정부 140 : 보호기능수행부
150 : 백업영역
200 : 사용자 디바이스
210 : 파일시스템
100: Malicious blocking system for protected files
110: log generation unit 120: process verification unit
130: Protector Standing Government 140: Protection Function Department
150: Backup area
200: User device
210: File system

Claims (13)

기 정의된 사용자 입력 탐지 룰에 따라 사용자에 의한 입력이 탐지되는 프로세스가 확인되면, 상기 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성하는 로그생성단계;
파일 생성 시, 상기 파일의 생성에 관여한 프로세스가 상기 사용자입력로그가 생성된 이력이 있는 프로세스인지 여부를 확인하는 프로세스확인단계; 및
상기 확인 결과 사용자입력로그가 생성된 이력이 있는 프로세스인 경우, 상기 파일을 기 정의된 악성 차단 룰이 적용되는 보호 대상의 사용자저작파일로 판단하는 보호대상설정단계를 포함하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 방법.
A log generation step of generating a user input log for a process in which the user input detection is confirmed if a process of detecting an input by a user is confirmed according to a predefined user input detection rule;
Checking whether a process involved in the generation of the file is a process having a history in which the user input log is generated at the time of file creation; And
And a protection target setting step of, when the user input log is a process having a generated history, determining that the file is a user copyright file to be protected, to which a predefined malicious blocking rule is applied, How to block malicious files.
제 1 항에 있어서,
상기 사용자 입력 탐지 룰은,
마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 존재하는 윈도우를 탐색하는 과정,
상기 탐색한 윈도우의 프로세스를 인지하는 과정,
상기 탐색한 윈도우에서 마우스 입력 또는 키보드 입력의 입력 이벤트가 발생하면, 상기 인지한 프로세스를 사용자에 의한 입력이 탐지되는 프로세스로 확인하는 과정을 포함하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 방법.
The method according to claim 1,
The user input detection rule includes:
Searching for a window in which at least one of a cursor of a mouse input and a caret of a keyboard input is present,
Recognizing a process of the searched window,
And confirming the recognized process as a process of detecting an input by a user when an input event of a mouse input or a keyboard input is generated in the searched window.
제 2 항에 있어서,
상기 로그생성단계는,
상기 사용자 입력 탐지가 확인된 프로세스에 대하여, 상기 입력 이벤트가 발생된 시간, 상기 프로세스에 대한 프로세스정보, 상기 입력 이벤트가 존재하는 파일정보, 상기 입력 이벤트의 종류 중 적어도 하나로 구성되는 사용자입력로그를 생성하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 방법.
3. The method of claim 2,
The log generation step may include:
Generating a user input log including at least one of a time at which the input event was generated, process information for the process, file information in which the input event exists, and a type of the input event for the process in which the user input detection is confirmed Wherein the malicious file is a file to be protected.
제 1 항에 있어서,
상기 보호대상설정단계는,
상기 사용자저작파일로 판단한 파일 중 사용자에 의한 입력 이벤트가 존재하는 파일을, 사용자저작파일로 확정하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 방법.
The method according to claim 1,
Wherein the protection target setting step comprises:
Wherein a file having an input event by a user among files determined as the user authoring file is determined as a user authoring file.
제 4 항에 있어서,
상기 사용자저작파일로 판단한 파일 및 상기 사용자저작파일로 확정한 파일에 대하여, 상기 악성 차단 룰에 따라 서로 다른 차단수준의 파일 보호기능을 수행하는 보호기능수행단계를 더 포함하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 방법.
5. The method of claim 4,
Further comprising the step of performing a protection function of performing a file protection function of a different blocking level according to the malicious blocking rule on the file determined as the user authoring file and the file determined as the user authoring file, How to block malicious files.
제 5 항에 있어서,
상기 보호기능수행단계는,
상기 사용자저작파일로 판단한 파일에 대해서는, 접근 시도가 인지되면 상기 악성 차단 룰에 따라 기 검증된 프로세스에 의한 시도인 경우에만 접근을 허용하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 방법.
6. The method of claim 5,
Wherein the performing of the protection function comprises:
And accessing the file determined as the user authoring file only when the access attempt is recognized, if the attempt is based on the malicious blocking rule.
제 5 항에 있어서,
상기 보호기능수행단계는,
상기 사용자저작파일로 확정한 파일에 대해서는, 접근 시도가 인지되면 상기 악성 차단 룰에 따라 기 검증된 프로세스의 허용된 행위를 위한 시도인 경우에만 접근을 허용하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 방법.
6. The method of claim 5,
Wherein the performing of the protection function comprises:
Wherein when the access attempt is recognized for the file determined as the user authoring file, the access is allowed only when the attempt is for an allowed action of the previously verified process according to the malicious blocking rule. How to block.
제 7 항에 있어서,
상기 보호기능수행단계는,
상기 사용자저작파일로 판단한 파일에 대하여 상기 접근을 허용하는 경우, 상기 접근을 허용한 파일을 기 지정된 백업영역으로 백업하는 자동 백업을 수행하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 방법.
8. The method of claim 7,
Wherein the performing of the protection function comprises:
If the access permitted to the file determined as the user authoring file, performs the automatic backup in which the file permitted to access is backed up to the pre-designated backup area.
기 정의된 사용자 입력 탐지 룰에 따라 사용자에 의한 입력이 탐지되는 프로세스가 확인되면, 상기 사용자 입력 탐지가 확인된 프로세스에 대하여 사용자입력로그를 생성하는 로그생성부;
파일 생성 시, 상기 파일의 생성에 관여한 프로세스가 상기 사용자입력로그가 생성된 이력이 있는 프로세스인지 여부를 확인하는 프로세스확인부; 및
상기 확인 결과 사용자입력로그가 생성된 이력이 있는 프로세스인 경우, 상기 파일을 기 정의된 악성 차단 룰이 적용되는 보호 대상의 사용자저작파일로 판단하는 보호대상설정부를 포함하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 시스템.
A log generating unit for generating a user input log for a process in which the user input detection is confirmed if a process of detecting an input by a user is identified according to a predefined user input detection rule;
A process confirmation unit for checking whether a process involved in the generation of the file is a process having a history in which the user input log is generated at the time of file creation; And
And a protection unit configured to determine that the file is a user copyright file to be protected, to which the predefined malicious blocking rule is applied, when the user input log is a process having a generated history, Malicious blocking system for.
제 9 항에 있어서,
상기 사용자 입력 탐지 룰은,
마우스 입력의 커서(cursor) 및 키보드 입력의 캐럿(caret) 중 적어도 하나가 존재하는 윈도우를 탐색하는 과정,
상기 탐색한 윈도우의 프로세스를 인지하는 과정,
상기 탐색한 윈도우에서 마우스 입력 또는 키보드 입력의 입력 이벤트가 발생하면, 상기 인지한 프로세스를 사용자에 의한 입력이 탐지되는 프로세스로 확인하는 과정을 포함하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 시스템.
10. The method of claim 9,
The user input detection rule includes:
Searching for a window in which at least one of a cursor of a mouse input and a caret of a keyboard input is present,
Recognizing a process of the searched window,
And checking the recognized process by a process of detecting an input by a user when an input event of a mouse input or a keyboard input occurs in the searched window.
제 9 항에 있어서,
상기 보호대상설정부는,
상기 사용자저작파일로 판단한 파일 중 사용자에 의한 입력 이벤트가 존재하는 파일을, 사용자저작파일로 확정하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 시스템.
10. The method of claim 9,
Wherein the protection-
Wherein a file having an input event by a user among the files determined as the user authoring file is determined as a user authoring file.
제 11 항에 있어서,
상기 사용자저작파일로 판단한 파일 및 상기 사용자저작파일로 확정한 파일에 대하여, 상기 악성 차단 룰에 따라 서로 다른 차단수준의 파일 보호기능을 수행하는 보호기능수행부를 더 포함하는 것을 특징으로 하는 보호대상 파일에 대한 악성 차단 시스템.
12. The method of claim 11,
Further comprising a protection function execution unit for performing a file protection function of a different blocking level according to the malicious blocking rule on the file determined as the user authoring file and the file determined as the user authoring file, Malicious blocking system for.
제 1 항 내지 제 8 항 중 어느 한 항의 방법을 수행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.9. A computer-readable recording medium recording a program for performing the method of any one of claims 1 to 8.
KR1020180026397A 2018-03-06 2018-03-06 Malware preventing system and method for object file to protect KR101986638B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180026397A KR101986638B1 (en) 2018-03-06 2018-03-06 Malware preventing system and method for object file to protect

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180026397A KR101986638B1 (en) 2018-03-06 2018-03-06 Malware preventing system and method for object file to protect

Publications (1)

Publication Number Publication Date
KR101986638B1 true KR101986638B1 (en) 2019-06-07

Family

ID=66849866

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180026397A KR101986638B1 (en) 2018-03-06 2018-03-06 Malware preventing system and method for object file to protect

Country Status (1)

Country Link
KR (1) KR101986638B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111797387A (en) * 2020-06-24 2020-10-20 北京三快在线科技有限公司 Method and device for intercepting plug-in

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060046539A (en) * 2004-09-09 2006-05-17 마이크로소프트 코포레이션 Method, system and apparatus for creating an archive routine for protecting data in a data protection system
KR20110064387A (en) * 2009-12-08 2011-06-15 단국대학교 산학협력단 Method and system reverse-using malicious code for preventing file-seizure, and recording medium
KR20170088160A (en) * 2016-01-22 2017-08-01 주식회사 안랩 File protection system and file protection method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060046539A (en) * 2004-09-09 2006-05-17 마이크로소프트 코포레이션 Method, system and apparatus for creating an archive routine for protecting data in a data protection system
KR20110064387A (en) * 2009-12-08 2011-06-15 단국대학교 산학협력단 Method and system reverse-using malicious code for preventing file-seizure, and recording medium
KR20170088160A (en) * 2016-01-22 2017-08-01 주식회사 안랩 File protection system and file protection method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
윤정무외 2인, '파일 I/O Interval을 이용한 랜섬웨어 공격 차단 방법론', 정보보호학회논문지 26(3), 2016.06. *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111797387A (en) * 2020-06-24 2020-10-20 北京三快在线科技有限公司 Method and device for intercepting plug-in
CN111797387B (en) * 2020-06-24 2024-02-23 北京三快在线科技有限公司 Method and device for intercepting plug-in

Similar Documents

Publication Publication Date Title
US11586730B2 (en) Ransomware attack monitoring
JP5054768B2 (en) Method and apparatus for intrusion detection
KR102307534B1 (en) Systems and methods for tracking malicious behavior across multiple software entities
KR101685014B1 (en) Detection and blocking method of ransome ware of computer system and device thereof
KR101828600B1 (en) Context-aware ransomware detection
KR101995944B1 (en) Method for preventing randomware
WO2021046811A1 (en) Attack behavior determination method and apparatus, and computer storage medium
KR20190080591A (en) Behavior based real- time access control system and control method
CN103970540A (en) Method and device for safely calling key function
KR101986638B1 (en) Malware preventing system and method for object file to protect
KR101500512B1 (en) Device and method for securing computer
CN101006432A (en) Computer data protection method
CN109791588B (en) Mitigating malicious actions associated with graphical user interface elements
KR102034678B1 (en) Malware preventing system anf method based on access controlling for data file
KR100745640B1 (en) Method for protecting kernel memory and apparatus thereof
KR100745639B1 (en) Method for protecting file system and registry and apparatus thereof
KR102036847B1 (en) Method of profiling runtime feature
KR100666562B1 (en) Method for protecting kernel driver and process
CN113672925B (en) Method and device for preventing lux software attack, storage medium and electronic equipment
KR100959638B1 (en) Method for preventing key input from hacking, computer-readable storage medium recorded with program for preventing key input from hacking
KR102463814B1 (en) Method and apparatus for monitoring server
KR102086375B1 (en) System and method for real time prevention and post recovery for malicious software
WO2018230471A1 (en) Virus monitoring program
KR102623168B1 (en) Data protection system
CN118503970B (en) Industrial control host Trojan horse detection method and system based on behavior characteristics

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant