KR20200052524A - An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof and computer recordable medium storing program to perform the method - Google Patents

An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof and computer recordable medium storing program to perform the method Download PDF

Info

Publication number
KR20200052524A
KR20200052524A KR1020180135537A KR20180135537A KR20200052524A KR 20200052524 A KR20200052524 A KR 20200052524A KR 1020180135537 A KR1020180135537 A KR 1020180135537A KR 20180135537 A KR20180135537 A KR 20180135537A KR 20200052524 A KR20200052524 A KR 20200052524A
Authority
KR
South Korea
Prior art keywords
program
spoofing
camouflage
white
detected
Prior art date
Application number
KR1020180135537A
Other languages
Korean (ko)
Other versions
KR102149711B1 (en
Inventor
반규태
박종화
Original Assignee
주식회사 이스트시큐리티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 이스트시큐리티 filed Critical 주식회사 이스트시큐리티
Priority to KR1020180135537A priority Critical patent/KR102149711B1/en
Publication of KR20200052524A publication Critical patent/KR20200052524A/en
Application granted granted Critical
Publication of KR102149711B1 publication Critical patent/KR102149711B1/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

Landscapes

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

Abstract

The present invention relates to an apparatus for detecting and preventing ransomware behavior using a spoofing process, a method thereof, and a computer-readable recording medium in which a program for performing the method is recorded. According to the present invention, the apparatus for detecting and preventing ransomware behavior includes: a spoofing program creation module that generates and executes a spoofing program; and a spoofing program monitoring module which determines, when a program attempting to terminate the spoofing program is detected by monitoring the spoofing program, the detected program as ransomware, terminates the detected program, and isolates the detected program.

Description

위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체{An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof and computer recordable medium storing program to perform the method} An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof, and a computer readable recording medium having a method therefor and a program for performing the method recordable medium storing program to perform the method}

본 발명은 랜섬웨어 행위 탐지 및 방지 기술에 관한 것으로, 보다 상세하게는, 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체에 관한 것이다. The present invention relates to a technology for detecting and preventing ransomware behavior, and more particularly, to a device for detecting and preventing ransomware behavior using a spoofing process, a method therefor, and a computer readable recording medium having a program for performing the method It is about.

최근 유포되는 랜섬웨어의 경우 사용자의 데이터를 효과적으로 암호화하기 위해 각종 프로그램들을 암호화 전 종료시킨다. 즉, 최근의 랜섬웨어는 사용자 문서 파일 또는 데이터들을 타겟으로 암호화 하기에 앞서 해당 파일들을 실행시켜주는 프로그램들을 찾아 종료한다. 예컨대, 최근 유행하는 "Gandcrab" 랜섬웨어의 경우 랜섬 행위, 즉, 데이터를 암호화하는 행위를 하기 전에 실행되고 있는 모든 프로세스 목록에서 Office, SQL 관련 이름(실제 찾는 프로세스명 : oracle.exe, sqlservr.exe, mysqld.exe onenote.exe, outllok.exe, powerpnt.exe, excel.exe 등)을 찾아 종료한다. 열려있는 파일이 더욱 중요하고 가치 있는 문서일 수 있다는 공격자들의 판단이 고려되었음을 유추할 수 있다. In the case of ransomware distributed recently, various programs are terminated before encryption to effectively encrypt the user's data. That is, the recent ransomware finds and terminates programs that execute the files before encrypting the user document file or data as a target. For example, in the case of the recently popular "Gandcrab" ransomware, Office, SQL related names (actually looking process name: oracle.exe, sqlservr.exe) in the list of all processes that are running before the ransom action, that is, the data encryption action. , mysqld.exe onenote.exe, outllok.exe, powerpnt.exe, excel.exe, etc.) and exit. It can be inferred that attackers' judgment that open files could be more important and valuable documents was taken into account.

종래 기술은 암호화 로직이 동작하는 시점에 행위를 탐지하기 때문에 행위를 탐지한 경우에도 일부 파일은 암호화가 진행될 수도 있다. 예컨대, 더미 파일을 감시하는 방어 로직은 곳곳에 더미 파일을 설치해야 할 뿐만 아니라 암호화되는 순서가 특정된 악성코드라면 랜섬행위를 막지 못 할 가능성이 존재한다. Since the prior art detects an action at the time the encryption logic operates, some files may be encrypted even when the action is detected. For example, the defense logic that monitors dummy files not only needs to install dummy files everywhere, but there is a possibility that if the order of encryption is malicious code, the ransom action cannot be prevented.

[선행기술문헌][Advanced technical literature]

[특허문헌] 한국공개특허 제1850650호 2018년 04월 13일 등록 (명칭: 랜섬웨어탐지를 수행하는 이동식저장장치 및 이를 위한 방법) [Patent Document] Korean Patent Publication No. 1850650 registered on April 13, 2018 (Name: Removable storage device for performing ransomware detection and method for same)

본 발명의 목적은 랜섬웨어가 랜섬 행위를 시작하기 전에 탐지하여 랜섬 행위를 방지할 수 있는 장치, 이를 위한 방법 및 이 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공함에 있다. An object of the present invention is to provide a computer readable recording medium in which a ransomware detects before starting a ransom action and prevents the ransom action, a method therefor, and a program for performing the method.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 랜섬웨어 행위 탐지 및 방지 장치는, 위장프로그램을 생성하여 실행시키는 위장프로그램생성모듈과, 상기 위장프로그램을 모니터링하여 상기 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되면, 상기 검출된 프로그램을 랜섬웨어로 판단하고, 상기 검출된 프로그램을 종료시키고, 격리시키는 위장프로그램감시모듈을 포함한다. Ransomware behavior detection and prevention device according to a preferred embodiment of the present invention for achieving the above object, the camouflage program generation module for generating and executing a camouflage program, and monitoring the camouflage program for the camouflage program And a spoofing program monitoring module that detects the detected program as ransomware, terminates the detected program, and isolates the detected program.

상기 위장프로그램감시모듈은 상기 위장프로그램의 프로세스 종료 함수를 후킹(hooking)하여 상기 위장프로그램에 대한 종료를 시도하는 프로그램을 검출하는 것을 특징으로 한다. The spoofing program monitoring module hooks a process termination function of the spoofing program and detects a program attempting to terminate the spoofing program.

상기 랜섬웨어 행위 탐지 및 방지 장치는, 화이트프로그램을 선택하고, 선택된 화이트프로그램에 대한 식별정보를 포함하는 화이트프로그램 데이터베이스를 구성하는 화이트프로그램DB생성모듈을 더 포함한다. 이때, 상기 위장프로그램감시모듈은 상기 위장프로그램에 대한 종료를 시도하는 프로그램이 상기 화이트프로그램 데이터베이스에 포함되어 있으면, 상기 검출된 프로그램을 정상 프로그램으로 판단하고, 상기 검출된 프로그램에 대한 격리 프로세스를 중단하는 것을 특징으로 한다. The ransomware behavior detection and prevention device further includes a white program DB creation module for selecting a white program and configuring a white program database including identification information for the selected white program. At this time, if the program that attempts to end the spoofing program is included in the white program database, the spoofing program monitoring module determines the detected program as a normal program and stops the quarantine process for the detected program. It is characterized by.

상기 화이트프로그램DB생성모듈은 윈도우 시스템 파일과 백신 프로그램을 검색하여 상기 화이트프로그램 데이터베이스에 포함시키는 것을 특징으로 한다. The white program DB creation module is characterized in that it searches for Windows system files and vaccine programs and includes them in the white program database.

상기 화이트프로그램DB생성모듈은 사용자에 의해 선택된 프로그램을 상기 화이트프로그램 데이터베이스에 포함시키는 것을 특징으로 한다. The white program DB creation module is characterized in that the program selected by the user is included in the white program database.

상기 위장프로그램생성모듈은 상기 위장프로그램을 생성한 후, 상기 위장프로그램의 전체 경로가 포함된 정보를 암호화여 저장하는 것을 특징으로 한다. The spoofing program generation module is characterized in that after generating the spoofing program, the information including the entire path of the spoofing program is encrypted and stored.

상기 위장프로그램생성모듈은 랜덤 이름의 폴더를 자동으로 생성한 후, 생성된 폴더에 위장프로그램을 생성하는 것을 특징으로 한다. The camouflage program creation module is characterized in that it automatically creates a folder with a random name and then creates a camouflage program in the created folder.

상기 위장프로그램생성모듈은 사용자의 설정에 따라 사용자가 지정한 폴더에 위장프로그램 파일을 생성하는 것을 특징으로 한다. The camouflage program creation module is characterized in that it creates a camouflage program file in a folder designated by the user according to the user's settings.

