KR101828600B1 - Context-aware ransomware detection - Google Patents

Context-aware ransomware detection Download PDF

Info

Publication number
KR101828600B1
KR101828600B1 KR1020170029539A KR20170029539A KR101828600B1 KR 101828600 B1 KR101828600 B1 KR 101828600B1 KR 1020170029539 A KR1020170029539 A KR 1020170029539A KR 20170029539 A KR20170029539 A KR 20170029539A KR 101828600 B1 KR101828600 B1 KR 101828600B1
Authority
KR
South Korea
Prior art keywords
file
action
target file
remote
change
Prior art date
Application number
KR1020170029539A
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 KR1020170029539A priority Critical patent/KR101828600B1/en
Priority to PCT/KR2018/002758 priority patent/WO2018164503A1/en
Application granted granted Critical
Publication of KR101828600B1 publication Critical patent/KR101828600B1/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
    • G06F21/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
    • 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/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • 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/602Providing cryptographic facilities or services

Abstract

According to the present invention, a system protection method includes the steps of: storing logs of proactive actions of a process executed on a system; sensing the process attempting to adjust the target files; determining whether the target file adjustment of the process corresponds to a suspected action at least partially based on the logs of the proactive actions; backing up the target files when the target file adjustment is determined to correspond to a suspected action; determining whether the process corresponds to a malicious code; stopping the execution of the process when the process is determined to correspond to a malicious code; recovering the target files backed up due to the process; and recovering the proactive actions of the process based on the logs of the proactive actions.

Description

상황 인식 기반의 랜섬웨어 탐지{CONTEXT-AWARE RANSOMWARE DETECTION}Context-aware Ransomware Detection {CONTEXT-AWARE RANSOMWARE DETECTION}

본 명세서는 상황 인식 기반의 랜섬웨어 탐지에 대한 것이다.This specification is for context awareness based Ransomware detection.

악성 프로그램 중에는 파일 또는 정보를 삭제하거나 변경하여 전자 장치의 사용자 또는 조직에 피해를 입히는 것을 직접적인 목표로 삼는 것이 있으나, 최근 악성 프로그램 중에는 시스템의 파일을 암호화해 버리고, 공격자가 피해자로부터 대가를 받은 후에 이를 복호화하는 형태가 존재한다.Among malicious programs, there is a direct aim of damaging the user or organization of the electronic device by deleting or changing the file or information. However, in recent malicious programs, the file of the system is encrypted, and after the attacker receives the payment from the victim There is a form to decode.

알려진 악성 프로그램에 대한 정보를 기초로 구체적인 악성 프로그램을 탐지하는 방식은 알려지지 않은 악성 프로그램에 의한 공격에 매우 취약하다. 또한 피해를 최소화하기 위하여 미끼 파일, 샌드박스, 시그니처 기반 등 다양한 방안들이 제시되고 있다. Detection of specific malicious programs based on information on known malicious programs is very vulnerable to attacks by unknown malicious programs. In order to minimize the damage, various methods such as bait file, sandbox, signature base, etc. are suggested.

본 명세서에서는 컴퓨팅 장치에 설치된 프로그램이 악성 코드인지 여부를 판단하고, 악성 코드로 판단된 경우 이를 피해 없이 복원할 수 있는 방법을 개시한다.In this specification, it is determined whether a program installed in a computing device is a malicious code, and if it is determined that the program is malicious code, the method can be restored without hindering it.

일 실시 형태로 시스템 보호 방법이 개시된다. 상기 시스템 보호 방법은 시스템 상 실행되는 프로세스의 사전 행위의 로그를 저장하는 단계; 상기 프로세스가 대상 파일을 변경하려는 것을 감지하는 단계; 상기 사전 행위의 로그에 적어도 일부 기초하여 상기 프로세스의 상기 대상 파일 변경이 의심 행동에 해당하는지 여부를 판단하는 단계; 상기 대상 파일의 변경이 의심 행동에 해당하는 것으로 판단되는 경우, 상기 대상 파일을 백업하는 단계; 상기 프로세스가 악성 코드에 해당하는지 여부를 판단하는 단계; 상기 프로세스가 악성 코드에 해당하는 것으로 판단되는 경우, 상기 프로세스의 수행을 중단시키는 단계; 상기 프로세스를 원인으로 백업된 상기 대상 파일을 복원하는 단계; 및 상기 사전 행위의 로그를 바탕으로 상기 프로세스의 상기 사전 행위를 복원시키는 단계를 포함한다.A method of protecting a system in one embodiment is disclosed. The system protection method includes the steps of: storing a log of a preliminary action of a process executed on the system; Detecting that the process is attempting to change a target file; Determining whether the subject file change of the process corresponds to a suspicious behavior based at least in part on a log of the dictionary action; Backing up the target file if it is determined that the change of the target file corresponds to a suspicious behavior; Determining whether the process corresponds to a malicious code; Stopping the execution of the process when it is determined that the process corresponds to a malicious code; Restoring the target file backed up due to the process; And restoring the proactive behavior of the process based on the log of the proactive act.

상기 일 실시 형태 또는 그 밖의 실시 형태들은 다음과 같은 특징들 중 어느 하나를 포함할 수 있다.The above or other embodiments may include any one of the following features.

상기 의심 행동에 해당하는지 여부는 상기 사전 행위의 로그에 파일 확장자 변경, 연결되어 실행될 프로그램의 설정, 암호화 표시 파일 이름 변경, 상기 프로세스의 자기 복제 파일 생성, 그리고 결제 안내를 포함하는 파일 생성 행위 중 적어도 하나가 포함되는지 여부에 기초하여 판단될 수 있다. 또한, 상기 프로세스가 악성 코드에 해당하는지 여부는 상기 대상 파일에 대하여 상기 프로세스에 의한 파일 헤더 내용, 파일 헤더 구조, 본문(body)의 내용, 본문의 크기, 본문의 엔트로피(entropy), 파일 이름 및 파일 업데이트 시간을 포함하는 이상 변경 사항(abnormal changes) 중 적어도 하나에 기초하여 판단될 수 있다. 또한, 상기 프로세스가 악성 코드에 해당하는지 여부는 상기 프로세스에 의한 상기 이상 변경 사항이 특정 개수 이상의 파일에 대하여 발생한 것에 기초하여 판단될 수 있다.Whether or not the suspicious behavior corresponds to at least one of a file creation operation including a file extension change, a setting of a program to be linked and executed, an encryption display file name change, a self-duplication file creation of the process, May be determined based on whether or not one is included. Whether or not the process corresponds to a malicious code may be determined based on the file header content, the file header structure, the body content, the body size, the entropy of the body text, the file name, And abnormal changes including file update time. Whether or not the process corresponds to a malicious code can be judged based on whether the abnormal change caused by the process occurs for a specific number or more of files.

상기 프로세스가 악성 코드에 해당하는지 여부는 상기 프로세스가 상기 대상 파일을 암호화하는 동작을 수행하는지 여부에 기초하여 판단될 수 있다. 또한, 상기 프로세스는 상기 대상 파일을 공개키 암호화 알고리즘을 이용하여 암호화하는 랜섬웨어(ransomware)일 수 있다. 또한, 상기 프로세스의 사전 행위의 로그를 저장하는 단계는 상기 프로세스의 파일 입출력(File I/O) 호출을 통하여 파일에 대한 이름 변경, 생성, 수정 및 삭제 중 적어도 일부에 대하여 기록하는 동작을 포함하는 시스템 보호 방법.Whether or not the process corresponds to a malicious code can be judged based on whether the process performs an operation of encrypting the target file. Also, the process may be ransomware that encrypts the target file using a public key encryption algorithm. In addition, the step of storing the log of the preliminary action of the process may include recording at least a part of the name change, creation, modification and deletion of the file through the file I / O call of the process How to Protect Your System.

한편, 상기 방법을 시행하기 위한 미니필터 엔진을 실행하는 제어부; 사전 행위의 로그, 대상 파일 및 백업 파일을 저장하는 저장부를 포함하는 전자 장치가 개시된다.Meanwhile, a control unit for executing a mini-filter engine for executing the method is provided. An electronic device including a log of a dictionary action, a target file, and a storage unit for storing a backup file is disclosed.

한편, 상기 방법을 시행하기 위해 매체에 저장된 프로그램이 개시된다.On the other hand, a program stored in a medium for implementing the above method is disclosed.

한편, 상기 방법 중 어느 하나를 컴퓨터로 실행시키기 위한 프로그램이 저장된 서버가 개시된다.On the other hand, a server storing a program for executing any one of the above methods by a computer is disclosed.

본 명세서에 개시된 실시 예에 따르면, 컴퓨팅 장치에서 패턴 또는 특징 정보들이 알려지지 않은 랜섬웨어에 대해서도 차단 및 복구작업이 가능하다.According to the embodiments disclosed in the present specification, it is possible to perform blocking and recovery operations for the RANCOMM software in which the pattern or feature information is not known in the computing device.

본 명세서에 개시된 실시 예에 따르면, 시그니처 기반, 미끼 파일 기반, 샌드박스 기반 등 종래의 랜섬웨어 탐지 방법으로 탐지가 곤란할 랜섬웨어를 탐지할 수 있다.According to the embodiments disclosed herein, it is possible to detect Ransomware which is difficult to detect by a conventional Ransomware detection method such as signature based, bait file based, sandbox based based.

