KR20210147570A - Apparatus for recognizing malware through process mining - Google Patents
Apparatus for recognizing malware through process mining Download PDFInfo
- Publication number
- KR20210147570A KR20210147570A KR1020200065000A KR20200065000A KR20210147570A KR 20210147570 A KR20210147570 A KR 20210147570A KR 1020200065000 A KR1020200065000 A KR 1020200065000A KR 20200065000 A KR20200065000 A KR 20200065000A KR 20210147570 A KR20210147570 A KR 20210147570A
- Authority
- KR
- South Korea
- Prior art keywords
- log
- activity
- malicious code
- xes
- mining
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2465—Query processing support for facilitating data mining operations in structured databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2216/00—Indexing scheme relating to additional aspects of information retrieval not explicitly covered by G06F16/00 and subgroups
- G06F2216/03—Data mining
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Fuzzy Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
악성코드 탐지 기술에 관한 것으로, 보다 상세하게는 운영체제의 시스템 이벤트 로그를 XES 포맷의 로그로 변환한 후 프로세스 마이닝을 통해 악성코드를 탐지하는 장치에 관한 것이다.It relates to a technology for detecting malicious code, and more particularly, to a device for detecting malicious code through process mining after converting a system event log of an operating system into an XES format log.
악성코드(Malware)는 악의적인 목적으로 만들어진 모든 코드를 총칭하는 것으로 컴퓨터 바이러스, 트로이목마, 웜 형태로 구현되었다. 최근에는 악성코드가 보안 절차를 회피하도록 여러 수단을 동시에 적용하면서 변화하고 있기 때문에 앞서 언급한 3가지 구현방식으로 분류하기 어려워지고 있다.Malware is a generic term for all codes created for malicious purposes and is implemented in the form of computer viruses, Trojan horses, and worms. Recently, it is becoming difficult to classify into the three implementation methods mentioned above because malicious codes are changing while simultaneously applying various means to evade security procedures.
악성코드는 사용자에게 피해를 입힐 목적으로 만들어지는 것이 일반적이므로 컴퓨터에서 실행되는 프로그램들이 악성코드를 포함하고 있는지 탐지하는 것이 중요하다. 특정 프로그램이 악성코드를 포함하고 있는지 탐지하는 방법은 정적 분석을 기반으로 하는 방법과 동적 분석을 기반으로 하는 방법으로 분류할 수 있다. 정적 분석을 기반으로 하는 방법은 이미 수집된 악성코드의 특징을 분석해 해당 악성코드의 시그니처를 생성하고, AV(Anti-Virus) 스캔으로 프로그램이 악성코드의 시그니처를 포함하고 있는지 여부로 판정하거나 프로그램 파일 헤어 및 바이너리 내 문자열을 분석하는 방법 등을 사용한다. 동적 분석을 기반으로 하는 방법은 악성코드 수행하는 행위를 분석하는 방법으로 API 함수를 후킹(hooking)하는 방식과 시스템에서 자동으로 호출되는 이벤트 알림 루틴(notification routine)을 모니터링하는 방식 등을 사용한다.Since malicious codes are generally created for the purpose of harming users, it is important to detect whether programs running on the computer contain malicious codes. Methods for detecting whether a specific program contains malicious code can be classified into a method based on static analysis and a method based on dynamic analysis. The method based on static analysis generates a signature of the malicious code by analyzing the characteristics of the already collected malicious code, and determines whether the program contains the signature of the malicious code by AV (Anti-Virus) scan or program file Hair and methods of analyzing strings in binary are used. A method based on dynamic analysis is a method of analyzing the behavior of malicious code, and a method of hooking an API function and a method of monitoring an event notification routine automatically called from the system are used.
대한민국 공개특허 제10-2015-0085741호는 악성코드 탐지장치가 프로그램의 행위를 분석하는 방법으로 악성코드를 탐지하는 방법이 개시된다. 프로그램에서 실행되는 행위를 문자열로 정규화하여 기 저장된 악성코드의 문자열과 비교하여 악성코드를 탐지한다. 이러한 종래의 방법은 검색대상의 문자열을 모두 탐색해야 하며 탐지 규칙에 의존적이므로 범용성 및 확장성이 떨어지는 문제점이 있다.Korean Patent Application Laid-Open No. 10-2015-0085741 discloses a method for detecting a malicious code in a way that a malicious code detection device analyzes the behavior of a program. Malicious code is detected by normalizing the action executed in the program to a string and comparing it with the pre-stored string of malicious code. Such a conventional method has to search for all strings of a search target, and is dependent on detection rules, so there is a problem in versatility and scalability.
본 발명은 악성코드를 탐지하기 위해 사전에 탐지규칙을 정의하지 않고도 운영체제로부터 수집된 시스템 이벤트 로그로부터 악성코드 감염여부를 프로세스 마이닝 기법을 통해 탐지할 수 있는 장치를 제공하는 것을 목적으로 한다.An object of the present invention is to provide an apparatus capable of detecting whether or not a malicious code is infected from a system event log collected from an operating system through a process mining technique without defining a detection rule in advance to detect malicious code.
본 발명의 일 양상에 따르면, 프로세스 마이닝을 통한 악성코드 인식장치는 XES 로그 변환부와, 프로세스 분석부를 포함하여 운영체제에 수집된 시스템 이벤트 로그로부터 악성코드를 탐지한다.According to an aspect of the present invention, an apparatus for recognizing malicious codes through process mining detects malicious codes from a system event log collected in an operating system, including an XES log conversion unit and a process analysis unit.
XES 로그 변환부는 운영체제의 시스템 이벤트 로그를 수집하여 XES 로그 포맷의 프로세스 활동 로그로 변환한다.The XES log conversion unit collects the system event log of the operating system and converts it into a process activity log in XES log format.
프로세스 분석부는 프로세스 마이닝 기법으로 프로세스 활동 로그를 분석하여 비정상 활동을 수행하는 프로세스를 식별한다.The process analysis unit identifies processes performing abnormal activities by analyzing process activity logs using process mining techniques.
본 발명의 다른 양상에 따르면, 프로세스 마이닝을 통한 악성코드 인식장치의 프로세스 분석부는 비정상 활동을 수행하는 것으로 식별된 프로세스를 프로세스 활동 로그에 기초하여 다른 프로세스의 활동과 비교하여 이상 활동 여부를 최종적으로 판단할 수 있다.According to another aspect of the present invention, the process analysis unit of the apparatus for recognizing malicious code through process mining compares the process identified as performing the abnormal activity with the activity of another process based on the process activity log to finally determine whether the abnormal activity is present can do.
본 발명의 또 다른 양상에 따르면, 프로세스 마이닝을 통한 악성코드 인식장치는 프로세스 활동 로그를 시각화하여 표시하는 로그 시각화부를 더 포함할 수 있다.According to another aspect of the present invention, the apparatus for recognizing malicious code through process mining may further include a log visualization unit that visualizes and displays a process activity log.
본 발명의 또 다른 양상에 따르면, 프로세스 마이닝을 통한 악성코드 인식장치는 악성코드 종류에 따른 비정상 활동 패턴을 저장하는 활동 패턴 DB와, 비정상 활동을 수행하는 프로세스의 활동 패턴을 활동 패턴 DB에서 검색하여 악성코드 종류를 판단하는 악성코드 탐색부를 더 포함할 수 있다.According to another aspect of the present invention, the malicious code recognition device through process mining searches the activity pattern DB for storing abnormal activity patterns according to the types of malicious codes and the activity patterns of processes performing abnormal activities in the activity pattern DB. It may further include a malicious code search unit for determining the type of malicious code.
본 발명에 의하면 악성코드를 탐지하기 위해 사전에 탐지규칙을 정의할 필요가 없으며 운영체제로부터 수집된 시스템 이벤트 로그로부터 변환된 XES 로그에 대하여 프로세스 마이닝 기법을 적용하여 범용적이면서도 확장성이 있는 방법으로 악성코드 감염여부를 탐지할 수 있다.According to the present invention, there is no need to define a detection rule in advance to detect malicious code, and the process mining technique is applied to the XES log converted from the system event log collected from the operating system. Code infection can be detected.
도 1은 일 실시 예에 따른 프로세스 마이닝을 통한 악성코드 인식장치의 구성을 도시한 블록도이다.
도 2는 운영체제의 시스템 이벤트 로그를 XES 포맷으로 변환하는 개념을 예시적으로 도시한 것이다.
도 3은 프로세스 활동 로그를 시각화한 그래프의 예시이다.
도 4는 일 실시 예에 따라 프로세스 마이닝을 통한 악성코드를 인식하는 절차를 도시한 절차도이다.
도 5는 또 다른 실시 예에 따라 악성코드 종류를 판단하는 절차를 포함하는 악성코드 인식 절차를 도시한 절차도이다.1 is a block diagram illustrating a configuration of an apparatus for recognizing malicious codes through process mining according to an embodiment.
2 exemplarily illustrates the concept of converting a system event log of an operating system into an XES format.
3 is an example of a graph visualizing a process activity log.
4 is a flowchart illustrating a procedure for recognizing a malicious code through process mining according to an embodiment.
5 is a flowchart illustrating a malicious code recognition procedure including a procedure for determining a malicious code type according to another embodiment.
전술한, 그리고 추가적인 양상들은 첨부된 도면을 참조하여 설명하는 실시 예들을 통해 구체화된다. 각 실시 예들의 구성 요소들은 다른 언급이나 상호간에 모순이 없는 한 실시 예 내에서 다양한 조합이 가능한 것으로 이해된다. 블록도의 각 블록은 어느 경우에 있어서 물리적인 부품을 표현할 수 있으나 또 다른 경우에 있어서 하나의 물리적인 부품의 기능의 일부 혹은 복수의 물리적인 부품에 걸친 기능의 논리적인 표현일 수 있다. 때로는 블록 혹은 그 일부의 실체는 프로그램 명령어들의 집합(set)일 수 있다. 이러한 블록들은 전부 혹은 일부가 하드웨어, 소프트웨어 혹은 이들의 결합에 의해 구현될 수 있다.The foregoing and additional aspects are embodied through embodiments described with reference to the accompanying drawings. It is understood that various combinations of elements of each embodiment are possible within the embodiments as long as there is no contradiction between them or other mentions. Each block in the block diagram may represent a physical part in some cases, but in other cases may be a part of the function of one physical part or a logical representation of a function across a plurality of physical parts. Sometimes a block or part of an entity may be a set of program instructions. All or a part of these blocks may be implemented by hardware, software, or a combination thereof.
도 1은 일 실시 예에 따른 프로세스 마이닝을 통한 악성코드 인식장치의 구성을 도시한 블록도이다. 본 발명의 일 양상에 따르면, 프로세스 마이닝을 통한 악성코드 인식장치(100)는 XES 로그 변환부(110)와, 프로세스 분석부(130)를 포함하여 운영체제에 수집된 시스템 이벤트 로그로부터 악성코드를 탐지한다.1 is a block diagram illustrating a configuration of an apparatus for recognizing a malicious code through process mining according to an embodiment. According to an aspect of the present invention, the
악성코드 인식장치(100)는 프로세서, 메모리, 입출력 장치, 네트워크 장치, 디스플레이 등을 포함하는 컴퓨팅 장치일 수 있다. PC나 서버 장치일 수 있으며, 각 기능 블록들은 적어도 일부분이 프로세서에서 실행되는 프로그램 명령어 세트로 구현될 수 있다.The malicious
XES 로그 변환부(110)는 운영체제의 시스템 이벤트 로그를 수집하여 XES 로그 포맷의 프로세스 활동 로그로 변환한다.The XES
운영체제의 시스템 이벤트 로그는 운영체제가 실행되는 컴퓨터 시스템에서 발생하는 이벤트에 대한 로그로 응용 프로그램에 대한 로그를 포함한다. 또한 시스템 이벤트 로그는 프로세스의 내부 작업에 대한 세부 정보를 획득할 수 있는 프로세스 모니터링 툴의 로그를 포함한다. 일 예로 운영체제가 마이크로소프트사의 윈도우인 경우 시스템 이벤트 로그는 응용 프로그램 로그, 보안 로그, 시스템 로그를 포함하고, 본 발명에서는 윈도우에서 제공하는 프로세서 모니터 도구의 프로세스 로그를 시스템 이벤트 로그에 포함시킨다. 일반적으로 마이크로소프트사의 윈도우를 비롯한 운영체제의 응용 프로그램 로그 정보에는 프로세스 이름, 실행 시간 등의 기본 정보에 대한 세부 정보만 포함하고 있습니다. 운영체제에 대하여 프로세스의 내부 작업에 대한 정보를 확인하기 위하여 프로세스 모니터 도구가 제공되며, 마이크로소프트사의 윈도우는 프로세스 모니터를 제공한다. 이 프로세스 모니터는 파일 시스템, 레지스트리 및 프로세스/스레드 작업 내용을 자세하게 제공하며, 각 프로세스 작업에 대한 전체 스레드 스택을 제공할 수 있다.The system event log of the operating system is a log of events occurring in the computer system in which the operating system is running, and includes a log of application programs. The system event log also includes a log of a process monitoring tool that allows you to obtain detailed information about the internal workings of a process. For example, when the operating system is Microsoft's Windows, the system event log includes an application program log, a security log, and a system log, and in the present invention, the process log of the processor monitor tool provided by Windows is included in the system event log. In general, application log information of operating systems including Microsoft's Windows contains only detailed information about basic information such as process name and execution time. A process monitor tool is provided to check information on the internal operation of a process with respect to the operating system, and Microsoft's Windows provides a process monitor. This process monitor provides detailed file system, registry and process/thread operations, and can provide a full thread stack for each process operation.
XES(eXtensible Event Stream) 로그 포맷은 프로세스 마이닝에서 사용하는 기본적인 파일 포맷이다. MXML의 스키마를 가지며, 이벤트 로그와 이벤트스트림의 구조를 표현하는데 특화된 파일 형태이다. 대부분의 프로세스 마이닝 툴들은 XES 로그 포맷을 입력으로 받아 프로세스 마이닝을 진행한다.The XES (eXtensible Event Stream) log format is a basic file format used in process mining. It has an MXML schema and is a specialized file format to express the structure of the event log and event stream. Most process mining tools receive XES log format as input and process mining.
XES 로그 변환부(110)는 운영체제에 의해 관리되는 프로세스들의 실행 과정을 로그 형태로 기록한 시스템 이벤트 로그를 XES 로그 포맷으로 변환한다. 변환된 XES 로그 포맷의 로그를 프로세스 활동 로그로 정의한다. The XES
도 2는 운영체제의 시스템 이벤트 로그를 XES 포맷으로 변환하는 개념을 예시적으로 도시한 것이다. 도 2의 (a)는 마이크로소프트사의 윈도우 운영체제에서 수집되어 특정 프로세스의 실행과정을 기록하고 있는 시스템 이벤트 로그를 도시하고 있고, (b)는 XES 포맷을 도식화하여 표현하고 있다. (a)에 도시된 시스템 이벤트 로그는 프로세스의 단일 실행을 EventID로 구분하며 EventID 하위에 EventData로 해당 프로세스의 특정 동작에 대한 내용을 기록하고 있다. 도 2에 도시된 것과 같이 XES 로그 변환부(110)가 EventID를 XES 로그 포맷 내의 <trace> 태그에 저장하고, EventData를 <trace> 태그 하위의 <Event> 태그에 저장하도록 변환한다.2 exemplarily illustrates the concept of converting a system event log of an operating system into an XES format. (a) of FIG. 2 shows a system event log that is collected from Microsoft's Windows operating system and records the execution process of a specific process, and (b) is a diagrammatic representation of the XES format. The system event log shown in (a) classifies a single execution of a process by EventID, and records the specific operation of the process as EventData under EventID. As shown in FIG. 2 , the XES
프로세스 분석부(130)는 프로세스 마이닝 기법으로 프로세스 활동 로그를 분석하여 비정상 활동을 수행하는 프로세스를 식별한다.The
프로세스 마이닝은 프로세스를 지원하는 정보시스템의 로그를 분석하여 현재 프로세스를 분석하고, 그 결과를 토대로 성과를 평가하고 개선방향을 도출하는 기법입니다. 본 발명은 컴퓨터 운영체제 상에서 실행되는 응용 프로그램의 프로세스를 정보시스템의 프로세스처럼 간주하고 운영체제의 시스템 이벤트 로그(XES 포맷으로 변환 후)에 프로세스 마이닝 기법을 적용한다.Process mining is a technique that analyzes the current process by analyzing the log of the information system that supports the process, and evaluates the performance based on the result and draws a direction for improvement. The present invention regards the process of the application program executed on the computer operating system as the process of the information system and applies the process mining technique to the system event log (after conversion to XES format) of the operating system.
프로세스 분석부(130)는 XES 로그 변환부(110)가 변환한 XES 로그 포맷을 파싱하여 분석한다. 프로세스 분석부(130)는 XES 로그를 파싱하며 XES 로그로부터 프로세스 마이닝에 필요한 정보들을 추출한다. 이후 프로세스 분석부(130)는 프로세스 마이닝 기법을 적용하여 프로세스의 실행 순서에 따라 기록된 이벤트들로부터 프로세스 실행 흐름(control-flow)을 도출한다. 프로세스 분석부(130)는 도출된 실행 흐름을 분석하는 병목현상 분석 및/또는 반복실행 분석을 적용하여 비정상적인 프로세스 동작을 탐지하여 비정상 활동을 하는 프로세스를 식별한다. The
본 발명의 다른 양상에 따르면, 프로세스 분석부(130)는 비정상 활동을 수행하는 것으로 식별된 프로세스를 프로세스 활동 로그에 기초하여 분석한 프로세스의 분석결과와 다른 프로세스의 활동 로그에 기초하여 분석한 프로세스의 분석 결과를 비교하여 이상 활동 여부를 최종적으로 판단할 수 있다.According to another aspect of the present invention, the
본 발명의 또 다른 양상에 따르면, 프로세스 마이닝을 통한 악성코드 인식장치(100)는 프로세스 활동 로그를 시각화하여 표시하는 로그 시각화부(150)를 더 포함할 수 있다. 로그 시각화부(150)는 프로세스 활동 로그에 기록된 전체 프로세스들의 실행 흐름을 네트워크 그래프 형태로 시각화하고, 탐지된 비정상적인 프로세스 활동을 강조하여 표시하여 정상적인 프로세스 활동을 하는 다른 프로세스와 구분되도록 시각화할 수 있다.According to another aspect of the present invention, the
도 3은 프로세스 활동 로그를 시각화한 그래프의 예시이다. 도 3은 마이크로소프트사의 윈도우 운영체제 상에서 본 발명을 실행하여 획득한 결과의 예시이다. 도 3의 예에서는 iserv.exe와 n5client.exe 실행파일의 프로세스가 비정상적인 루프를 수행하는 것을 확인할 수 있다. 이때 프로세스 분석부(130)는 두 프로세스를 비정상 활동을 수행하는 프로세스로 탐지했을 것이다.3 is an example of a graph visualizing a process activity log. 3 is an example of results obtained by executing the present invention on Microsoft's Windows operating system. In the example of FIG. 3 , it can be seen that the processes of the iserv.exe and n5client.exe executable files perform an abnormal loop. At this time, the
도 4는 일 실시 예에 따라 프로세스 마이닝을 통한 악성코드를 인식하는 절차를 도시한 절차도이다. 도 4를 참조하여 설명하면, 운영체제에 의해 프로세스들의 실행 과정이 시스템 이벤트 로그 형태로 실시간으로 기록된다(S1000). XES 로그 변환부(110)는 운영체제의 시스템 이벤트 로그를 수집하여 XES 포맷의 프로세스 활동 로그로 변환한다(S1020). 시스템 이벤트 로그에 포함된 특정 프로세스의 EventID는 프로세스의 단일 실행 건을 나타내며, 해당 정보는 XES 포맷의 프로세스 활동 로그 내의 <Trace> 태그에 저장되고, 해당 EventID에 포함된 프로세스의 특정 동작 결과를 나타내는 EventData는 XES 포맷의 프로세스 활동 로그 내의 해당 <Trace> 태그 내의 <Event> 태그에 저장되도록 변환된다.4 is a flowchart illustrating a procedure for recognizing a malicious code through process mining according to an embodiment. Referring to FIG. 4 , the execution process of the processes is recorded in real time in the form of a system event log by the operating system (S1000). The XES
프로세스 분석부(130)는 XES 포맷의 프로세스 활동 로그를 파싱하고 분석한다. 프로세스 분석부(130)는 XES 포맷의 프로세스 활동 로그를 파싱하며 XES 포맷의 프로세스 활동 로그로부터 프로세스 마이닝에 필요한 정보들을 추출한다. 이후에, 프로세스 분석부(130)는 프로세스 마이닝 기법을 적용하여 실행 순서에 따라 기록된 이벤트들로부터 프로세스 실행 흐름을 도출하고, 실행 흐름을 분석하는 프로세스 마이닝 기법인 병목현상 분석 및/또는 반복실행 분석 등의 기법을 적용하여 비정상적인 프로세스 동작을 탐지한다(S1040).The
로그 시각화부(150)는 악성코드 탐지 결과를 시각화한다. 로그 시각화부(150) 전체 프로세스들의 실행 흐름을 네트워크 그래프 형태로 시각화한다(S1060).The
본 발명의 또 다른 양상에 따르면, 프로세스 마이닝을 통한 악성코드 인식장치(100)는 악성코드 종류에 따른 비정상 활동 패턴을 저장하는 활동 패턴 DB(190)와, 비정상 활동을 수행하는 프로세스의 활동 패턴을 활동 패턴 DB(190)에서 검색하여 악성코드 종류를 판단하는 악성코드 탐색부(170)를 더 포함할 수 있다. 본 발명은 악성코드를 탐지하기 위하여 사전에 탐지 규칙을 정의할 필요가 없다. 즉, 종래 기술처럼 신종 악성코드 출현 시 이를 탐지하기 위한 규칙을 새롭게 정의할 필요 없이 정확한 악성코드의 종류는 모르더라도 비정상 활동을 수행하는 프로세스를 탐지하고 해당 프로세스의 실행코드인 응용 프로그램 등이 악성코드를 포함하고 있음을 사용자에게 알릴 수 있다. 다만, 이 양상에서는 응용 프로그램이 이미 알려져 있는 악성코드를 포함하고 있는 경우에는 탐지된 악성코드의 종류를 판단할 수 있도록 악성코드를 포함하는 프로세스의 활동 패턴을 데이터베이스인 활동 패턴 DB(190)에 저장하고, 악성코드 탐지 시 악성코드 탐색부(170)가 동일하거나 유사한 패턴의 활동 패턴이 저장되어 있는지 검색하는 방법으로 악성코드의 종류를 판단할 수 있다.According to another aspect of the present invention, the
도 5는 또 다른 실시 예에 따라 악성코드 종류를 판단하는 절차를 포함하는 악성코드 인식 절차를 도시한 절차도이다. 도 4에 도시된 절차에서 악성코드 탐색부(170)가 악성코드에 감염된 프로세스의 활동 패턴이 저장된 활동 패턴 DB(190)에서 현재 탐지된 프로세스의 비정상 활동 패턴을 검색하여 악성코드의 종류를 판단하는 단계(S2080)를 더 포함한다. 이미 알려진 악성코드의 경우 활동 패턴 DB(190)를 통해 악성코드의 종류까지 판단이 가능하나 새로 출현한 악성코드의 경우 유사한 활동 패턴을 검색하지 못할 수 있다. 이 경우 사용자에 의해 해당 활동 패턴을 활동 패턴 DB(190)에 저장하여, 동일한 악성코드 탐지 시 종류를 판단할 수 있도록 한다.5 is a flowchart illustrating a malicious code recognition procedure including a procedure for determining a malicious code type according to another embodiment. In the procedure shown in FIG. 4 , the malicious
앞서 설명한 바와 같이 본 발명은 프로세스 마이닝을 통해 악성코드를 탐지하므로 사전에 정의된 규칙을 기반으로 탐지를 수행하는 종래의 악성코드 탐지 기술들과 달리 신종 악성코드 및 바이러스 출현 시 탐지 규칙을 새롭게 정의할 필요가 없어 범용성 및 확장성을 가진다.As described above, the present invention detects malicious code through process mining, so unlike conventional malicious code detection technologies that perform detection based on predefined rules, detection rules can be newly defined when new malicious codes and viruses appear. There is no need for versatility and extensibility.
이상에서 본 발명을 첨부된 도면을 참조하는 실시 예들을 통해 설명하였지만 이에 한정되는 것은 아니며, 이들로부터 당업자라면 자명하게 도출할 수 있는 다양한 변형 예들을 포괄하도록 해석되어야 한다. 특허청구범위는 이러한 변형 예들을 포괄하도록 의도되었다.Although the present invention has been described above with reference to the accompanying drawings, the present invention is not limited thereto, and it should be construed to encompass various modifications that can be apparent from those skilled in the art. The claims are intended to cover such variations.
100 : 악성코드 인식장치
110 : XES 로그 변환부
130 : 프로세스 분석부
150 : 로그 시각화부
170 : 악성코드 탐색부
190 : 활동 패턴 DB100: Malware recognition device
110: XES log conversion unit
130: process analysis unit
150: log visualization unit
170: Malware search unit
190: activity pattern DB
Claims (4)
프로세스 마이닝 기법으로 프로세스 활동 로그를 분석하여 비정상 활동을 수행하는 프로세스를 식별하는 프로세스 분석부;
를 포함하는 프로세스 마이닝을 통한 악성코드 인식장치.
an XES log conversion unit that collects the system event log of the operating system (OS) and converts it into a process activity log in an XES (eXtensible Event Stream) log format; and
a process analysis unit that analyzes a process activity log using a process mining technique to identify a process performing an abnormal activity;
Malicious code recognition device through process mining including
프로세스 분석부는 비정상 활동을 수행하는 것으로 식별된 프로세스를 프로세스 활동 로그에 기초하여 다른 프로세스의 활동과 비교하여 이상 활동 여부를 최종적으로 판단하는 프로세스 마이닝을 통한 악성코드 인식장치.
The method of claim 1,
The process analysis unit compares the process identified as performing the abnormal activity with the activity of other processes based on the process activity log to finally determine whether the abnormal activity is a malicious code recognition device through process mining.
프로세스 활동 로그를 시각화하여 표시하는 로그 시각화부;
를 더 포함하는 프로세스 마이닝을 통한 악성코드 인식장치.
The method of claim 1,
a log visualization unit that visualizes and displays the process activity log;
Malicious code recognition device through process mining further comprising a.
악성코드 종류에 따른 비정상 활동 패턴을 저장하는 활동 패턴 DB; 및
비정상 활동을 수행하는 프로세스의 활동 패턴을 활동 패턴 DB에서 검색하여 악성코드 종류를 판단하는 악성코드 탐색부;
를 더 포함하는 프로세스 마이닝을 통한 악성코드 인식장치.The method of claim 1 .
Activity pattern DB that stores abnormal activity patterns according to the type of malicious code; and
a malicious code search unit that determines the type of malicious code by searching the activity pattern DB for an activity pattern of a process performing an abnormal activity;
Malicious code recognition device through process mining further comprising a.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200065000A KR20210147570A (en) | 2020-05-29 | 2020-05-29 | Apparatus for recognizing malware through process mining |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200065000A KR20210147570A (en) | 2020-05-29 | 2020-05-29 | Apparatus for recognizing malware through process mining |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210147570A true KR20210147570A (en) | 2021-12-07 |
Family
ID=78867955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200065000A KR20210147570A (en) | 2020-05-29 | 2020-05-29 | Apparatus for recognizing malware through process mining |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210147570A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116893942A (en) * | 2023-07-06 | 2023-10-17 | 九科信息技术(深圳)有限公司 | Method, device, equipment and storage medium for converting format of log data |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150085741A (en) | 2014-01-16 | 2015-07-24 | 한국과학기술정보연구원 | Method for normalizing dynamic behavior of process and detecting malicious code |
-
2020
- 2020-05-29 KR KR1020200065000A patent/KR20210147570A/en not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150085741A (en) | 2014-01-16 | 2015-07-24 | 한국과학기술정보연구원 | Method for normalizing dynamic behavior of process and detecting malicious code |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116893942A (en) * | 2023-07-06 | 2023-10-17 | 九科信息技术(深圳)有限公司 | Method, device, equipment and storage medium for converting format of log data |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Galal et al. | Behavior-based features model for malware detection | |
US11423146B2 (en) | Provenance-based threat detection tools and stealthy malware detection | |
US8762948B1 (en) | System and method for establishing rules for filtering insignificant events for analysis of software program | |
US8484727B2 (en) | System and method for computer malware detection | |
US8949797B2 (en) | Optimizing performance of integrity monitoring | |
KR100951852B1 (en) | Apparatus and Method for Preventing Anomaly of Application Program | |
US8898775B2 (en) | Method and apparatus for detecting the malicious behavior of computer program | |
RU2430411C1 (en) | System and method of detecting malware | |
US11989292B2 (en) | Analysis function imparting device, analysis function imparting method, and recording medium | |
KR101086203B1 (en) | A proactive system against malicious processes by investigating the process behaviors and the method thereof | |
CN109101815B (en) | Malicious software detection method and related equipment | |
Cabau et al. | Malware classification based on dynamic behavior | |
NL2026782B1 (en) | Method and system for determining affiliation of software to software families | |
Yücel et al. | Imaging and evaluating the memory access for malware | |
WO2020014663A1 (en) | Systems and methods for detecting obfuscated malware in obfuscated just-in-time (jit) compiled code | |
CN109684833A (en) | Make the system and method for program hazardous act mode adaptive user machine system | |
Eskandari et al. | To incorporate sequential dynamic features in malware detection engines | |
Sanz et al. | Instance-based anomaly method for Android malware detection | |
Ahmed et al. | Medusa: Malware detection using statistical analysis of system's behavior | |
O'Kane et al. | N-gram density based malware detection | |
Kaur et al. | A complete dynamic malware analysis | |
US11003772B2 (en) | System and method for adapting patterns of malicious program behavior from groups of computer systems | |
KR20210147570A (en) | Apparatus for recognizing malware through process mining | |
Guerra-Manzanares et al. | Differences in android behavior between real device and emulator: a malware detection perspective | |
Maleki et al. | An improved method for packed malware detection using PE header and section table information |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E90F | Notification of reason for final refusal | ||
E601 | Decision to refuse application |