상기 위장프로그램감시모듈은 랜섬웨어로 판단된 프로그램에 대해 이력 로그 파일을 생성하는 것을 특징으로 한다. The spoofing program monitoring module is characterized by generating a history log file for a program determined to be ransomware.

상술한 바와 같은 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 랜섬웨어 행위 탐지 및 방지 방법은 위장프로그램생성모듈이 위장프로그램을 실행시키는 단계와, 상기 위장프로그램감시모듈이 상기 위장프로그램을 모니터링하여 상기 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되는지 여부를 판별하는 단계와, 상기 판별 결과, 상기 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되면, 상기 위장프로그램감시모듈이 상기 검출된 프로그램이 화이트프로그램 데이터베이스에 포함된 프로그램인지 여부를 판단하는 단계와, 상기 판단 결과, 상기 검출된 프로그램이 상기 화이트프로그램 데이터베이스에 포함된 프로그램이 아니면, 위장프로그램감시모듈은 상기 검출된 프로그램을 랜섬웨어로 판단하고, 상기 검출된 프로그램을 종료시킨 후, 격리하는 단계를 포함한다. Ransomware behavior detection and prevention method according to a preferred embodiment of the present invention for achieving the above object is a step of executing the camouflage program generation module, and the camouflage program monitoring module monitors the camouflage program Determining whether a program attempting to end the spoofing program is detected, and when a program attempting to end the spoofing program is detected as a result of the determination, the spoofing program monitoring module detects that the detected program is white. Determining whether it is a program included in a program database, and as a result of the determination, if the detected program is not a program included in the white program database, the spoofing program monitoring module determines the detected program as ransomware, The detected frame Then end the program, and a step of isolation.

상기 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되는지 여부를 판별하는 단계는 상기 위장프로그램감시모듈이 상기 위장프로그램의 프로세스 종료 함수가 호출되면, 상기 위장프로그램의 프로세스 종료 함수에 삽입된 후킹 코드를 통해 상기 위장프로그램에 대한 종료를 시도하는 프로그램을 검출하는 단계를 포함한다.The step of determining whether a program attempting to terminate the spoofing program is detected is through the hooking code inserted into the process termination function of the spoofing program when the spoofing program monitoring module is called when the process termination function of the spoofing program is called. And detecting a program attempting to end the spoofing program.

상기 화이트프로그램 데이터베이스에 포함된 프로그램인지 여부를 판단하는 단계 후, 상기 판단 결과, 상기 검출된 프로그램이 상기 화이트프로그램 데이터베이스에 포함된 프로그램이면, 상기 검출된 프로그램을 정상 프로그램으로 판단하고, 상기 검출된 프로그램에 대한 격리 프로세스를 중단하는 단계를 더 포함한다. After the step of determining whether the program is included in the white program database, if, as a result of the determination, the detected program is a program included in the white program database, the detected program is determined as a normal program, and the detected program Further comprising stopping the quarantine process.

상기 위장프로그램을 실행시키는 단계는 상기 위장프로그램생성모듈이 상기 위장프로그램을 생성하는 단계와, 상기 화이트프로그램DB생성모듈이 상기 화이트프로그램 데이터베이스를 구성하는 단계와, 상기 위장프로그램생성모듈이 상기 생성된 위장프로그램을 실행시키는 단계를 포함한다. In the step of executing the camouflage program, the camouflage program generation module generates the camouflage program, the white program DB generation module configures the white program database, and the camouflage program generation module generates the camouflage. And running the program.

상기 위장프로그램을 생성하는 단계는 상기 위장프로그램생성모듈이 사용자의 설정에 따라 사용자가 지정한 폴더에 위장프로그램 파일을 생성하거나, 랜덤 이름의 폴더를 자동으로 생성한 후, 생성된 폴더에 위장프로그램을 생성하는 단계를 포함한다. In the step of generating the spoofing program, the spoofing program generation module generates a spoofing program file in a folder designated by the user according to the user's setting, or automatically generates a folder with a random name, and then spoofing the program in the created folder. It includes the steps.

상기 위장프로그램을 생성하는 단계는 상기 위장프로그램생성모듈이 상기 위장프로그램을 생성한 후, 상기 위장프로그램의 전체 경로가 포함된 정보를 암호화여 저장하는 단계를 포함한다. The step of generating the spoofing program includes the step of encrypting and storing information including the entire path of the spoofing program after the spoofing program generation module generates the spoofing program.

상기 화이트프로그램 데이터베이스를 구성하는 단계는 상기 화이트프로그램DB생성모듈이 윈도우 시스템 파일과 백신 프로그램을 검색하여 상기 화이트프로그램 데이터베이스에 포함시키는 단계를 포함한다. The step of configuring the white program database includes the step of the white program DB creation module searching for a Windows system file and an anti-virus program and including it in the white program database.

상기 화이트프로그램 데이터베이스를 구성하는 단계는 상기 화이트프로그램DB생성모듈이 사용자에 의해 선택된 프로그램을 상기 화이트프로그램 데이터베이스에 포함시키는 단계를 포함한다. The step of configuring the white program database includes the step in which the white program DB creation module includes a program selected by a user in the white program database.

상기 격리하는 단계 후, 상기 위장프로그램감시모듈이 상기 격리된 프로그램에 대해 이력 로그 파일을 생성하는 단계를 더 포함한다. After the quarantine step, the spoofing program monitoring module further includes generating a history log file for the quarantined program.

그리고 전술한 본 발명의 실시예에 따른 랜섬웨어 행위 탐지 및 방지 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체를 제공한다. And it provides a computer-readable recording medium in which a program for performing a method for detecting and preventing ransomware behavior according to the above-described embodiment of the present invention is recorded.

본 발명은 랜섬웨어가 암호화 행위, 즉, 랜섬 행위를 하기 전, 데이터를 관리하는 응용프로그램들을 일제히 종료하는 점에 착안하여, 응용프로그램으로 위장한 프로그램, 즉, 위장프로그램을 실행시킨 후, 실행된 위장프로그램의 종료를 시도하는 프로그램을 검출하여, 그 프로그램을 차단하고, 종료시킴으로써 이후에 수행되는 랜섬 행위를 사전에 방어할 수 있다. The present invention focuses on the fact that the ransomware closes all applications that manage data before performing the encryption act, that is, the ransom act, and then executes a program disguised as an application program, that is, a disguised program, and then executed. By detecting a program attempting to end the program, blocking the program, and terminating it, it is possible to proactively defend the ransom action performed later.

더욱이, 본 발명은 검출된 프로그램이 시스템 모듈, 백신 등과 같은 정상적인 프로그램일 수 있기 때문에, 화이트프로그램 데이터베이스를 통해 이러한 오인 탐지를 방지한다. 이에 따라, 정상 프로그램과 혼동 없이 랜섬웨어로부터 사용자 문서 및 데이터들을 보호할 수 있다. Moreover, the present invention prevents such a false detection through the white program database because the detected program may be a normal program such as a system module, a vaccine, or the like. Accordingly, user documents and data can be protected from ransomware without being confused with a normal program.

도 1은 본 발명의 실시 예에 따른 컴퓨팅 장치를 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 장치를 설명하기 위한 블록도이다.
도 3은 본 발명의 실시예에 따른 위장 프로세스를 실행하는 방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 실시예에 따른 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 방법을 설명하기 위한 흐름도이다.
1 is a view for explaining a computing device according to an embodiment of the present invention.
2 is a block diagram illustrating an apparatus for detecting and preventing ransomware behavior using a spoofing process according to an embodiment of the present invention.
3 is a flowchart for explaining a method of executing a spoofing process according to an embodiment of the present invention.
4 is a flowchart illustrating a method for detecting and preventing ransomware behavior using a spoofing process according to an embodiment of the present invention.

본 발명의 상세한 설명에 앞서, 이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위해 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 가장 바람직한 실시예에 불과할 뿐, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다. Prior to the detailed description of the present invention, the terms or words used in the present specification and claims described below should not be interpreted as being limited to the ordinary or lexical meanings, and the inventors of their own inventions in the best way. In order to explain, it should be interpreted as meanings and concepts consistent with the technical spirit of the present invention based on the principle that it can be properly defined as a concept of terms. Therefore, the embodiments shown in the embodiments and the drawings described in this specification are only the most preferred embodiments of the present invention, and do not represent all of the technical spirit of the present invention, and various equivalents that can replace them at the time of this application It should be understood that there may be water and variations.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음을 유의해야 한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지의 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 또는 개략적으로 도시되었으며, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. At this time, it should be noted that the same components are denoted by the same reference numerals in the accompanying drawings. In addition, detailed descriptions of well-known functions and configurations that may obscure the subject matter of the present invention will be omitted. For the same reason, in the accompanying drawings, some components are exaggerated, omitted, or schematically illustrated, and the size of each component does not entirely reflect the actual size.