도 1은 본 명세서에 개시된 기술이 적용될 수 있는 전자 장치의 동작 환경을 도시한다.
도 2는 본 명세서에 개시된 기술이 채택될 수 있는 전자 장치의 아키텍처를 도시한다.
도 3은 본 명세서에 개시된 실시 예를 따르는 악성 코드 탐지 모듈이 악성 프로세스로부터 시스템을 보호하는 방법의 흐름도이다.
도 4는 본 명세서에 개시된 기술이 채택될 수 있는 전자 장치이다.
Figure 1 illustrates the operating environment of an electronic device to which the techniques disclosed herein may be applied.
Figure 2 illustrates the architecture of an electronic device in which the techniques disclosed herein may be employed.
3 is a flow chart of a method for malicious code detection module according to an embodiment disclosed herein to protect a system from a malicious process.
Figure 4 is an electronic device in which the techniques disclosed herein may be employed.

본 명세서에 개시된 기술은 시스템 보호 장치에 적용될 수 있다. 그러나 본 명세서에 개시된 기술은 이에 한정되지 않고, 상기 기술의 기술적 사상이 적용될 수 있는 모든 전자 장치 및 방법에도 적용될 수 있다.The techniques disclosed herein can be applied to system protection devices. However, the technology disclosed in this specification is not limited thereto, and can be applied to all electronic devices and methods to which the technical idea of the above-described technology can be applied.

본 명세서에서 사용되는 기술적 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 명세서에 개시된 기술의 사상을 한정하려는 의도가 아님을 유의해야 한다. 또한, 본 명세서에서 사용되는 기술적 용어는 본 명세서에서 특별히 다른 의미로 정의되지 않는 한, 본 명세서에 개시된 기술이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 의미로 해석되어야 하며, 과도하게 포괄적인 의미로 해석되거나, 과도하게 축소된 의미로 해석되지 않아야 한다. 또한, 본 명세서에서 사용되는 기술적인 용어가 본 명세서에 개시된 기술의 사상을 정확하게 표현하지 못하는 잘못된 기술적 용어일 때에는, 본 명세서에 개시된 기술이 속하는 분야에서 통상의 지식을 가진 자가 올바르게 이해할 수 있는 기술적 용어로 대체되어 이해되어야 할 것이다. 또한, 본 명세서에서 사용되는 일반적인 용어는 사전에 정의되어 있는 바에 따라, 또는 전후 문맥 상에 따라 해석되어야 하며, 과도하게 축소된 의미로 해석되지 않아야 한다.It is noted that the technical terms used herein are used only to describe specific embodiments and are not intended to limit the scope of the technology disclosed herein. Also, the technical terms used herein should be interpreted as being generally understood by those skilled in the art to which the presently disclosed subject matter belongs, unless the context clearly dictates otherwise in this specification, Should not be construed in a broader sense, or interpreted in an oversimplified sense. It is also to be understood that the technical terms used herein are erroneous technical terms that do not accurately represent the spirit of the technology disclosed herein, it is to be understood that the technical terms used herein may be understood by those of ordinary skill in the art to which this disclosure belongs And it should be understood. Also, the general terms used in the present specification should be interpreted in accordance with the predefined or prior context, and should not be construed as being excessively reduced in meaning.

본 명세서에서 사용되는 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.As used herein, terms including ordinals, such as first, second, etc., may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

이하, 첨부된 도면을 참조하여 본 명세서에 개시된 실시 예들을 상세히 설명하되, 도면 부호에 관계없이 동일하거나 유사한 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, wherein like reference numerals denote like or similar elements, and redundant description thereof will be omitted.

또한, 본 명세서에 개시된 기술을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 명세서에 개시된 기술의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 첨부된 도면은 본 명세서에 개시된 기술의 사상을 쉽게 이해할 수 있도록 하기 위한 것일 뿐, 첨부된 도면에 의해 그 기술의 사상이 제한되는 것으로 해석되어서는 아니 됨을 유의해야 한다.Further, in the description of the technology disclosed in this specification, a detailed description of related arts will be omitted if it is determined that the gist of the technology disclosed in this specification may be obscured. It is to be noted that the attached drawings are only for the purpose of easily understanding the concept of the technology disclosed in the present specification, and should not be construed as limiting the spirit of the technology by the attached drawings.

도 11

도 1은 본 명세서에 개시된 기술이 적용될 수 있는 전자 장치의 동작 환경을 도시한다. Figure 1 illustrates the operating environment of an electronic device to which the techniques disclosed herein may be applied.

네트워크를 통하여 다양한 장치들이 상호 연결되는 환경에서 전자 장치(110)는 사용자의 부주의 등으로 인하여 배포 서버(120)로부터 악의적인 프로그램을 수신하고 설치할 수 있다. 상기 배포 서버(120)는 악의적인 프로그램을 불특정 다수의 장치로 전송하는 장치로서, 예를 들어, 웹서버, 파일 서버, 클라우드 서비스, 메일 서버 등 파일 제공을 목적으로 하는 인터넷에 연결된 서버 형태의 장치일 수 있으나, 장치의 구체적인 형태에 제한되지 않고 악성 코드가 포함된 파일을 제공하는 어떠한 형태의 장치로 이에 해당할 수 있다. 악성 프로그램을 배포하려는 자는 상기 전자 장치(110)의 사용자가 악성 코드가 포함된 프로그램이 상기 전자 장치(110)의 사용자가 알지 못하는 사이에 상기 전자 장치(110)로 전송되어 설치될 수 있도록 하기 위하여 평범한 프로그램 또는 데이터로 위장하여 상기 배포 서버(120)에 놓여 있을 수 있다.In an environment where various devices are interconnected through a network, the electronic device 110 can receive and install a malicious program from the distribution server 120 due to a user's carelessness or the like. The distribution server 120 is a device for transmitting a malicious program to an unspecified number of devices. For example, the distribution server 120 may be a server-type device connected to the Internet for providing a file, such as a web server, a file server, a cloud service, But may be any type of device that provides a file containing malicious code without being limited to the specific form of the device. A person who intends to distribute a malicious program is required to allow a user of the electronic device 110 to transmit a program containing malicious code to the electronic device 110 without being aware of the user of the electronic device 110 May be placed on the distribution server 120 in disguise as a normal program or data.

상기 전자 장치(110)가 상기 배포 서버(120) 등으로부터 외부 프로그램을 수신할 수 있는 채널은 다양하다. 일반적으로, 상기 전자 장치(110)의 사용자가 악의적인지 여부를 모른 채 웹사이트로부터 외부 프로그램을 내려 받아 설치하는 과정, 이메일의 첨부파일 형태로 외부 프로그램이 사용자에게 전달된 후 상기 전자 장치(110)의 사용자가 상기 첨부파일을 부주의하게 실행시키는 과정, 또는 보조 저장장치를 통해서나 기기간 연결 장치를 통해서 상기 전자 장치(110)에 전달된 외부 프로그램을 실행하는 과정 등을 통해 상기 외부 프로그램이 수신 되어 설치될 수 있다. There are a variety of channels through which the electronic device 110 can receive an external program from the distribution server 120 or the like. Generally, a process of downloading and installing an external program from a web site without knowing whether a user of the electronic device 110 is malicious or not, a process of downloading an external program to an electronic device 110, The external program is received and installed through a process of inadvertently executing the attachment file by a user of the electronic device 110 or a process of executing an external program transmitted to the electronic device 110 through the auxiliary storage device or the inter- .

상기 전자 장치(110)에 설치되는 악성 프로그램은 시스템에 피해를 일으키는 악성 코드(malicious code)를 포함할 수 있다. 악성 코드는 저장소(storage)에 저장되어 있는 파일 또는 정보를 훼손하는 프로그램을 지칭할 수 있다. 예를 들어, 악성 코드는 전자 장치(110) 내부에 탑재된 로컬 저장소(local storage) 또는 상기 전자 장치(110)가 접근하여 수정할 수 있는 권한을 가진 외부 저장소(external storage)에 저장되어 있는 파일 또는 정보를 훼손할 수 있다. The malicious program installed in the electronic device 110 may include a malicious code that causes harm to the system. Malicious code can refer to a file stored in storage or a program that compromises information. For example, the malicious code may be stored in a local storage mounted in the electronic device 110 or in an external storage accessible by the electronic device 110, Information can be compromised.

이와 같은 악성 프로그램 중에는 파일 또는 정보를 삭제하거나 변경하여 전자 장치의 사용자 또는 조직에 피해를 입히는 것을 직접적인 목표로 삼고 작성되는 종류가 있으며, 이러한 종류의 악성 프로그램은 공격자(attacker) 즉, 상기 악성 프로그램의 작성자 또는 배포자가 금전적인 보상을 피해자로부터 직접 받기를 원하기 보다 희생자(victim)의 피해를 통한 간접적인 보상을 받는 형태이다.Among such malicious programs, there is a kind of malicious programs written with direct targets of damaging users or organizations of electronic devices by deleting or changing files or information, and this kind of malicious programs is an attacker, that is, The author or distributor receives indirect compensation through the victim's injury rather than wanting to receive monetary compensation directly from the victim.

다만, 최근에 자주 보고되는 악성 프로그램에는 원 사용자가 시스템 또는 대상 파일에 접근할 수 없도록 조치하고, 악성 프로그램의 제작자 또는 배포자가 직접적으로 금전적인 보상을 수령한 후 비로소 원 상태로 복원시키는 종류가 있다. 이는 소위 랜섬웨어(ransomware)라 불리는 악성 프로그램으로서, 희생자 장치(victim device)에 설치된 후 백그라운드로 실행되어 대상 파일(target file)들을 암호화함으로써 희생자 장치의 사용자가 대상 파일을 사용할 수 없도록 하며, 이를 복호화하기 위한 대가를 지급할 것을 통지하는 등의 작업을 수행한다. 금전적 또는 기타 대가를 지급받은 공격자가 희생자 장치에 암호화된 대상 파일을 복호화할 수 있는 키 및/또는 툴을 제공할 수 있다.However, there is a kind of malicious programs that are recently reported frequently so that the original user can not access the system or the target file, and the malicious program creator or distributor directly restores the original state after receiving the monetary compensation . This is a malicious program called so-called ransomware. It is installed in the victim device and then executed in the background to encrypt the target files so that the user of the victim device can not use the target file, And notifies the user of the payment to be made. An attacker who has been paid a monetary or other charge may provide keys and / or tools to decrypt the encrypted subject file on the victim device.

상기 랜섬웨어는 비대칭 암호화 알고리즘에 기반한 악성 프로그램일 수 있다. 상기 랜섬웨어가 비대칭 암호화 알고리즘을 이용하는 경우, 희생자 장치(victim device)에 설치된 상기 악성 프로그램은 공격자에 의해 생성된 비대칭 키 쌍 중 하나, 예를 들어, 공개키(public key)를 이용하여 상기 희생자 장치에서 접근 가능한 하나 이상의 대상 파일을 암호화할 수 있다. 이 경우, 상기 공격자가 생성한 비대칭 키 쌍 중에서 다른 하나, 예를 들어, 개인키(private key)를 가진 복원 도구에 의해서만 상기 악성 프로그램이 암호화한 대상 파일에 접근할 수 있게 된다. 본 명세서에 개시된 시스템 보호 기술은 컴퓨터 장치에 설치된 트랩도어(trapdoor) 또는 백도어(backdoor) 프로그램의 일종인 악성 프로그램을 탐지하고 그로 인한 피해를 복원하기 위하여 사용될 수 있다. 이와 같이 본 명세서에 개시된 시스템 보호 기술은 암호화 기능을 이용하여 특정 권한을 가진 자만 접근할 수 있도록 설계된 암호학적 트랩도어(cryptographic trapdoor) 형태의 악성 프로그램에 대처하기 위하여 사용될 수 있다.The Ransomware may be a malicious program based on an asymmetric encryption algorithm. If the Ransomware uses an asymmetric encryption algorithm, the malicious program installed in the victim device may be accessed by one of the asymmetric key pairs generated by the attacker, for example, a public key, Lt; RTI ID = 0.0 > accessible. In this case, the target file encrypted by the malicious program can be accessed only by the restoration tool having another key, for example, a private key, among the asymmetric key pairs generated by the attacker. The system protection techniques disclosed herein can be used to detect malicious programs that are a kind of trapdoor or backdoor program installed on a computer device and to recover the damage caused thereby. As described above, the system protection technology disclosed herein can be used to cope with a malicious program in the form of a cryptographic trapdoor designed to be accessible only to a specific authorized user by using an encryption function.

상기 전자 장치(110)는 공격자에게 암호화된 대상 파일에 대한 대가를 지불하거나 또는 상기 암호화된 대상 파일을 복호화하기 위한 키 또는 도구 등을 수신하기 위하여 복구 서버(130)에 접속할 수 있다. 상기 악성 프로그램이 공격자의 지시에 따라 암호화된 파일을 복원하기 위한 키 또는 도구를 수신하기 위하여 가지고 있는 상기 복구 서버(130)에 접속 정보를 포함할 수 있다.The electronic device 110 may contact the recovery server 130 to pay an attacker for an encrypted object file or to receive a key or a tool for decrypting the encrypted object file. The malicious program may include access information to the recovery server 130 to receive a key or tool for restoring an encrypted file according to an attacker's instructions.

랜섬웨어는 악성 코드 내에 구별 가능한 정보를 포함할 수 있다. 상기 구별 가능한 정보는, 예를 들어, 랜섬웨어가 나중에 접속하기 위한 외부 URL 등의 접속 정보 또는 파일 이름, 레지스트리 값, 경로 등의 시스템 정보를 포함한다. 따라서 종래 악성 프로그램을 검출하는 방법은 구별 가능한 정보를 포함하는 악성 코드 부분에 대한 고유 해시(hash)를 기반으로 악성 코드의 존재 여부를 탐지하는 시그니처 기반 검출(signature based detection) 방법, 악성 코드가 수행하는 특정한 행위를 패턴화하여 탐지하는 행위 기반 검출(behavior based detection) 방법, 가상 환경 안에서 악성 코드를 실행시킨 후 나타나는 행위를 기반으로 탐지하는 샌드박스 검출(sandbox detection) 방법, 기타 네트워크 상의 통신 정보를 기반으로 악성코드를 탐지하는 방법 등이 존재한다.Ransomware can contain information that can be distinguished in malicious code. The distinguishable information includes, for example, connection information such as an external URL for later connection by Ransomware or system information such as a file name, a registry value, and a path. Therefore, a conventional method for detecting a malicious program includes a signature based detection method for detecting the presence or absence of a malicious code based on a unique hash of a malicious code portion including distinguishable information, A behavior based detection method for detecting a specific behavior patterned by a malicious code, a sandbox detection method for detecting a malicious code based on an action after execution of a malicious code in a virtual environment, Based malware detection.

이와 같은 기존의 악성 코드 탐지 기술은 악성 코드들이 각각 가지고 있는 구별 가능한 정보를 바탕으로 악성 코드인지 여부를 검출하는 것으로, 방지 프로그램은 각 악성 코드에 따라 구별 가능한 정보에 대한 데이터베이스를 사전에 구축하고 있어야 이를 검출할 수 있다. 따라서 구별 가능한 정보를 바탕으로 악성 코드를 탐지하는 방식은 새롭게 나타난 악성 프로그램은 그에 대한 정보 부재로 인하여 탐지하지 못하는 문제가 발생할 수 있다. 즉, 시그니처 정보 변경, 행위 기반 규칙(rule), 메타데이터, 샌드박스 등을 우회하는 새로운 악성 프로그램에 대응하기 위하여 방지 프로그램은 이에 대한 데이터베이스를 구축하지 못하여 탐지하지 못하는 문제가 발생할 수 있다.Such existing malicious code detection technology detects malicious code based on the distinguishable information of each malicious code, and the prevention program has to establish a database for distinguishable information according to each malicious code This can be detected. Therefore, the malicious code detection method based on the distinguishable information may cause a problem that the newly appeared malicious program can not be detected due to the lack of information thereon. That is, in order to cope with a new malicious program that bypasses signature information change, action based rule, metadata, sandbox, etc., the prevention program can not detect the database because it can not establish the database therefor.

본 명세서에 개시된 시스템 보호 기술은 악성 프로그램으로부터 시스템 또는 시스템에서 접근 가능한 파일 또는 정보를 보호할 수 있다. 본 명세서에 개시된 시스템 보호 기술은 암호화 기능(cryptographic function)을 이용하여 대상 파일의 접근을 차단하고 공격자가 제공하는 복원 정보 또는 도구만을 이용하여 차단을 해제할 수 있도록 설계된 악성 프로그램으로부터 시스템을 보호할 수 있다. 본 명세서에 개시된 시스템 보호 기술은 비대칭 암호화 알고리즘(asymmetric cryptographic algorithm)이 서로 다른 비대칭 키로 이루어진 키 쌍을 이용하는 특징에 기반하여 희생자 장치에 설치된 멀웨어(malware)를 원격의 공격자(attacker) 만 통제할 수 있도록 설계된 악성 프로그램으로부터 시스템을 보호할 수 있다.The system protection techniques disclosed herein can protect files or information accessible from a malicious program in a system or system. The system protection technology disclosed herein can protect a system from malicious programs designed to block access to a target file using a cryptographic function and to unblock it using only restoration information or tools provided by an attacker have. The system protection technology disclosed herein is based on the feature that the asymmetric cryptographic algorithm uses a key pair made up of different asymmetric keys so that only a remote attacker can control the malware installed in the victim device The system can be protected from malicious programs designed.

암호학적 트랩도어로 동작하는 랜섬웨어는 설계 목적상 대상 파일을 추후 복호화 가능하도록 암호화하거나, 공격자(attacker)에게 복호화 대가를 결제할 수 있도록 통지하는 기능을 수행하도록 동작하는 특징을 가지고 있다. 따라서, 종래의 방지 프로그램이 랜섬웨어의 유입 및 설치 경로를 차단하거나, 악성행위 자체를 검출하여 피해를 방지하는 것과 달리, 본 명세서의 예시적인 보호 기술을 따르는 전자 장치는 랜섬웨어의 공통적인 사전 예비적인 행동들을 대상으로 상황 인식기반(context awareness based) 검출을 수행할 수 있다.Ransomware, which operates as a cryptographic trap door, is designed to encrypt a target file for later decryption or to notify an attacker to pay a decryption fee for design purposes. Thus, unlike conventional protection programs that block the inflow and installation path of the RAN available, or detect malicious actions themselves to prevent damage, the electronic devices that follow the exemplary protection techniques of the present disclosure can be used as a common pre- Context awareness based detection can be performed on the behaviors.