본 발명의 실시예는 컴퓨팅 연산을 수행하는 컴퓨팅 장치에서 실행될 수 있으며, 이러한 컴퓨터 시스템에 의해 실행되고 있는 프로그램 모듈과 같은 컴퓨터 실행가능 명령어와 관련하여 기술될 수 있다. 일반적으로, 프로그램 모듈은 특정 태스크를 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포함한다. 컴퓨터 실행가능 명령어, 관련 데이터 구조, 및 프로그램 모듈은 본 명세서에 개시된 발명의 행위를 실행하는 프로그램 코드 수단의 예를 나타낸다. 이에 따라, 본 발명이 구현될 수 있는 컴퓨팅 장치에 대한 설명을 제공하고자 한다. 도 1은 본 발명의 실시 예에 따른 컴퓨팅 장치를 설명하기 위한 도면이다. Embodiments of the present invention may be executed in a computing device that performs computing operations, and may be described in connection with computer-executable instructions, such as program modules, being executed by such a computer system. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types. Computer-executable instructions, associated data structures, and program modules represent examples of program code means for performing the acts of the invention disclosed herein. Accordingly, it is intended to provide a description of a computing device in which the present invention can be implemented. 1 is a view for explaining a computing device according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 실시예에 따른 컴퓨팅 장치는 프로세싱 유닛(11), 시스템 메모리(12), 및 시스템 메모리(12)를 포함하는 다양한 시스템 컴포넌트를 프로세싱 유닛(11)에 연결시키는 시스템 버스(10)를 포함한다. Referring to FIG. 1, a computing device according to an embodiment of the present invention includes a system for connecting various processing system components including the processing unit 11, the system memory 12, and the system memory 12 to the processing unit 11 It includes a bus 10.

프로세싱 유닛(11)은 본 발명의 특징을 구현하도록 설계된 컴퓨터-실행가능 명령어를 실행시킬 수 있다. 프로세싱 유닛(11)은 중앙처리장치(CPU: Central Processing Unit), 애플리케이션 프로세서(Application Processor), 디지털신호처리기(DSP: Digital Signal Processor) 등을 예시할 수 있다. The processing unit 11 is capable of executing computer-executable instructions designed to implement the features of the present invention. The processing unit 11 may exemplify a central processing unit (CPU), an application processor (DSP), a digital signal processor (DSP), and the like.

시스템 버스(10)는 다양한 버스 아키텍처 중의 임의의 것을 사용하는 로컬 버스, 주변 버스, 및 메모리 버스 또는 메모리 컨트롤러를 포함하는 몇 가지 유형의 버스 구조 중의 임의의 것일 수 있다. 시스템 메모리(12)는 ROM(Read Only Memory)(12a) 및 RAM(Random Access Memory)(12b)을 포함한다. 시동 중에 컴퓨팅 장치 내의 구성요소들 간에 정보를 전송하는 것을 돕는 기본 루틴을 포함하는 기본 입출력 시스템(BIOS)(13a)은 일반적으로 ROM(12a)에 저장될 수 있다.System bus 10 may be any of several types of bus structures including a local bus, peripheral bus, and memory bus or memory controller using any of a variety of bus architectures. The system memory 12 includes a read only memory (ROM) 12a and a random access memory (RAM) 12b. A basic input / output system (BIOS) 13a, which includes basic routines that help transfer information between components within the computing device during startup, may generally be stored in ROM 12a.

컴퓨팅 장치는 저장 수단을 포함할 수 있는데, 예를 들어, 하드디스크로부터 정보를 판독하거나 그 하드디스크에 정보를 기록하는 하드디스크 드라이브(15), 자기디스크로부터 정보를 판독하거나 그 자기디스크에 정보를 기록하는 자기디스크 드라이브(16), 및 예를 들면, CD-ROM 또는 기타 광 매체 등의 광디스크로부터 정보를 판독하거나 그 광디스크에 정보를 기록하는 광디스크 드라이브(17)를 포함할 수 있다. 하드디스크 드라이브(15), 자기디스크 드라이브(16), 및 광디스크 드라이브(17)는 각각 하드디스크 드라이브 인터페이스(18), 자기디스크 드라이브 인터페이스(19), 및 광드라이브 인터페이스(20)에 의해 시스템 버스(10)에 접속된다. The computing device may include a storage means, for example, a hard disk drive 15 that reads information from a hard disk or writes information to the hard disk, reads information from a magnetic disk, or writes information to the magnetic disk. And a magnetic disk drive 16 for recording, and an optical disk drive 17 for reading information from an optical disk, such as a CD-ROM or other optical medium, or recording information on the optical disk. The hard disk drive 15, the magnetic disk drive 16, and the optical disk drive 17 are respectively connected to the system bus (by the hard disk drive interface 18, the magnetic disk drive interface 19, and the optical drive interface 20). 10).

또한, 컴퓨팅 장치는 저장 수단으로서 외장 메모리(21)를 더 구비할 수 있다. 상기 외장 메모리(21)는 입출력 인터페이스(24)를 통해서 시스템 버스(10)에 접속될 수 있다.In addition, the computing device may further include an external memory 21 as a storage means. The external memory 21 may be connected to the system bus 10 through the input / output interface 24.

상술한 드라이브 및 그 드라이브에 의해 판독 및 기록되는 관련 컴퓨터 판독가능 매체는 컴퓨터 실행가능 명령어, 데이터 구조, 프로그램 모듈 및 기타 데이터의 비휘발성 저장을 제공한다. 본 명세서에서 기술된 예시적인 환경은 하드디스크(15), 자기디스크(16) 및 광디스크(17)를 예시하고 있으나, 이외에 자기 카세트, 플래시 메모리 카드, DVD, 베르누이 카트리지(Bernoulli cartridge), RAM, ROM, SSD 등을 포함하는, 데이터를 저장하는 다른 유형의 컴퓨터 판독가능 매체가 이용될 수 있다. The drives described above and related computer readable media that are read and written by the drive provide non-volatile storage of computer executable instructions, data structures, program modules and other data. Exemplary environments described herein illustrate the hard disk 15, the magnetic disk 16 and the optical disk 17, but in addition, a magnetic cassette, flash memory card, DVD, Bernoulli cartridge, RAM, ROM Other types of computer readable media for storing data, including SSDs, may be used.

프로세싱 유닛(11)에 의해 로드되어 실행되는, 오퍼레이팅 시스템(13b), 하나 이상의 애플리케이션 프로그램(13c), 기타 프로그램 모듈(13d), 및 프로그램 데이터(13c)를 포함하는 하나 이상의 프로그램 모듈을 포함하는 프로그램 코드 수단은 하드디스크(15), 자기디스크(16), 광디스크(17), ROM(12a) 또는 RAM(12b)에 저장될 수 있다. A program including one or more program modules including an operating system 13b, one or more application programs 13c, other program modules 13d, and program data 13c, loaded and executed by the processing unit 11 The code means can be stored in the hard disk 15, the magnetic disk 16, the optical disk 17, the ROM 12a or the RAM 12b.

아울러, 상기 컴퓨팅 시스템은, 키보드, 포인팅 장치, 마이크로폰, 조이 스틱, 게임 패드, 스캐너, 등과 같은 기타 입력 장치(22)를 통해 사용자로부터 명령 및 정보를 입력 받을 수 있다. 또한 카메라 모듈과 같은 이미지 입력 센서를 통해 촬영되고 있는 이미지를 입력 받을 수 있다. 이들 입력 장치(22)는 시스템 버스(10)에 연결된 입출력 인터페이스(24)를 통해 프로세싱 유닛(11)에 접속될 수 있다. 입출력 인터페이스(24)는 예를 들면, 직렬 포트 인터페이스, PS/2 인터페이스, 병렬 포트 인터페이스, USB 인터페이스, IEEE(Institute of Electrical and Electronics Engineers) 1394 인터페이스(즉, 파이어와이어(FireWire) 인터페이스)와 같은 매우 다양한 서로 다른 인터페이스 중 임의의 것을 논리적으로 나타내거나, 다른 인터페이스의 조합까지도 논리적으로 나타낼 수 있다. In addition, the computing system may receive commands and information from a user through other input devices 22 such as a keyboard, pointing device, microphone, joystick, game pad, scanner, and the like. In addition, an image being photographed may be input through an image input sensor such as a camera module. These input devices 22 can be connected to the processing unit 11 via an input / output interface 24 connected to the system bus 10. The input / output interface 24 is very useful such as, for example, a serial port interface, a PS / 2 interface, a parallel port interface, a USB interface, an Institute of Electrical and Electronics Engineers (IEEE) 1394 interface (i.e., a FireWire interface). Any of a variety of different interfaces may be logically represented, or even combinations of other interfaces may be logically represented.

또한, 본 발명의 실시예에 따른 컴퓨팅 장치는 모니터 혹은 LCD와 같은 디스플레이 장치(26) 또는 스피커나 마이크로폰과 같은 오디오 장치(27)를 더 포함할 수 있다. 이들(26, 27)은 비디오/오디오 인터페이스(25)를 통해서 시스템 버스(10)에 접속된다. 예를 들면, 스피커 및 프린터 등의 도시되지 않은 기타 주변 출력 장치가 컴퓨팅 장치에 또한 접속될 수 있다. 비디오/오디오 인터페이스부(25)는 HDMI(High Definition Multimedia Interface), GDI(Graphics Device Interface) 등을 포함할 수 있다. In addition, the computing device according to an embodiment of the present invention may further include a display device 26 such as a monitor or LCD or an audio device 27 such as a speaker or microphone. These 26 and 27 are connected to the system bus 10 via a video / audio interface 25. For example, other peripheral output devices (not shown) such as speakers and printers may also be connected to the computing device. The video / audio interface unit 25 may include a high definition multimedia interface (HDMI), graphics device interface (GDI), or the like.

또한, 본 발명을 실행하는 컴퓨팅 장치는 예를 들면, 사무실-광역 또는 기업-광역 컴퓨터 네트워크, 홈 네트워크, 인트라넷, 및/또는 인터넷과 같은 네트워크에 접속 가능하다. 컴퓨팅 장치는 이러한 네트워크를 통해, 예를 들면, 원격 컴퓨터 시스템, 원격 애플리케이션, 및/또는 원격 데이터베이스와 같은 외부 소스들과의 데이터를 교환할 수 있다. 이를 위해 본 발명이 적용되는 컴퓨팅 장치는 외부 소스로부터 데이터를 수신하고/거나 외부 소스로 데이터를 전송하는 네트워크 인터페이스(27)를 포함한다. Further, the computing device implementing the present invention is connectable to a network such as, for example, an office-wide or enterprise-wide computer network, a home network, an intranet, and / or the Internet. The computing device can exchange data with external sources such as, for example, a remote computer system, a remote application, and / or a remote database. To this end, the computing device to which the present invention is applied includes a network interface 27 for receiving data from an external source and / or transmitting data to an external source.

본 발명의 실시예에 따른 컴퓨팅 장치는 네트워크 인터페이스(28)를 통해서 원격지에 위치한 장치와 정보를 송수신할 수 있다. The computing device according to an embodiment of the present invention may transmit and receive information to and from a device located at a remote location through the network interface 28.

네트워크 인터페이스(28)는 예를 들면, 네트워크 인터페이스 카드 및 대응하는 네트워크 드라이버 인터페이스 사양(Network Driver Interface Specification: "NDIS") 스택과 같은 하나 이상의 소프트웨어 및/또는 하드웨어 모듈의 논리적 조합으로 나타낼 수 있다. The network interface 28 may be represented by a logical combination of one or more software and / or hardware modules, such as, for example, a network interface card and a corresponding Network Driver Interface Specification ("NDIS") stack.

마찬가지로, 컴퓨팅 장치는 입출력 인터페이스(24)를 통해 외부 소스로부터 데이터를 수신하거나 외부 소스로 데이터를 전송한다. 입출력 인터페이스(24)는 모뎀(23)(예를 들면, 표준 모뎀, 케이블 모뎀, 또는 디지털 가입자선(digital subscriber line: "DSL") 모뎀)에 연결될 수 있으며, 이러한 모뎀(23)을 통해 외부 소스로부터 데이터를 수신하고/거나 외부 소스로 데이터를 전송할 수 있다. Likewise, the computing device receives data from an external source through the input / output interface 24 or transmits data to the external source. The input / output interface 24 may be connected to a modem 23 (eg, a standard modem, cable modem, or digital subscriber line (“DSL”) modem), through which an external source Can receive data from and / or send data to external sources.

도 1은 본 발명에 적절한 오퍼레이팅 환경을 나타내지만, 본 발명의 원리는, 필요하다면 적절한 수정으로, 본 발명의 원리를 구현할 수 있는 임의의 시스템에 채용될 수 있다. 도 1에 도시된 환경은 단지 예시적이며 본 발명의 원리가 구현될 수 있는 매우 다양한 환경의 작은 일부도 나타내지 못한다. 1 shows an operating environment suitable for the present invention, but the principles of the present invention can be employed in any system capable of implementing the principles of the present invention, with appropriate modifications if necessary. The environment shown in FIG. 1 is merely exemplary and does not represent a small fraction of the wide variety of environments in which the principles of the invention may be implemented.

아울러, 본 발명의 실시예에 따라 발생되는 다양한 정보는 컴퓨팅 장치에 관련된 임의의 컴퓨터 판독가능 매체에 저장되고 액세스될 수 있다. 예를 들면, 이러한 프로그램 모듈들의 일부 및 관련 프로그램 데이터의 일부는, 시스템 메모리(12)에 저장하기 위해, 오퍼레이팅 시스템(13b), 애플리케이션 프로그램(13c), 프로그램 모듈(13d), 및/또는 프로그램 데이터(13e)에 포함될 수 있다.In addition, various information generated according to embodiments of the present invention may be stored and accessed on any computer readable medium related to the computing device. For example, some of these program modules and some of the associated program data may be stored in system memory 12, operating system 13b, application program 13c, program module 13d, and / or program data (13e).

또한, 하드 디스크와 같은 대용량(mass) 저장 장치가 컴퓨팅 시스템에 연결되면, 이러한 프로그램 모듈 및 관련 프로그램 데이터는 대용량 저장 장치에 저장될 수 있다. 네트워크 환경에서, 본 발명과 관련된 프로그램 모듈 또는 그 일부는 입출력 인터페이스(24)의 모뎀(23) 또는 네트워크 인터페이스(28)를 통해 연결된 원격 컴퓨터 시스템, 예를 들어, 클라우드 서버 혹은 분산형 서버의 컴퓨팅 시스템에 관련된 시스템 메모리 및/또는 대용량 저장 장치와 같은 원격 메모리 저장 장치에 저장될 수 있다. 이러한 모듈의 실행은 전술한 바와 같이 분산형 환경에서 수행될 수 있다. In addition, when a mass storage device such as a hard disk is connected to a computing system, these program modules and related program data may be stored in the mass storage device. In a networked environment, the program modules or portions thereof related to the present invention may be remote computer systems connected through a modem 23 or network interface 28 of the input / output interface 24, for example, a computing system of a cloud server or a distributed server. It may be stored in a remote memory storage device, such as system memory and / or mass storage devices related to. The execution of these modules can be performed in a distributed environment as described above.

다음으로, 보다 자세히, 본 발명의 실시예에 따른 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 장치에 대해서 설명하기로 한다. 도 2는 본 발명의 실시예에 따른 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 장치를 설명하기 위한 블록도이다. Next, in more detail, a device for detecting and preventing ransomware behavior using a spoofing process according to an embodiment of the present invention will be described. 2 is a block diagram illustrating an apparatus for detecting and preventing ransomware behavior using a spoofing process according to an embodiment of the present invention.

도 2를 참조하면, 프로세싱 유닛(11)은 위장프로그램생성모듈(100), 화이트프로그램DB생성모듈(200) 및 위장프로그램감시모듈(300)을 포함한다. 본 발명의 실시예에서 위장프로그램생성모듈(100), 화이트프로그램DB생성모듈(200) 및 위장프로그램감시모듈(300)은 프로세서 상에서 동작하는 개별 아키텍처와 같은 하드웨어로 설명될 것이지만, 본 발명을 이에 한정하는 것은 아니다. 즉, 본 발명의 다른 견지에 따르면, 위장프로그램생성모듈(100), 화이트프로그램DB생성모듈(200) 및 위장프로그램감시모듈(300)은 프로세싱 유닛(11)에 로드되어 실행되는 소프트웨어일 수 있다. 혹은, 위장프로그램생성모듈(100), 화이트프로그램DB생성모듈(200) 및 위장프로그램감시모듈(300)은 하드웨어와 소프트웨어의 조합으로 구현될 수도 있다. 2, the processing unit 11 includes a camouflage program generation module 100, a white program DB generation module 200, and a camouflage program monitoring module 300. In the embodiment of the present invention, the camouflage program generation module 100, the white program DB generation module 200, and the camouflage program monitoring module 300 will be described as hardware such as individual architectures operating on a processor, but the present invention is limited thereto. It is not done. That is, according to another aspect of the present invention, the camouflage program generation module 100, the white program DB generation module 200, and the camouflage program monitoring module 300 may be software that is loaded and executed in the processing unit 11. Alternatively, the camouflage program generation module 100, the white program DB generation module 200, and the camouflage program monitoring module 300 may be implemented by a combination of hardware and software.

위장프로그램생성모듈(100)은 위장프로그램을 생성하고, 이를 실행시킨다. 일 실시예에 따르면, 위장프로그램생성모듈(100)은 사용자의 설정에 따라 사용자가 지정한 폴더에 위장프로그램 파일을 생성하고, 이를 실행시킬 수 있다. 다른 실시예에 따르면, 위장프로그램생성모듈(100)은 랜덤 이름의 폴더를 자동으로 생성한 후, 생성된 폴더에 위장프로그램을 생성하고, 이를 실행시킬 수 있다. 또한, 위장프로그램생성모듈(100)은 실행된 위장프로그램의 전체 경로가 포함된 위장프로그램 어드레스 정보를 암호화여 파일(DB)로 저장한다. 바람직하게, 위장프로그램생성모듈(100)은 위장프로그램의 전체 경로가 포함된 위장프로그램 어드레스 정보를 위장프로그램감시모듈(300)이 동작하는 폴더에 암호화하여 저장한다. 여기서, 위장프로그램 어드레스 정보를 암호화하는 것은 감시 설정에 대한 정보를 불필요하게 노출하지 않게 하기 위한 것이다. 위장프로그램생성모듈(100)은 위장프로그램을 실행시킨 후, 위장프로그램과 별도로 위장프로그램감시모듈(300)을 실행시킬 수 있다. The camouflage program creation module 100 generates a camouflage program and executes it. According to an embodiment, the spoofing program generation module 100 may generate a spoofing program file in a folder designated by the user according to the user's setting, and execute it. According to another embodiment, the spoofing program generation module 100 may automatically generate a folder with a random name, and then generate a spoofing program in the created folder and execute it. In addition, the spoofing program generation module 100 encrypts the spoofing program address information including the full path of the spoofed program and stores it as a file (DB). Preferably, the disguised program generation module 100 encrypts and stores the disguised program address information including the entire path of the disguised program in a folder in which the disguised program monitoring module 300 operates. Here, the encryption of the spoof program address information is to prevent unnecessary exposure of the information on the monitoring setting. The camouflage program creation module 100 may execute the camouflage program monitoring module 300 separately from the camouflage program after the camouflage program is executed.

화이트프로그램DB생성모듈(200)은 화이트프로그램을 설정하기 위한 것이다. 즉, 화이트프로그램DB생성모듈(200)은 화이트프로그램을 선택하고, 선택된 화이트프로그램에 대한 식별정보를 포함하는 화이트프로그램 데이터베이스를 구성한다. 화이트프로그램DB생성모듈(200)은 윈도우 시스템 파일과 백신 프로그램을 검색하여 화이트프로그램 데이터베이스에 포함시킬 수 있다. 또한, 화이트프로그램DB생성모듈(200)은 사용자에 의해 선택된 프로그램을 화이트프로그램 데이터베이스에 포함시킬 수 있다. 화이트프로그램DB생성모듈(200)은 화이트프로그램 데이터베이스를 프로그램감시모듈(300)이 동작하는 폴더에 암호화하여 저장한다. The white program DB creation module 200 is for setting a white program. That is, the white program DB creation module 200 selects a white program and configures a white program database including identification information for the selected white program. The white program DB creation module 200 may search for Windows system files and vaccine programs and include them in the white program database. Also, the white program DB creation module 200 may include a program selected by the user in the white program database. The white program DB creation module 200 encrypts and stores the white program database in a folder in which the program monitoring module 300 operates.

위장프로그램감시모듈(300)은 위장프로그램을 비롯한 실행되는 모든 프로그램을 모니터링하기 위한 것이다. 위장프로그램감시모듈(300)은 위장프로그램과 별개로 위장프로그램생성모듈(100)에 의해 실행된다. 실행된 위장프로그램감시모듈(300)은 위장프로그램을 비롯한 실행되는 모든 프로그램을 모니터링한다. 모니터링에 따라, 위장프로그램감시모듈(300)은 프로세스 종료 함수를 후킹하며 OS에서 발생하는 모든 프로그램에 대한 종료 이벤트를 모니터링한다. 특히, 위장프로그램감시모듈(300)은 위장프로그램을 모니터링하여 위장프로그램에 대한 종료를 시도하는 프로그램을 검출하기 위한 것이다. 이를 위하여, 위장프로그램감시모듈(300)은 위장프로그램의 프로세스 종료 함수를 후킹(hooking)하여 위장프로그램에 대한 종료를 시도하는 프로그램을 검출할 수 있다. 위장프로그램감시모듈(300)은 위장프로그램의 프로세스 종료 함수를 후킹하며, 위장프로그램의 종료 이벤트가 발생되면, 후킹된 코드가 동작하여 위장프로그램에 대한 종료를 시도하는 프로그램을 검출한다. 예컨대, 위장프로그램의 프로세스 종료 함수에 삽입된 후킹 코드, 즉, 후킹된 코드는 프로세스 종료 함수를 호출하는 프로그램을 검출하는 것이 될 수 있다. 따라서 즉, 위장프로그램의 종료 이벤트가 발생하면, 위장프로그램의 프로세스 종료 함수가 호출되며, 위장프로그램의 프로세스 종료 함수에 삽입된 후킹 코드는 위장프로그램의 프로세스 종료 함수를 호출하는 프로그램을 검출할 수 있다. The camouflage program monitoring module 300 is for monitoring all programs that are executed, including the camouflage program. The camouflage program monitoring module 300 is executed by the camouflage program generation module 100 separately from the camouflage program. The executed camouflage program monitoring module 300 monitors all programs that are executed, including the camouflage program. According to the monitoring, the spoofing program monitoring module 300 hooks the process termination function and monitors termination events for all programs occurring in the OS. In particular, the camouflage program monitoring module 300 is for detecting a program that attempts to end the camouflage program by monitoring the camouflage program. To this end, the spoofing program monitoring module 300 may detect a program attempting to end the spoofing program by hooking the process termination function of the spoofing program. The spoofing program monitoring module 300 hooks the process termination function of the spoofing program, and when an end event of the spoofing program occurs, the hooked code operates to detect a program attempting to terminate the spoofing program. For example, the hooking code inserted into the process termination function of the spoofing program, that is, the hooked code may be to detect a program that calls the process termination function. Therefore, when the termination event of the spoofing program occurs, the process termination function of the spoofing program is called, and the hooking code inserted in the process termination function of the spoofing program can detect a program that calls the process termination function of the spoofing program.

위장프로그램감시모듈(300)은 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되면, 검출된 프로그램을 랜섬웨어로 판단할 수 있다. 하지만, 검출된 프로그램이 화이트프로그램 데이터베이스에 포함된 프로그램인 경우, 검출된 프로그램을 랜섬웨어가 아닌 정상 프로그램으로 판단하고, 검출된 프로그램에 대한 격리 프로세스를 중단한다. 만약, 위장프로그램감시모듈(300)은 위장프로그램에 대한 종료를 시도하였으며, 화이트프로그램 데이터베이스에 포함된 프로그램이 아닌 경우, 검출된 프로그램을 랜섬웨어로 판단한다. 이어서, 위장프로그램감시모듈(300)은 랜섬웨어로 판단된 프로그램을 종료시킨 후, 격리시킨다. 그리고 위장프로그램감시모듈(300)은 격리된 프로그램에 대해 이력 로그 파일을 생성하여 저장한다. The spoofing program monitoring module 300 may determine the detected program as ransomware when a program attempting to end the spoofing program is detected. However, if the detected program is a program included in the white program database, the detected program is determined to be a normal program, not ransomware, and the quarantine process for the detected program is stopped. If the spoofing program monitoring module 300 attempts to end the spoofing program, and if it is not a program included in the white program database, it determines the detected program as ransomware. Subsequently, the camouflage program monitoring module 300 terminates the program determined to be ransomware and then isolates it. In addition, the camouflage program monitoring module 300 generates and stores a history log file for the isolated program.

다음으로, 본 발명의 실시예에 따른 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 방법에 대해서 설명하기로 한다. 랜섬웨어 행위 탐지 및 방지 방법은 위장 프로세스를 실행하고, 위장 프로세스를 매개로 랜섬웨어 행위를 탐지하고, 랜섬 행위를 방지하는 순서로 이루어진다. Next, a method for detecting and preventing ransomware behavior using a spoofing process according to an embodiment of the present invention will be described. The ransomware behavior detection and prevention method is performed in the order of executing the spoofing process, detecting the ransomware behavior through the spoofing process, and preventing the ransomware behavior.

먼저, 본 발명의 실시예에 따른 위장 프로세스를 실행하는 방법에 대해서 설명하기로 한다. 도 3은 본 발명의 실시예에 따른 위장 프로세스를 실행하는 방법을 설명하기 위한 흐름도이다. First, a method of executing a spoofing process according to an embodiment of the present invention will be described. 3 is a flowchart for explaining a method of executing a spoofing process according to an embodiment of the present invention.

도 3을 참조하면, 위장프로그램생성모듈(100)은 S110 단계에서 위장프로그램을 생성한다. 일 실시예에 따르면, 위장프로그램생성모듈(100)은 사용자의 설정에 따라 사용자가 지정한 폴더에 위장프로그램을 생성할 수 있다. 다른 실시예에 따르면, 위장프로그램생성모듈(100)은 랜덤 이름의 폴더를 자동으로 생성한 후, 생성된 폴더에 위장프로그램을 생성할 수 있다. 여기서, 위장프로그램생성모듈(100)은 위장프로그램을 생성한 후, 위장프로그램의 전체 경로가 포함된 위장프로그램 어드레스 정보를 위장프로그램감시모듈(300)의 폴더에 암호화하여 저장한다. Referring to FIG. 3, the camouflage program generation module 100 generates a camouflage program in step S110. According to an embodiment, the camouflage program creation module 100 may generate a camouflage program in a folder designated by the user according to a user's setting. According to another embodiment, the spoofing program generation module 100 may automatically generate a folder with a random name, and then generate a spoofing program in the created folder. Here, the spoofing program creation module 100 encrypts and stores the spoofing program address information including the full path of the spoofing program in a folder of the spoofing program monitoring module 300 after generating the spoofing program.

위장프로그램이 생성된 후, 화이트프로그램DB생성모듈(200)은 S120 단계에서 화이트프로그램을 선택하고, 선택된 화이트프로그램에 대한 식별정보를 포함하는 화이트프로그램 데이터베이스를 구성한다. 일 실시예에 따르면, 화이트프로그램DB생성모듈(200)은 윈도우 시스템 파일과 백신 프로그램을 검색하여 화이트프로그램 데이터베이스에 포함시킬 수 있다. 또한, 다른 실시예에 따르면, 화이트프로그램DB생성모듈(200)은 사용자에 의해 선택된 프로그램을 화이트프로그램 데이터베이스에 포함시킬 수 있다. 이때, 화이트프로그램DB생성모듈(200)은 화이트프로그램 데이터베이스를 프로그램감시모듈(300)이 동작하는 폴더에 암호화하여 저장할 수 있다. After the spoofing program is generated, the white program DB creation module 200 selects a white program in step S120, and configures a white program database including identification information for the selected white program. According to an embodiment, the white program DB creation module 200 may search for a Windows system file and an antivirus program and include it in the white program database. Further, according to another embodiment, the white program DB creation module 200 may include a program selected by the user in the white program database. At this time, the white program DB creation module 200 may encrypt and store the white program database in a folder in which the program monitoring module 300 operates.

다음으로, 위장프로그램생성모듈(100)은 S130 단계에서 앞서(S110) 생성된 위장프로그램을 실행시킨다. Next, the camouflage program creation module 100 executes the camouflage program generated in step S130 (S110).

다음으로, 위장프로그램생성모듈(100)은 S140 단계에서 앞서 실행시킨 위장프로그램과 별개로 위장프로그램감시모듈(300)을 실행시킨다. 실행된 위장프로그램감시모듈(300)은 위장프로그램을 비롯한 OS에서 실행되는 모든 프로그램을 모니터링한다. Next, the camouflage program creation module 100 executes the camouflage program monitoring module 300 separately from the camouflage program previously executed in step S140. The executed camouflage program monitoring module 300 monitors all programs executed in the OS including the camouflage program.

그러면, 다음으로, 본 발명의 실시예에 따른 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 방법에 대해서 설명하기로 한다. 도 4는 본 발명의 실시예에 따른 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 방법을 설명하기 위한 흐름도이다. Then, next, a method for detecting and preventing ransomware behavior using a spoofing process according to an embodiment of the present invention will be described. 4 is a flowchart illustrating a method for detecting and preventing ransomware behavior using a spoofing process according to an embodiment of the present invention.

도 4를 참조하면, 위장프로그램이 실행된 후, 프로세싱 유닛(11)에 위장프로그램생성모듈(100)에 의해 위장프로그램감시모듈(300)이 로드되어 실행되며(S140), 위장프로그램감시모듈(300)은 S210 단계에서 위장프로그램을 비롯한 실행되는 모든 프로그램에 대해 모니터링을 시작한다. 모니터링에 따라, 위장프로그램감시모듈(300)은 프로세스 종료 함수를 후킹하며 OS에서 발생하는 모든 프로그램에 대한 종료 이벤트를 모니터링 한다. Referring to Figure 4, after the camouflage program is executed, the camouflage program monitoring module 300 is loaded and executed by the camouflage program generation module 100 in the processing unit 11 (S140), and the camouflage program monitoring module 300 is executed. ) Starts monitoring all the programs that are executed, including the spoofing program in step S210. According to the monitoring, the spoofing program monitoring module 300 hooks the process termination function and monitors termination events for all programs occurring in the OS.

위장프로그램감시모듈(300)은 S220 단계에서 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되는지 여부를 판단한다. 위장프로그램감시모듈(300)은 위장프로그램의 프로세스 종료 함수를 후킹하며, 위장프로그램의 종료 이벤트가 발생되어 위장프로그램의 프로세스 종료 함수가 호출되면, 위장프로그램의 프로세스 종료 함수에 삽입된 후킹 코드가 동작하여 위장프로그램에 대한 종료를 시도하는 프로그램, 즉, 위장프로그램의 프로세스 종료 함수를 호출한 프로그램을 검출할 수 있다. The camouflage program monitoring module 300 determines whether a program attempting to end the camouflage program is detected in step S220. The spoofing program monitoring module 300 hooks the process termination function of the spoofing program, and when the process termination function of the spoofing program is called due to the occurrence of the termination event of the spoofing program, the hooking code inserted into the process termination function of the spoofing program operates. It is possible to detect a program that attempts to terminate the spoofing program, that is, a program that calls a process termination function of the spoofing program.

따라서 S220 단계에서 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되면, 위장프로그램감시모듈(300)은 S230 단계로 진행하여 검출된 프로그램이 화이트프로그램 데이터베이스에 포함된 프로그램인지 여부를 판단한다. Accordingly, if a program attempting to end the spoofing program is detected in step S220, the spoofing program monitoring module 300 proceeds to step S230 to determine whether the detected program is a program included in the white program database.

S230 단계의 판단 결과, 검출된 프로그램이 화이트프로그램 데이터베이스에 포함된 프로그램이면, 위장프로그램감시모듈(300)은 검출된 프로그램이 랜섬웨어가 아닌 정상 프로그램, 즉, 화이트프로그램인 것으로 판단하고, S260 단계로 진행하여 해당 프로세스, 즉, 검출된 프로그램에 대한 격리 프로세스를 중단한다. As a result of the determination in step S230, if the detected program is a program included in the white program database, the spoofing program monitoring module 300 determines that the detected program is a normal program, not a ransomware, that is, a white program, and proceeds to step S260. Proceed to stop the process, that is, the quarantine process for the detected program.

반면, S230 단계의 판단 결과, 검출된 프로그램이 화이트프로그램 데이터베이스에 포함된 프로그램이 아니면, 위장프로그램감시모듈(300)은 검출된 프로그램이 랜섬웨어로 판단하고, S240 단계로 진행한다. On the other hand, as a result of the determination in step S230, if the detected program is not a program included in the white program database, the spoofing program monitoring module 300 determines that the detected program is ransomware and proceeds to step S240.

위장프로그램감시모듈(300)은 S240 단계에서 검출된 프로그램, 즉, 랜섬웨어를 종료시킨 후, 격리한다. 그런 다음, 위장프로그램감시모듈(300)은 S250 단계에서 격리된 프로그램, 즉, 랜섬웨어로 판단된 프로그램에 대해 이력 로그 파일을 생성하고, 해당 이력 로그 파일을 저장한다. The camouflage program monitoring module 300 isolates the program detected in step S240, that is, after terminating the ransomware. Then, the spoofing program monitoring module 300 generates a history log file for the program isolated in step S250, that is, a program determined to be ransomware, and stores the history log file.

전술한 바와 같이, 본 발명은 랜섬웨어가 암호화 행위를 하기 전 데이터를 관리하는 응용프로그램들을 일제히 종료하는 점에 착안하여, 응용프로그램으로 위장한 프로그램, 즉, 위장프로그램을 실행시킨 후, 위장프로그램의 종료를 시도하는 프로그램을 검출하여, 그 프로그램을 차단하고, 종료시킴으로써 이후에 수행되는 램섬 행위를 사전에 방어할 수 있다. 더욱이, 본 발명은 검출된 프로그램이 시스템 모듈, 백신 등과 같은 정상적인 프로그램일 수 있기 때문에, 화이트프로그램 데이터베이스를 통해 이러한 오인 탐지를 방지한다. As described above, the present invention pays attention to the fact that ransomware terminates all applications that manage data before performing an encryption action, and then executes a program disguised as an application program, that is, a disguised program, and then terminates the disguised program. By detecting a program that attempts to block the program and terminate it, it is possible to proactively defend the future ransomware action. Moreover, the present invention prevents such a false detection through the white program database because the detected program may be a normal program such as a system module, a vaccine, or the like.

한편, 앞서 설명된 본 발명의 실시예에 따른 위장 프로세스를 이용한 랜섬웨어 행위 탐지 및 방지 방법은 다양한 컴퓨터수단을 통하여 판독 가능한 프로그램 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광 기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 와이어뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 와이어를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다. Meanwhile, the method for detecting and preventing ransomware behavior using the spoofing process according to the embodiment of the present invention described above may be implemented in a form readable by various computer means and recorded in a computer-readable recording medium. Here, the recording medium may include program instructions, data files, data structures, or the like alone or in combination. The program instructions recorded on the recording medium may be specially designed and configured for the present invention or may be known and usable by those skilled in computer software. For example, the recording medium includes magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs, DVDs, and magnetic-optical media such as floptical 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 may include high-level language wires that can be executed by a computer using an interpreter, as well as machine language wires such as those produced by a compiler. Such a hardware device may be configured to operate as one or more software modules to perform the operation of the present invention, and vice versa.

이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 이와 같이, 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 균등론에 따라 다양한 변화와 수정을 가할 수 있음을 이해할 것이다. Although the present invention has been described using some preferred embodiments, these embodiments are illustrative and not limiting. As described above, those skilled in the art to which the present invention pertains will understand that various changes and modifications can be made according to the theory of equality without departing from the spirit of the present invention and the scope of the rights set forth in the appended claims.

100: 위장프로그램생성모듈
200: 화이트프로그램DB생성모듈
300: 위장프로그램감시모듈
100: camouflage program generation module
200: White program DB creation module
300: camouflage program monitoring module

Claims (19)

랜섬웨어 행위 탐지 및 방지 장치에 있어서,
위장프로그램을 생성하여 실행시키는 위장프로그램생성모듈; 및
상기 위장프로그램을 모니터링하여 상기 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되면, 상기 검출된 프로그램을 랜섬웨어로 판단하고, 상기 검출된 프로그램을 종료시키고, 격리시키는 위장프로그램감시모듈;을 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
In the ransomware behavior detection and prevention device,
A camouflage program generation module that generates and executes a camouflage program; And
Including a spoofing program monitoring module that monitors the spoofing program, detects the detected program as ransomware, terminates the detected program, and isolates the detected program. Characterized by
Ransomware behavior detection and prevention device.
제1항에 있어서,
상기 위장프로그램감시모듈은
상기 위장프로그램의 프로세스 종료 함수를 후킹(hooking)하여 상기 위장프로그램에 대한 종료를 시도하는 프로그램을 검출하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
According to claim 1,
The camouflage program monitoring module
And hooking the process termination function of the spoofing program to detect a program attempting to terminate the spoofing program.
Ransomware behavior detection and prevention device.
제1항에 있어서,
상기 랜섬웨어 행위 탐지 및 방지 장치는
화이트프로그램을 선택하고, 선택된 화이트프로그램에 대한 식별정보를 포함하는 화이트프로그램 데이터베이스를 구성하는 화이트프로그램DB생성모듈;을 더 포함하며,
상기 위장프로그램감시모듈은 상기 위장프로그램에 대한 종료를 시도하는 프로그램이 상기 화이트프로그램 데이터베이스에 포함되어 있으면, 상기 검출된 프로그램을 정상 프로그램으로 판단하고, 상기 검출된 프로그램에 대한 격리 프로세스를 중단하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
According to claim 1,
The ransomware behavior detection and prevention device
It further includes a white program DB creation module for selecting a white program and configuring a white program database including identification information for the selected white program.
The spoofing program monitoring module determines that the detected program is a normal program and stops the quarantine process for the detected program if a program that attempts to end the spoofing program is included in the white program database. To do
Ransomware behavior detection and prevention device.
제3항에 있어서,
상기 화이트프로그램DB생성모듈은
윈도우 시스템 파일과 백신 프로그램을 검색하여 상기 화이트프로그램 데이터베이스에 포함시키는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
According to claim 3,
The white program DB creation module
Searching Windows system files and vaccine programs and including them in the white program database.
Ransomware behavior detection and prevention device.
제3항에 있어서,
상기 화이트프로그램DB생성모듈은
사용자에 의해 선택된 프로그램을 상기 화이트프로그램 데이터베이스에 포함시키는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
According to claim 3,
The white program DB creation module
Characterized in that the program selected by the user is included in the white program database.
Ransomware behavior detection and prevention device.
제1항에 있어서,
상기 위장프로그램생성모듈은
상기 위장프로그램을 생성한 후, 상기 위장프로그램의 전체 경로가 포함된 정보를 암호화여 저장하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
According to claim 1,
The camouflage program generation module
After the spoofing program is generated, the information including the entire path of the spoofing program is encrypted and stored.
Ransomware behavior detection and prevention device.
제6항에 있어서,
상기 위장프로그램생성모듈은
랜덤 이름의 폴더를 자동으로 생성한 후, 생성된 폴더에 위장프로그램을 생성하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
The method of claim 6,
The camouflage program generation module
After automatically generating a folder with a random name, a spoofing program is generated in the created folder.
Ransomware behavior detection and prevention device.
제6항에 있어서,
상기 위장프로그램생성모듈은
사용자의 설정에 따라 사용자가 지정한 폴더에 위장프로그램 파일을 생성하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
The method of claim 6,
The camouflage program generation module
Characterized in that it creates a spoof program file in a folder designated by the user according to the user's settings.
Ransomware behavior detection and prevention device.
제1항에 있어서,
상기 위장프로그램감시모듈은
랜섬웨어로 판단된 프로그램에 대해 이력 로그 파일을 생성하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 장치.
According to claim 1,
The camouflage program monitoring module
Characterized in that it generates a history log file for the program determined to be ransomware.
Ransomware behavior detection and prevention device.
랜섬웨어 행위 탐지 및 방지 방법에 있어서,
위장프로그램생성모듈이 위장프로그램을 실행시키는 단계;
상기 위장프로그램감시모듈이 상기 위장프로그램을 모니터링하여 상기 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되는지 여부를 판별하는 단계;
상기 판별 결과, 상기 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되면, 상기 위장프로그램감시모듈이 상기 검출된 프로그램이 화이트프로그램 데이터베이스에 포함된 프로그램인지 여부를 판단하는 단계; 및
상기 판단 결과, 상기 검출된 프로그램이 상기 화이트프로그램 데이터베이스에 포함된 프로그램이 아니면, 위장프로그램감시모듈은 상기 검출된 프로그램을 랜섬웨어로 판단하고, 상기 검출된 프로그램을 종료시킨 후, 격리하는 단계;를 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
In the method of detecting and preventing ransomware behavior,
The camouflage program creation module executing the camouflage program;
Determining whether a program attempting to terminate the disguised program is detected by monitoring the disguised program by the disguised program monitoring module;
As a result of the discrimination, if a program attempting to terminate the spoofing program is detected, the spoofing program monitoring module determines whether the detected program is a program included in the white program database; And
As a result of the determination, if the detected program is not a program included in the white program database, the spoofing program monitoring module determines the detected program as ransomware, terminates the detected program, and then isolates it. Characterized by including
How to detect and prevent ransomware behavior.
제10항에 있어서,
상기 위장프로그램에 대한 종료를 시도하는 프로그램이 검출되는지 여부를 판별하는 단계는
상기 위장프로그램감시모듈이 상기 위장프로그램의 프로세스 종료 함수가 호출되면, 상기 위장프로그램의 프로세스 종료 함수에 삽입된 후킹 코드를 통해 상기 위장프로그램에 대한 종료를 시도하는 프로그램을 검출하는 단계;를 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
The method of claim 10,
The step of determining whether a program attempting to end the spoofing program is detected is
Comprising the step of detecting, by the spoofing program monitoring module, a program attempting to terminate the spoofing program through a hooking code inserted into the spoofing program's process termination function when the process termination function of the spoofing program is called. Characterized by
How to detect and prevent ransomware behavior.
제10항에 있어서,
상기 화이트프로그램 데이터베이스에 포함된 프로그램인지 여부를 판단하는 단계 후,
상기 판단 결과, 상기 검출된 프로그램이 상기 화이트프로그램 데이터베이스에 포함된 프로그램이면, 상기 검출된 프로그램을 정상 프로그램으로 판단하고, 상기 검출된 프로그램에 대한 격리 프로세스를 중단하는 단계;를 더 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
The method of claim 10,
After determining whether the program is included in the white program database,
And as a result of the determination, if the detected program is a program included in the white program database, determining that the detected program is a normal program and stopping the quarantine process for the detected program. doing
How to detect and prevent ransomware behavior.
제10항에 있어서,
상기 위장프로그램을 실행시키는 단계는
상기 위장프로그램생성모듈이 상기 위장프로그램을 생성하는 단계;
상기 화이트프로그램DB생성모듈이 상기 화이트프로그램 데이터베이스를 구성하는 단계; 및
상기 위장프로그램생성모듈이 상기 생성된 위장프로그램을 실행시키는 단계;를 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
The method of claim 10,
The step of executing the camouflage program is
The camouflage program generation module generating the camouflage program;
Configuring the white program database by the white program DB creation module; And
And the camouflage program creation module executing the generated camouflage program.
How to detect and prevent ransomware behavior.
제13항에 있어서,
상기 위장프로그램을 생성하는 단계는
상기 위장프로그램생성모듈이 사용자의 설정에 따라 사용자가 지정한 폴더에 위장프로그램 파일을 생성하거나, 랜덤 이름의 폴더를 자동으로 생성한 후 생성된 폴더에 위장프로그램을 생성하는 단계;를 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
The method of claim 13,
The step of generating the camouflage program is
And the camouflage program creation module generating a camouflage program file in a folder designated by the user according to the user's setting or automatically creating a folder with a random name and then creating a camouflage program in the created folder. doing
How to detect and prevent ransomware behavior.
제13항에 있어서,
상기 위장프로그램을 생성하는 단계는
상기 위장프로그램생성모듈이 상기 위장프로그램을 생성한 후, 상기 위장프로그램의 전체 경로가 포함된 정보를 암호화여 저장하는 단계;를 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
The method of claim 13,
The step of generating the camouflage program is
And after the spoofing program generation module generates the spoofing program, encrypting and storing information including the entire path of the spoofing program.
How to detect and prevent ransomware behavior.
제13항에 있어서,
상기 화이트프로그램 데이터베이스를 구성하는 단계는
상기 화이트프로그램DB생성모듈이 윈도우 시스템 파일과 백신 프로그램을 검색하여 상기 화이트프로그램 데이터베이스에 포함시키는 단계;를 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
The method of claim 13,
The step of configuring the white program database
It characterized in that it comprises; the white program DB generation module to search for the Windows system files and vaccine programs to include in the white program database;
How to detect and prevent ransomware behavior.
제13항에 있어서,
상기 화이트프로그램 데이터베이스를 구성하는 단계는
상기 화이트프로그램DB생성모듈이 사용자에 의해 선택된 프로그램을 상기 화이트프로그램 데이터베이스에 포함시키는 단계;를 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
The method of claim 13,
The step of configuring the white program database
And including, by the white program DB creation module, a program selected by a user in the white program database.
How to detect and prevent ransomware behavior.
제10항에 있어서,
상기 격리하는 단계 후,
상기 위장프로그램감시모듈이 상기 격리된 프로그램에 대해 이력 로그 파일을 생성하는 단계;를 더 포함하는 것을 특징으로 하는
랜섬웨어 행위 탐지 및 방지 방법.
The method of claim 10,
After the sequestering step,
And the camouflage program monitoring module generating a history log file for the isolated program.
How to detect and prevent ransomware behavior.
제10항 내지 제18항 중 어느 한 항에 따른 랜섬웨어 행위 탐지 및 방지 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능한 기록매체. A computer-readable recording medium in which a program for performing a method for detecting and preventing ransomware behavior according to any one of claims 10 to 18 is recorded.
KR1020180135537A 2018-11-07 2018-11-07 An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof and computer recordable medium storing program to perform the method KR102149711B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180135537A KR102149711B1 (en) 2018-11-07 2018-11-07 An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof and computer recordable medium storing program to perform the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180135537A KR102149711B1 (en) 2018-11-07 2018-11-07 An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof and computer recordable medium storing program to perform the method

Publications (2)

Publication Number Publication Date
KR20200052524A true KR20200052524A (en) 2020-05-15
KR102149711B1 KR102149711B1 (en) 2020-08-31

Family

ID=70679116

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180135537A KR102149711B1 (en) 2018-11-07 2018-11-07 An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof and computer recordable medium storing program to perform the method

Country Status (1)

Country Link
KR (1) KR102149711B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102403303B1 (en) * 2021-08-19 2022-05-30 여동균 System for providing user authentication based ransomware encryption blocking service
CN116796308A (en) * 2023-02-03 2023-09-22 安芯网盾(北京)科技有限公司 Method and device for detecting executable program of camouflage process based on Linux kernel

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101086203B1 (en) * 2011-07-15 2011-11-23 에스지에이 주식회사 A proactive system against malicious processes by investigating the process behaviors and the method thereof
KR101869743B1 (en) * 2017-03-14 2018-07-20 주식회사 안랩 Pretecting system and methof for process

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101086203B1 (en) * 2011-07-15 2011-11-23 에스지에이 주식회사 A proactive system against malicious processes by investigating the process behaviors and the method thereof
KR101869743B1 (en) * 2017-03-14 2018-07-20 주식회사 안랩 Pretecting system and methof for process

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Mark Russinovich, "RootkitRevealer v1.71", Windows Sysinternals(2017.08.) *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102403303B1 (en) * 2021-08-19 2022-05-30 여동균 System for providing user authentication based ransomware encryption blocking service
CN116796308A (en) * 2023-02-03 2023-09-22 安芯网盾(北京)科技有限公司 Method and device for detecting executable program of camouflage process based on Linux kernel
CN116796308B (en) * 2023-02-03 2024-04-12 安芯网盾(北京)科技有限公司 Method and device for detecting executable program of camouflage process based on Linux kernel

Also Published As

Publication number Publication date
KR102149711B1 (en) 2020-08-31

Similar Documents

Publication Publication Date Title
US11611586B2 (en) Systems and methods for detecting a suspicious process in an operating system environment using a file honeypots
US9852289B1 (en) Systems and methods for protecting files from malicious encryption attempts
KR101289581B1 (en) Method and apparatus for secure scan of data storage device from remote server
RU2646352C2 (en) Systems and methods for using a reputation indicator to facilitate malware scanning
KR101122646B1 (en) Method and device against intelligent bots by masquerading virtual machine information
RU2531861C1 (en) System and method of assessment of harmfullness of code executed in addressing space of confidential process
US8918878B2 (en) Restoration of file damage caused by malware
JP6055574B2 (en) Context-based switching to a secure operating system environment
US10339304B2 (en) Systems and methods for generating tripwire files
US9053321B2 (en) Antivirus system and method for removable media devices
US20070136807A1 (en) System and method for detecting unauthorized boots
US9111089B1 (en) Systems and methods for safely executing programs
US11494491B2 (en) Systems and methods for protecting against malware code injections in trusted processes by a multi-target injector
US10783041B2 (en) Backup and recovery of data files using hard links
WO2014071867A1 (en) Program processing method and system, and client and server for program processing
US11520886B2 (en) Advanced ransomware detection
US10339307B2 (en) Intrusion detection system in a device comprising a first operating system and a second operating system
US9202053B1 (en) MBR infection detection using emulation
KR102149711B1 (en) An apparatus for detecting and preventing ransom-ware behavior using camouflage process, a method thereof and computer recordable medium storing program to perform the method
JP7353346B2 (en) Systems and methods for preventing the injection of malicious processes into software
WO2022170966A1 (en) Method and apparatus for launching application program on target platform
US11886585B1 (en) System and method for identifying and mitigating cyberattacks through malicious position-independent code execution
JP2023092465A (en) Systems and methods for protecting data during synchronization
CN116506222A (en) Safety protection system
RU91206U1 (en) HARDWARE ANTI-VIRUS

Legal Events

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