즉, 예를 들면, 본 명세서의 예시적인 보호 기술을 따르는 전자 장치는 랜섬웨어의 설계 목적상 예측되는 확장명 우회 후 암호화 탐지를 위한 파일 이름의 변경 추적, 자가 복제 파일 생성 및 복호화 결제 안내 파일 삭제를 위한 파일 생성 추적, 탐지 전 암호화된 파일 복구를 위한 원본 파일 백업 유무 추적, 비 암호화 파일 훼손 유무, 정상적인 파일 수정 행위 인식, 생성/변경/덮어쓰기/삭제 상황 별 연계 분석, 프로세스 별 행위 연계 추적 등의 의심 프로세스의 사전 행동에 대한 로그를 남긴다.That is, for example, an electronic device conforming to the exemplary protection technology of the present disclosure can track change of file name for detection of an encryption after extrapolation after extrapolation, a self-duplication file creation and a decryption payment guidance file deletion, Tracking the creation of files for detection, Tracking the existence of backups of original files for recovery before detection, Detecting unauthorized file corruption, Recognizing normal file modification behavior, Creating / changing / overwriting / deleting, Of the suspicious process.

본 명세서에 개시된 시스템 보호 기술은 암호학적 트랩도어 형태의 악성 프로그램의 예측되는 사전 행위를 기초로 특정 프로세스가 악의적인지 여부에 대한 예비적인 판단을 수행할 수 있다. The system protection techniques disclosed herein can perform a preliminary determination as to whether a particular process is malicious based on a predicted prior action of a malicious program in the form of a cryptographic trap door.

또한 본 명세서의 예시적인 보호 기술을 따르는 전자 장치는 이 후 상기 특정 프로세스가 악성 코드로 판단되는 경우 상기 특정 프로세스의 사전 행동에 대한 로그를 기초로 상기 사전 행동들에 대한 롤백(rollback)을 수행할 수 있다. The electronic device according to the exemplary protection techniques of the present disclosure may then perform a rollback of the proactive actions based on a log of the proactive behavior of the particular process when the particular process is determined to be malicious .

또한, 본 명세서의 예시적인 보호 기술을 따르는 전자 장치는 복수의 프로세스에 대하여 사전 행동에 대한 로그를 남길 수 있다. 이 경우, 하나 이상의 프로세스가 악성 코드로 판단되는 경우 각 프로세스의 사전 행동들에 대한 롤백을 수행할 수 있다.In addition, an electronic device in accordance with the exemplary protection techniques herein may log a proactive action for a plurality of processes. In this case, if more than one process is determined to be malicious code, a rollback of the proactivity of each process can be performed.

한편, 대상 프로세스를 감시함으로써 사전 행동을 수행하는 것과 달리, 예시적인 보호 장치는, 다른 장치의 접근이 허용된 공유 폴더에 대하여 사전 행동이 있는지 여부를 탐지하고 폴더에 대한 사전 행동을 기록할 수 있다. 다른 장치로부터 악성 프로그램으로 예측되는 사전 행위가 발생하는 경우, 상기 사전 행동에 대한 로그는 상기 다른 장치의 주소 정보를 기초로 기록될 수 있다. 이 후 상기 다른 장치로부터 파일 변경, 훼손 등이 이루어지는 것으로 판단되는 경우 상기 다른 장치의 주소 정보를 기반으로 차단할 수 있다.On the other hand, an exemplary protection device can detect whether there is a proactive action for a shared folder that another device is allowed to access, and record the proactive action for the folder, as opposed to performing a proactive action by monitoring the target process . When a pre-action to be predicted as a malicious program from another device occurs, a log of the pre-action may be recorded based on the address information of the other device. If it is determined that the file is changed or damaged from the other device, it may be blocked based on the address information of the other device.

도 22

도 2는 본 명세서에 개시된 기술이 채택될 수 있는 전자 장치의 아키텍처를 도시한다. 전자 장치(200)에 설치된 랜섬웨어(210)은 시스템의 사용자 모드에서 실행되는 프로그램의 일종이다. 본 명세서에 개시된 기술은 랜섬웨어(210)의 사전 행위, 대상 파일에 대한 공격 및 기타 특징 등을 기반으로 악성 프로그램인지 여부를 판단할 수 있다.Figure 2 illustrates the architecture of an electronic device in which the techniques disclosed herein may be employed. The Raman software (210) installed in the electronic device (200) is a kind of program executed in the user mode of the system. The techniques disclosed herein can determine whether or not the program is a malicious program based on advance actions of Ransomware 210, attacks on a target file, and other features.

상기 랜섬웨어(210) 또는 일반적인 프로그램(220) 등 상기 전자 장치(200)에 설치된 프로그램의 파일 작업은 다음과 같이 이루어진다. 먼저 악성 프로그램인지 여부가 아직 파악되지 못한 프로그램은 파일 I/O(230)를 통하여 파일시스템 내의 파일을 대상으로 파일 작업을 수행할 수 있다. 사용자 모드에서 동작하는 프로그램(220) 또는 랜섬웨어(210)가 파일 I/O(230)를 통해 파일 작업을 수행하는 경우 커널 모드 내의 I/O 매니저(240)를 통해 대응되는 이벤트가 파일 시스템 드라이버(260)로 전달되고, 상기 파일 시스템 드라이버(260)는 스토리지(280) 장치를 제어하기 위한 스토리지 드라이버 스택(270)을 통해 상기 이벤트에 대응되는 파일 작업을 수행한다. 상기 스토리지(280)는 상기 전자 장치(200)에 부착된 저장 장치일 수 있으며, 다른 실시 예에서는 파일 시스템 드라이버(260)를 통해 접근 가능한 네트워크로 연결된 저장 장치일 수 있다.A file operation of a program installed in the electronic device 200, such as the RAN firmware 210 or the general program 220, is performed as follows. First, a program whose malicious program is not yet known can execute a file operation on a file in the file system through the file I / O 230. When a program 220 or a random software 210 operating in a user mode performs a file operation through a file I / O 230, a corresponding event via the I / O manager 240 in a kernel mode, And the file system driver 260 performs a file operation corresponding to the event through the storage driver stack 270 for controlling the storage 280 device. The storage 280 may be a storage device attached to the electronic device 200 and in other embodiments may be a networked storage device accessible via the file system driver 260.

본 명세서에 개시된 시스템 보호 기술은 사용자 모드에서 동작하는 프로그램에 대한 것으로, 상기 랜섬웨어(210) 및 상기 일반 프로그램(220)이 동일한 파일 입출력 작업을 통해 저장된 대상 파일을 변경할 수 있으나 상기 랜섬웨어(210)와 같이 훼손을 목적으로 하는 프로세스를 탐지하고 이에 대한 복원 방안을 제시하기 위한 것이다.The system protection technology disclosed herein is for a program that operates in the user mode and the RAN firmware 210 and the general program 220 can change the target file stored through the same file input / output operation, ), And to suggest a restoration plan for the process.

본 명세서에 개시된 시스템 보호 기술은 상기 전자 장치(200)에서 실행되는 상기 랜섬웨어(210) 또는 프로그램(220)의 파일 입출력 동작을 탐지하고 제어하기 위하여 필터 매니저(250)를 이용할 수 있다. 상기 필터 매니저(250)를 통하여 상기 전자 장치 내 파일 작업에 대한 이벤트를 감지할 수 있다. 예를 들어, 상기 필터 매니저(250)가 대상 파일에 대하여 쓰기(write), 삭제(delete), 이름 변경(rename) 등의 이벤트가 발생하는 경우 이름 감지하여, 상기 파일 작업을 수행하는 프로세스가 악성 코드인지 여부를 파악할 수 있도록 한다. The system protection techniques disclosed herein may utilize the filter manager 250 to detect and control file input / output operations of the RANCOMMER 210 or the program 220 running on the electronic device 200. The filter manager 250 can detect an event for a file operation in the electronic device. For example, if the filter manager 250 detects a name when an event such as a write, a delete, or a rename occurs with respect to a target file, Let it know whether it is code or not.

일 실시 예에서, 본 명세서에 개시된 기술에 따른 시스템 보호 방법은 상기 필터 매니저(250)에 등록된 파일 작업 필터(290) 형태로 구현될 수 있다. 상기 파일 작업 필터(290)는 파일 시스템 드라이버(260)로 전달되는 파일 작업 이벤트를 기초로 파일 입출력 동작을 수행하는 프로세스의 사전 행위를 기록하고, 이에 근거하여 대상 파일에 의심 행동을 하는 것으로 판단되는 경우 상기 대상 파일을 백업하고, 상기 프로세스의 행동에 기초하여 상기 프로세스가 악성 코드에 해당하는 것으로 판단되는 경우 상기 프로세스를 차단하고, 상기 대상 파일을 복원하는 동작을 수행할 수 있다. 일 실시 예에서, 상기 파일 작업 필터(290)는 대상 파일을 보호하기 위하여 상황 인식 기반의 랜섬웨어 행위 탐지(context awareness ransomware behavior detection) 엔진의 형태로 구현될 수 있다. In one embodiment, the method of protecting a system according to the techniques disclosed herein may be implemented in the form of a file action filter 290 registered with the filter manager 250. The file operation filter 290 records a preliminary action of a process of performing a file input / output operation based on a file operation event transmitted to the file system driver 260, and judges that a suspicious action is to be performed on the object file A process of backing up the target file and blocking the process when it is determined that the process corresponds to a malicious code based on an action of the process and restoring the target file. In one embodiment, the file action filter 290 may be implemented in the form of a context awareness ransomware behavior detection engine based on context awareness to protect the subject file.

도 2를 참조하면, 상기 필터 매니저(250)에 등록된 상기 파일 작업 필터(290)는 파일 동작 추적 모듈(291), 프로세스 매니저(293), 파일 백업 모듈(295) 및 악성 코드 탐지 모듈(297)을 포함할 수 있다.2, the file operation filter 290 registered in the filter manager 250 includes a file operation tracking module 291, a process manager 293, a file backup module 295, and a malicious code detection module 297 ).

상기 파일 작업 필터(290)는 시스템 상 실행되는 프로세스, 즉 상기 프로그램(220) 또는 상기 랜섬웨어(210)의 파일 작업 이벤트를 기초로 상기 프로세스의 사전 행위의 로그를 저장할 수 있다.The file action filter 290 may store a log of a proactive action of the process based on a system-executed process, that is, a file action event of the program 220 or the Rangumware 210. [

상기 랜섬웨어(210)가 나타내는 사전 행위는, 대상 파일에 대한 직접적인 파일 작업 외에, 공격자의 랜섬웨어 설계 목적상 예측되는 행위일 수 있다. 예를 들어, 상기 프로세스 매니저(293)는 파일 확장자 변경, 상기 랜섬웨어(210)와 연결되어 실행될 프로그램의 설정, 암호화 표시 파일 이름 변경, 상기 프로세스의 자기 복제 파일 생성, 또는 결제 안내를 포함하는 파일 생성 행위 등의 사전 행위에 대한 로그를 저장할 수 있다.The advance action indicated by the RAN firmware 210 may be an action predicted for the attacker's Rangem software design, in addition to direct file operations on the target file. For example, the process manager 293 may include a file including a file extension change, a setting of a program to be executed in connection with the Raman software 210, an encryption display file name change, a self-duplication file creation of the process, A log of a preliminary action such as a creation activity can be stored.

상기 사전 행위의 로그는 상기 스토리지(280)에 저장될 수 있으며, 일반 프로세스는 접근할 수 없도록 설정될 수 있다. 일 실시 예에서, 상기 프로세스의 사전 행위의 로그를 저장하는 동작은 프로세스 매니저(293)의 형태로 구현될 수 있다.The log of the dictionary action may be stored in the storage 280, and the general process may be set inaccessible. In one embodiment, the act of storing a log of the proactive behavior of the process may be implemented in the form of a process manager 293.

또한, 상기 작업 필터(290)는 상기 프로세스가 상기 스토리지(280)에 저장된 대상 파일(target file)을 변경하려는 것을 감지할 수 있다. 예를 들어, 상기 작업 필터(290)는 상기 프로세스가 상기 파일 작업 이벤트에 대응되는 파일 입출력 작업을 수행하는 것을 감지할 수 있다. 상기 파일 입출력 작업에 대하여 감시하는 동작은 파일 동작 추적 모듈(291)의 형태로 구현될 수 있다.In addition, the work filter 290 may detect that the process is attempting to change a target file stored in the storage 280. For example, the job filter 290 may detect that the process performs a file input / output operation corresponding to the file operation event. The operation for monitoring the file input / output operation may be implemented in the form of a file operation tracking module 291.

상기 작업 필터(290)이 상기 대상 파일의 변경 시도를 감지한 경우, 상기 작업 필터(290)는 상기 변경 시도가 일반적인 프로세스에 의한 정상적인 변경인 경우 이를 허용하고, 악성 코드에 의한 악성 변조에 해당하는 경우에는 파일 변경을 차단한다. 다만, 본 명세서에 개시된 시스템 보호 기술은 임의의 프로세스가 단순히 파일 변경을 시도하는 자체만으로 상기 프로세스가 악성인지 여부를 판단하기에 충분치 않은 점을 감안하여, 각 프로세스의 사전 행위의 로그를 기초로 파일 변경 시도가 의심 행동인지 여부를 먼저 판단하고, 우선 의심 행동으로 판단되는 경우 (최종적으로 상기 프로세스가 악성 코드에 해당한다는 판단을 유보하더라도) 상기 프로세스가 변경을 시도하는 파일을 백업하는 동작을 수행한다.When the task filter 290 detects an attempt to change the target file, the task filter 290 permits the change when the change attempt is a normal change by a general process, In this case, the file change is blocked. However, the system protection technology disclosed in the present specification is based on a log of a proactive action of each process, taking into consideration that a process is not sufficient to judge whether or not the process is malicious by merely attempting to change a file, It is first determined whether or not the change attempt is a suspicious behavior and an operation of backing up a file in which the process tries to change is performed if it is determined to be a suspicious behavior first (even if the process finally judges that the process corresponds to a malicious code) .

즉, 상기 작업 필터(290)는 상기 프로세스의 파일 입출력 작업을 감지한 경우, 상기 프로세스의 파일 입출력 작업이 의심 행동에 해당하는지 여부를 판단할 수 있다. 상기 프로세스의 파일 입출력 작업이 의심 행동에 해당한다는 것은 상기 프로세스가 랜섬웨어 또는 악성 코드에 해당할 가능성이 있다는 것을 의미한다. That is, when the job filter 290 detects a file input / output job of the process, it can determine whether the file input / output job of the process corresponds to a suspicious behavior. The fact that the file I / O operation of the process corresponds to a suspicious behavior means that the process is likely to correspond to Rangemeware or malicious code.

상기 작업 필터(290)는 상기 프로세스의 사전 행위 로그에 적어도 일부 기초하여 상기 프로세스의 파일 입출력 작업이 의심 행동에 해당하는지 여부를 판단할 수 있다. 구체적으로, 상기 작업 필터(290)는 상기 프로세스의 사전 행위 로그에 랜섬웨어의 행동으로 볼 수 있는 행위가 포함되어 있는 경우 감지된 상기 프로세스의 파일 입출력 작업이 의심 행동에 해당하는 것으로 판단할 수 있다. 이를 위하여 상기 프로세스에 대한 복수의 사전 행위 로그를 기초로 가능성을 계산하고 소정의 가능성을 초과하는 경우 의심 행동에 해당하는 것으로 판단할 수 있다.The action filter 290 can determine whether the file input / output operation of the process corresponds to a suspicious action based at least in part on the pre-action log of the process. Specifically, when the action filter 290 includes an action that can be viewed as an action of the Ransomware in the pre-action log of the process, it can be determined that the detected file input / output action of the process corresponds to a suspicious action . To this end, the probability is calculated based on a plurality of pre-action logs for the process, and if it exceeds the predetermined probability, it can be determined that the action corresponds to a suspicious behavior.

상기 작업 필터(290)는 상기 프로세스의 대상 파일에 대한 파일 입출력 작업이 의심 행동에 해당하는 것으로 판단하는 경우, 상기 대상 파일을 상기 스토리지(280)에 백업할 수 있다. 이후, 상기 프로세스가 랜섬웨어로 판단되어 차단 또는 삭제되는 경우, 상기 작업 필터(290)는 상기 프로세스에 의해 훼손된 대상 파일을 복원하기 위하여 상기 스토리지(280)에 백업되어 있는 파일로 복원할 수 있다. 상기 작업 필터(290)가 대상 파일을 백업하거나 복원하는 동작은 파일 백업 모듈(295)의 형태로 구현될 수 있다.The operation filter 290 can back up the target file to the storage 280 when it determines that the file input / output operation for the target file of the process corresponds to a suspicious behavior. Thereafter, when the process is judged to be Ransomware and blocked or deleted, the job filter 290 can restore the file backed up in the storage 280 in order to restore the target file damaged by the process. The action of the task filter 290 to back up or restore the target file may be implemented in the form of a file backup module 295.

상기 스토리지(280) 상에 상기 대상 파일이 백업되는 영역은 다른 프로세스 또는 상기 랜섬웨어의 접근 권한이 없도록 구분된 영역일 수 있다.The area in which the target file is backed up on the storage 280 may be an area divided so as not to have access rights to another process or the RANCHEMAware.

상기 작업 필터(290)는 상기 대상 파일을 복원하면서 상기 프로세스의 사전 행위 로그에 기록된 파일의 변화에 대해서도 원상 복구를 할 수 있다. 즉, 악성 코드로 판단된 상기 프로세스가 상기 대상 파일을 훼손하기 전 상기 스토리지(280) 내의 랜섬웨어 프로그램의 자기 복제 파일, 사용자에게 통지하기 위하여 생성한 파일 등 의심 행동의 수행 과정에서 생성한 파일을 삭제할 수 있다. The work filter 290 can perform restoration of the file even when the file is recorded in the pre-action log of the process while restoring the target file. That is, before the process determined as a malicious code destroys the target file, a file generated in the process of performing a suspicious action such as a self-duplication file of the Raman software program in the storage 280 and a file generated to notify the user Can be deleted.

또한 상기 작업 필터(290)는 대상 파일의 변조 상황을 기초로 상기 프로세스가 악성 코드에 해당하는지 여부를 판단할 수 있다. 상기 작업 필터(290)은 상기 대상 파일의 변조가 일반적인 프로세스에 의한 정상적인 변조인지, 악성 코드에 해당하는 랜섬웨어의 파일 훼손을 위한 변조 인지 판단할 수 있다. 상기 프로세스가 악성 코드에 해당하는지 여부를 판단하는 동작은 악성코드 탐지 모듈(297)의 형태로 구현될 수 있다.In addition, the operation filter 290 can determine whether the process corresponds to a malicious code based on a modulation state of a target file. The operation filter 290 can determine whether the modulation of the target file is a normal modulation by a general process or a modulation for file damage of the Raman software corresponding to the malicious code. The operation of determining whether the process corresponds to a malicious code may be implemented in the form of malicious code detection module 297. [

상기 악성코드 탐지 모듈(297)은 대상 파일을 암호화함으로써 대가 지불을 요구하고, 이를 수령한 후 상기 대상 파일을 복호화할 수 있도록 설계된 랜섬웨어 형태의 악성 코드가 나타내는 특징을 기반으로 악성 코드인지 여부를 판단할 수 있다. 예를 들어, 상기 악성코드 탐지 모듈(297)은 프로세스의 파일 변경으로 인하여 파일 헤더 내용이 교체되었는지, 파일 헤더의 구조가 다른 종류의 파일의 것으로 변경되었는지, 본문의 엔트로피의 변화가 있었는지, 본문 내용 크기의 변화가 있었는지, 파일 업데이트 시간이 변경되었는지, 파일 이름이 변경되었는지 등의 파일 변경 상황의 일부 또는 전부를 판단 기준으로 삼을 수 있다. 그 밖에 상기 악성코드 탐지 모듈(297)은 시그니처 기반 검출, 샌드박스 검출 등 일반적으로 알려진 랜섬웨어 탐지 방법을 적용할 수도 있다. The malicious code detection module 297 requests malicious code by encrypting the target file, and determines whether the malicious code is a malicious code based on the characteristic indicated by the malicious code in the form of Ransomware designed to decrypt the target file after receiving the request It can be judged. For example, the malicious code detection module 297 determines whether the file header content has been changed due to file modification of the process, whether the structure of the file header has been changed to that of a different kind of file, whether there has been a change in the entropy of the text, A part or all of the file change situation such as whether the content size has changed, the file update time has changed, the file name has been changed, and the like can be used as a judgment criterion. In addition, the malicious code detection module 297 may apply a generally known Ransomware detection method such as signature-based detection and sandbox detection.

도 33

도 3은 본 명세서에 개시된 실시 예를 따르는 악성 코드 탐지 모듈이 악성 프로세스로부터 시스템을 보호하는 방법의 흐름도이다.3 is a flow chart of a method for a malicious code detection module according to an embodiment disclosed herein to protect a system from a malicious process.

상기 탐지 모듈은 시스템 상 실행되는 프로세스의 사전 행위의 로그를 저장한다(310). 상기 프로세스의 사전 행위에 대한 로그는 상기 프로세스가 악성 코드인지 여부를 판단하는 과정에서는 랜섬웨어의 행동으로 볼 수 있는 사전 행위를 했는지를 참조할 수 있도록 함으로써 확정적인 판단이 내려지기 전이라도 의심 행동이 존재하는 경우 변경 대상 파일들에 대하여 미리 백업 조치를 수행할 수 있도록 한다. 또한, 상기 프로세스의 사전 행위에 대한 로그는 상기 프로세스가 악성 코드로 판단된 이 후 과정에서는 대상 파일 훼손 이외에 상기 프로세스가 어떤 작업들을 수행했는지를 기록하여 나중에 이를 복원할 수 있도록 한다.The detection module stores (310) a log of proactive actions of a process executed on the system. The log of the proactive action of the process can refer to whether or not the process performed the preliminary action that can be regarded as the behavior of the Randomware in the process of judging whether or not the process is malicious code. Thus, even if a doubtful action If there is a backup target file, the backup target file can be performed in advance. In addition, the log of the pre-action of the process may record what the process performed by the process other than the target file corruption in the subsequent process after the process is determined to be malicious code so that the process can be restored later.

상기 프로세스의 사전 행위의 로그를 저장하는 단계는 상기 프로세스의 파일 입출력(File I/O) 호출을 통하여 파일에 대한 이름 변경, 생성, 수정 및 삭제 중 적어도 일부에 대하여 기록하는 동작을 포함하도록 되어 있다.Wherein storing the log of the proactive behavior of the process includes recording at least some of the name change, creation, modification, and deletion of the file through a file I / O call of the process .

상기 탐지 모듈은 상기 프로세스가 대상 파일을 변경하려는 것을 감지하고(320). 상기 사전 행위의 로그에 적어도 일부 기초하여 상기 프로세스의 상기 대상 파일 변경이 의심 행동에 해당하는지 여부를 판단한다(330). 상기 의심 행동에 해당하는지 여부는 상기 사전 행위의 로그에 파일 확장자 변경, 연결되어 실행될 프로그램의 설정, 암호화 표시 파일 이름 변경, 상기 프로세스의 자기 복제 파일 생성, 그리고 결제 안내를 포함하는 파일 생성 행위 중 적어도 하나가 포함되는지 여부에 기초하여 판단될 수 있다. 상기 탐지 모듈은 상기 대상 파일의 변경이 의심 행동에 해당하는 것으로 판단되는 경우, 상기 대상 파일을 백업한다(340).The detection module senses (320) that the process is changing a target file. (330) whether the subject file change of the process corresponds to a suspicious behavior based at least in part on a log of the pre-act. Whether or not the suspicious behavior corresponds to at least one of a file creation operation including a file extension change, a setting of a program to be linked and executed, an encryption display file name change, a self-duplication file creation of the process, May be determined based on whether or not one is included. If it is determined that the change of the target file corresponds to a suspicious behavior, the detection module backs up the target file (340).

이후, 상기 탐지 모듈은 상기 프로세스가 악성 코드에 해당하는지 여부를 판단한다(350). 상기 프로세스가 악성 코드에 해당하는지 여부는 상기 대상 파일에 대하여 상기 프로세스에 의한 파일 헤더 내용, 파일 헤더 구조, 본문(body)의 내용, 본문의 크기, 본문의 엔트로피(entropy), 파일 이름 및 파일 업데이트 시간을 포함하는 이상 변경 사항(abnormal changes) 중 적어도 하나에 기초하여 판단될 수 있다. 상기 탐지 모듈은 상기 프로세스에 의한 상기 이상 변경 사항이 적어도 하나 이상의 파일에 대하여 발생했는지를 고려하여 상기 프로세스가 악성 코드에 해당하는지 여부를 판단할 수 있다. 특히, 대상 파일을 공개키 암호화 알고리즘으로 암호화하는 랜섬웨어의 경우인지 기초로 상기 프로세스가 악성 코드에 해당하는지 여부가 판단될 수 있다.Thereafter, the detection module determines whether the process corresponds to a malicious code (350). Whether or not the process corresponds to a malicious code is determined based on the file header content, the file header structure, the content of the body, the size of the main text, the entropy of the main text, the file name, And abnormal changes including time. ≪ RTI ID = 0.0 > [0031] < / RTI > The detection module may determine whether the process corresponds to a malicious code in consideration of whether the abnormal change caused by the process has occurred with respect to at least one or more files. In particular, it can be determined whether the process corresponds to malicious code based on whether the target file is encrypted with a public key encryption algorithm or not.

상기 탐지 모듈은 훼손된 파일의 수를 계수하고, 최대 허용 개수에 도달하기 전까지는 상기 프로세스의 사전 행위를 기록할 수 있다. 일 실시 예에서, 상기 탐지 모듈은 상기 프로세스에 의해 훼손된 파일의 수가 특정 값이 되는 경우 상기 프로세스가 악성 코드에 해당하는 것으로 판단할 수 있다. 상기 특정 값은 상기 사전 행위 기록을 위한 저장 공간의 크기에 기초하여 결정될 수 있다.The detection module counts the number of corrupted files and may record the proactive behavior of the process until the maximum allowed number is reached. In one embodiment, the detection module may determine that the process corresponds to a malicious code when the number of files damaged by the process becomes a specific value. The specific value may be determined based on the size of the storage space for the dictionary action recording.

한편, 상기 탐지 모듈이 원격지 장치에 의해 파일이 손상되는 것을 기초로 악성 코드의 접근이 이루어진 것으로 판단하는 경우, 상기 탐지 모듈은 상기 원격지 장치의 주소를 기반으로 파일 손상 행위 등을 수행하지 못하도록 접근을 차단할 수 있다.If the detection module determines that the malicious code has been accessed based on the damage of the file by the remote device, the detection module may access the remote device to prevent the file damage operation from being performed based on the address of the remote device Can be blocked.

상기 탐지 모듈은 상기 프로세스가 악성 코드에 해당하는 것으로 판단되는 경우, 상기 프로세스의 수행을 중단시킨다(360). 상기 탐지 모듈은 상기 프로세스를 원인으로 백업된 상기 대상 파일을 복원한다(370). 상기 탐지 모듈은 상기 사전 행위의 로그를 바탕으로 상기 프로세스의 상기 사전 행위를 복원시킨다(380).If it is determined that the process corresponds to a malicious code, the detection module stops performing the process (360). The detection module restores the target file backed up due to the process (370). The detection module restores the pre-act of the process based on the log of the pre-act (380).

도 44

도 4는 본 명세서에 개시된 기술이 채택될 수 있는 전자 장치이다.Figure 4 is an electronic device in which the techniques disclosed herein may be employed.

상기 전자 장치(400)의 구현 형태는 컴퓨터, 전자 장치 등 악성 코드가 설치되어 실행될 수 있는 환경을 제공할 수 있다. 상기 전자 장치(400)는 사전 행위의 로그, 대상 파일 및 백업 파일을 저장하는 저장부(410)을 포함할 수 있다. 또한 상기 전자 장치(400)는 상기 저장부와 연결되어 상기 대상 파일을 보호하기 위한 미니 필터 엔진을 실행하는 제어부를 포함할 수 있다. The implementation of the electronic device 400 may provide an environment in which malicious code, such as a computer or an electronic device, may be installed and executed. The electronic device 400 may include a storage unit 410 for storing a log of a pre-action, a target file, and a backup file. In addition, the electronic device 400 may include a control unit connected to the storage unit to execute a mini-filter engine for protecting the target file.

상기 미니 필터 엔진은 파일 입출력 처리 동작에 포함되어 수행되고, 상기 미니 필터 엔진은 실행 중인 프로세스의 사전 행위 로그를 상기 저장부에 저장하는 동작; 상기 프로세스가 대상 파일을 변경하려는 것을 감지하는 동작; 상기 사전 행위의 로그에 적어도 일부 기초하여 상기 프로세스의 상기 대상 파일 변경이 의심 행동에 해당하는지 여부를 판단하는 동작; 상기 대상 파일의 변경이 의심 행동에 해당하는 것으로 판단되는 경우, 상기 대상 파일을 상기 저장부에 백업하는 동작; 상기 프로세스가 악성 코드에 해당하는지 여부를 판단하는 동작; 상기 프로세스가 악성 코드에 해당하는 것으로 판단되는 경우, 상기 프로세스의 수행을 중단시키는 동작; 상기 프로세스를 원인으로 백업된 상기 대상 파일을 상기 저장부로부터 복원하는 동작; 및 상기 사전 행위의 로그를 바탕으로 상기 프로세스의 상기 사전 행위를 복원시키는 동작을 포함할 수 있다.Wherein the minifilter engine is included in a file input / output processing operation, the minifilter engine storing a preliminary action log of a running process in the storage; Detecting that the process is attempting to change a target file; Determining whether the subject file change of the process corresponds to a suspicious behavior based at least in part on a log of the dictionary action; Backing up the target file to the storage unit when it is determined that the change of the target file corresponds to a suspicious behavior; Determining whether the process corresponds to a malicious code; Stopping the execution of the process when it is determined that the process corresponds to a malicious code; Restoring the target file backed up due to the process from the storage unit; And restoring the proactive behavior of the process based on the log of the proactive act.

상기 전자 장치(400)는 예를 들어, 서비스 공급자의 서버, 클라이언트와 연관된 디바이스(예를 들어, 클라이언트 디바이스), 온 칩 시스템, 및/또는 임의의 다른 적절한 컴퓨팅 디바이스 또는 컴퓨팅 시스템일 수 있다. 나타낸 바와 같이 예시적인 전자 장치(400)는 저장부(410), 제어부(420), 서로 통신 가능하게 연결되는 하나 이상의 I/O 인터페이스를 포함할 수 있다. 도시되지는 않았지만, 전자 장치(400)는 다양한 컴포넌트들을 서로 연결시키는 시스템 버스 또는 다른 데이터 및 커맨드 전송시스템을 추가로 포함할 수 있다. 시스템 버스는 다양한 버스 아키텍처들 중 임의의 것을 이용하는 메모리 버스 또는 메모리 컨트롤러, 주변 버스, 범용 직렬 버스 및/또는 프로세서 또는 로컬 버스와 같은 상이한 버스 구조들 중 임의의 하나 또는 조합을 포함할 수 있다. 제어 또는 데이터 라인과 같은 다양한 다른 예도 고려된다. 제어부(420)는 하드웨어를 사용하여 하나 이상의 동작을 수행하는 기능을 나타낸다. 따라서, 제어부(420)는 프로세서, 기능 블록 등으로서 구성될 수 있는 하드웨어 요소를 포함할 수 있다. 이것은 하나 이상의 반도체를 사용하여 형성된 애플리케이션 특정 집적 회로 또는 다른 로직 디바이스로서 하드웨어로의 구현을 포함할 수 있다.The electronic device 400 may be, for example, a server of a service provider, a device associated with a client (e.g., a client device), an on-chip system, and / or any other suitable computing device or computing system. As shown, exemplary electronic device 400 may include a storage unit 410, a control unit 420, and one or more I / O interfaces communicatively coupled to one another. Although not shown, the electronic device 400 may further include a system bus or other data and command transmission system that interconnects the various components. The system bus may include any one or combination of different bus architectures, such as a memory bus or memory controller, a peripheral bus, a universal serial bus, and / or a processor or local bus using any of a variety of bus architectures. Various other examples such as control or data lines are also contemplated. The control unit 420 indicates a function of performing one or more operations using hardware. Accordingly, the control unit 420 may include hardware elements that can be configured as a processor, a functional block, and the like. This may include an implementation in hardware as an application specific integrated circuit or other logic device formed using one or more semiconductors.

이상에서 본 명세서의 기술에 대한 바람직한 실시 예가 첨부된 도면들을 참조하여 설명되었다. 여기서, 본 명세서 및 청구 범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니되며, 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야 한다.In the foregoing, preferred embodiments of the present invention have been described with reference to the accompanying drawings. Here, terms and words used in the present specification and claims should not be construed as limited to ordinary or dictionary terms, and should be construed in a sense and concept consistent with the technical idea of the present invention.

본 발명의 범위는 본 명세서에 개시된 실시 예들로 한정되지 아니하고, 본 발명은 본 발명의 사상 및 특허청구범위에 기재된 범주 내에서 다양한 형태로 수정, 변경, 또는 개선될 수 있다.The scope of the present invention is not limited to the embodiments disclosed in this specification, and the present invention can be modified, changed, or improved in various forms within the scope of the present invention and the claims.

Claims (12)

장치 내에 저장된 파일이 상기 장치와 다른 원격지 장치에서 실행되는 프로세스에 의하여 훼손되는 것을 방지하는 방법으로서,
상기 장치 내의 공유 저장 공간에 대하여 상기 원격지 장치에서 실행되는 원격 프로세스에 의해 발생된 사전 행위를 감지하고, 상기 감지된 사전 행위에 대한 로그를 상기 원격지 장치의 주소 별로 구분하여 저장하는 단계;
상기 원격지 장치에서 실행되는 상기 원격 프로세스가 상기 장치 내의 상기 공유 저장 공간 내의 대상 파일을 변경하려는 시도를 감지하는 단계;
상기 사전 행위의 로그를 기초로 상기 원격 프로세스의 상기 대상 파일에 대한 변경 시도가 무단 변경(abnormal changes) 행동에 해당하는지 여부를 판단하는 단계;
상기 대상 파일의 변경 시도가 무단 변경 행동에 해당하는 것으로 판단되는 경우, 상기 대상 파일을 미리 백업하는 단계;
상기 원격 프로세스가 상기 대상 파일에 대한 무단 변경 행동을 미리 정한 회수 이상 수행하는지 여부를 판단하는 단계;
상기 원격 프로세스가 상기 무단 변경 행동을 상기 미리 정한 회수 이상 수행하는 것으로 판단되는 경우, 상기 사전 행위의 로그를 기초로 식별되는 상기 원격지 장치의 주소로부터 상기 장치 내의 상기 공유 저장 공간에 대한 접근을 차단하는 단계;
상기 원격 프로세스를 원인으로 백업된 상기 대상 파일을 복원하는 단계; 및
상기 사전 행위의 로그 중 상기 원격지 장치의 주소에 해당하는 사전 행위를 복원시키는 단계를 포함하고,
상기 장치 내의 상기 공유 저장 공간은
상기 원격지 장치에 의해 접근이 가능하도록 상기 장치에 의해 공유된 것이고,
상기 사전 행위는
상기 대상 파일에 대한 직접적인 파일 작업을 수행하는 것이 아닌, 상기 저장 공간 내에 자기 복제 파일을 생성하는 행위및 복호화 대가를 위한 결제 안내를 포함하는 파일 생성 행위 중 적어도 하나를 포함하는 것을 특징으로 하는
파일 훼손 방지 방법.
CLAIMS What is claimed is: 1. A method for preventing a file stored in a device from being corrupted by a process running on the device and other remote devices,
Detecting a preliminary action generated by a remote process executed in the remote device with respect to a shared storage space in the device, and storing a log of the detected preliminary action by the address of the remote device;
The remote process executing on the remote device detecting an attempt to change a target file in the shared storage space in the device;
Determining whether an attempt to change the target file of the remote process corresponds to an abnormal change action based on the log of the dictionary action;
Backing up the target file in advance if it is determined that the change attempt of the target file corresponds to the unauthorized change behavior;
Determining whether the remote process performs an unauthorized change action on the target file more than a predetermined number of times;
Blocking access to the shared storage within the device from an address of the remote device identified based on the log of the dictionary action if it is determined that the remote process performs the unauthorized modification behavior more than the predetermined number of times step;
Restoring the target file backed up due to the remote process; And
And restoring a dictionary action corresponding to an address of the remote device in the log of the dictionary action,
The shared storage space within the device
The device being shared by the device so as to be accessible by the remote device,
The dictionary action
Generating a self-replicating file in the storage space, and generating a file including a payment guidance for decryption cost, instead of performing a direct file operation on the target file.
How to prevent file corruption.
제1 항에 있어서,
상기 대상 파일의 변경 시도가 무단 변경 행동에 해당하는지 여부를 판단하는 단계는
상기 대상 파일의 헤더 내용의 교체 여부, 상기 대상 파일의 본문의 엔트로피의 변화 여부, 상기 대상 파일의 헤더 구조가 이전과 다른 구조로 변경되었는지 여부, 또는 상기 대상 파일을 암호화 알고리즘으로 암호화하였는지 여부를 기초로 판단하는 것을 특징으로 하는 파일 훼손 방지 방법.
The method according to claim 1,
Wherein the step of determining whether the change attempt of the target file corresponds to an unauthorized change behavior
Whether or not the header content of the target file is replaced, whether the entropy of the main text of the target file changes, whether the header structure of the target file is changed to a different structure from the previous one, Quot ;. < / RTI >
제2 항에 있어서,
상기 원격지 장치에서 실행되는 상기 프로세스가 상기 대상 파일을 복호화하기 위한 대가를 제시하는 랜섬웨어(ransomware)인 것으로 판단되는 경우, 상기 원격지 장치의 주소를 기초로 상기 랜섬웨어의 상기 장치에 대한 접근을 차단하는 것을 특징으로 하는 파일 훼손 방지 방법.
3. The method of claim 2,
When the process executed in the remote device is judged to be ransomware for presenting a price for decrypting the object file, access of the Ransomware to the device is blocked based on the address of the remote device And the file is deleted.
제3 항에 있어서,
상기 사전 행위는 상기 원격지 장치에서 실행되는 랜섬웨어가 설계 목적상 예상되는 예비적인 행동인 것을 특징으로 하는 파일 훼손 방지 방법.
The method of claim 3,
Wherein the preliminary action is a preliminary action expected from a design purpose for the RANCOMM running on the remote device.
컴퓨터를 이용하여 제1항 내지 제4항 중 어느 한 항에 기재된 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.A computer program stored on a medium for carrying out the method of any one of claims 1 to 4 using a computer. 제1항 내지 제4항 중 어느 한 항에 기재된 방법을 컴퓨터로 실행시키기 위한 프로그램이 저장된 서버.A server for storing a program for causing a computer to execute the method according to any one of claims 1 to 4. 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020170029539A 2017-03-08 2017-03-08 Context-aware ransomware detection KR101828600B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170029539A KR101828600B1 (en) 2017-03-08 2017-03-08 Context-aware ransomware detection
PCT/KR2018/002758 WO2018164503A1 (en) 2017-03-08 2018-03-08 Context awareness-based ransomware detection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170029539A KR101828600B1 (en) 2017-03-08 2017-03-08 Context-aware ransomware detection

Publications (1)

Publication Number Publication Date
KR101828600B1 true KR101828600B1 (en) 2018-03-22

Family

ID=61901084

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170029539A KR101828600B1 (en) 2017-03-08 2017-03-08 Context-aware ransomware detection

Country Status (2)

Country Link
KR (1) KR101828600B1 (en)
WO (1) WO2018164503A1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190096686A (en) * 2018-02-09 2019-08-20 주식회사 안랩 Malware preventing system anf method based on access controlling for data file
WO2020028152A1 (en) * 2018-07-30 2020-02-06 Oscar Chen Ransomware infection detection in filesystems
KR20210107455A (en) * 2020-02-24 2021-09-01 신한카드 주식회사 Apparatus and method for determinating abnormal financial transaction
WO2022211511A1 (en) * 2021-03-31 2022-10-06 계명대학교 산학협력단 Detection method of ransomware, restoration method, and computing device for performing such methods
KR20220135649A (en) * 2021-03-31 2022-10-07 계명대학교 산학협력단 Method of detecting and restoration for ransomeware, and computing device for performing the method
KR20220135648A (en) * 2021-03-31 2022-10-07 계명대학교 산학협력단 Method of detecting for ransomeware, and computing device for performing the method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101436494B1 (en) * 2013-03-07 2014-09-01 주식회사 안랩 Malicious code infection system and malicious code infection method
US20150172304A1 (en) 2013-12-16 2015-06-18 Malwarebytes Corporation Secure backup with anti-malware scan
US20160378988A1 (en) * 2015-06-26 2016-12-29 Quick Heal Technologies Private Limited Anti-ransomware

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101327740B1 (en) * 2011-12-26 2013-11-11 ㈜ 와이에이치 데이타베이스 apparatus and method of collecting action pattern of malicious code
US9317686B1 (en) * 2013-07-16 2016-04-19 Trend Micro Inc. File backup to combat ransomware
KR101710918B1 (en) * 2015-11-30 2017-02-28 (주)이스트소프트 Method for monitoring malwares which encrypt user files

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101436494B1 (en) * 2013-03-07 2014-09-01 주식회사 안랩 Malicious code infection system and malicious code infection method
US20150172304A1 (en) 2013-12-16 2015-06-18 Malwarebytes Corporation Secure backup with anti-malware scan
US20160378988A1 (en) * 2015-06-26 2016-12-29 Quick Heal Technologies Private Limited Anti-ransomware

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190096686A (en) * 2018-02-09 2019-08-20 주식회사 안랩 Malware preventing system anf method based on access controlling for data file
KR102034678B1 (en) * 2018-02-09 2019-10-21 주식회사 안랩 Malware preventing system anf method based on access controlling for data file
WO2020028152A1 (en) * 2018-07-30 2020-02-06 Oscar Chen Ransomware infection detection in filesystems
US11120131B2 (en) 2018-07-30 2021-09-14 Rubrik, Inc. Ransomware infection detection in filesystems
US11783036B2 (en) 2018-07-30 2023-10-10 Rubrik, Inc. Ransomware infection detection in filesystems
KR20210107455A (en) * 2020-02-24 2021-09-01 신한카드 주식회사 Apparatus and method for determinating abnormal financial transaction
KR102367470B1 (en) * 2020-02-24 2022-02-24 신한카드 주식회사 Apparatus and method for determinating abnormal financial transaction
WO2022211511A1 (en) * 2021-03-31 2022-10-06 계명대학교 산학협력단 Detection method of ransomware, restoration method, and computing device for performing such methods
KR20220135649A (en) * 2021-03-31 2022-10-07 계명대학교 산학협력단 Method of detecting and restoration for ransomeware, and computing device for performing the method
KR20220135648A (en) * 2021-03-31 2022-10-07 계명대학교 산학협력단 Method of detecting for ransomeware, and computing device for performing the method
KR102494454B1 (en) * 2021-03-31 2023-02-06 계명대학교 산학협력단 Method of detecting and restoration for ransomeware, and computing device for performing the method
KR102494442B1 (en) * 2021-03-31 2023-02-06 계명대학교 산학협력단 Method of detecting for ransomeware, and computing device for performing the method

Also Published As

Publication number Publication date
WO2018164503A1 (en) 2018-09-13

Similar Documents

Publication Publication Date Title
KR101828600B1 (en) Context-aware ransomware detection
CN112074836B (en) Apparatus and method for protecting data through trusted execution environment
US10303877B2 (en) Methods of preserving and protecting user data from modification or loss due to malware
US10169586B2 (en) Ransomware detection and damage mitigation
CA3040115C (en) Method and system for countering ransomware
US11227053B2 (en) Malware management using I/O correlation coefficients
US9317686B1 (en) File backup to combat ransomware
US9990511B1 (en) Using encrypted backup to protect files from encryption attacks
US20190158512A1 (en) Lightweight anti-ransomware system
US20190087572A1 (en) Ransomware attack monitoring
US10783041B2 (en) Backup and recovery of data files using hard links
US10831888B2 (en) Data recovery enhancement system
CN115329389B (en) File protection system and method based on data sandbox
TWI607338B (en) Storage device, data protection method therefor, and data protection system
US9881154B2 (en) Hardware-assisted log protection devices and systems
CN109214204B (en) Data processing method and storage device
JP2013164732A (en) Information processor
JP2007072969A (en) Operation history protection device and operation history protection program
KR102111556B1 (en) Systems and methods for detection and prevention of Ransomware
CN109145602B (en) Lesso software attack protection method and device
KR20180054389A (en) Client device and back-up method based on cloud, recording medium for performing the method
KR101904415B1 (en) System recovery method in advanced persistent threat
Wolf Ransomware detection
KR20190072784A (en) Method of profiling runtime feature
US11960606B2 (en) System and method for protecting against data storage attacks

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant