KR20210056790A - Apparatus and methods for endpoint detection and reponse using dynamic analysis plans - Google Patents

Apparatus and methods for endpoint detection and reponse using dynamic analysis plans Download PDF

Info

Publication number
KR20210056790A
KR20210056790A KR1020190143679A KR20190143679A KR20210056790A KR 20210056790 A KR20210056790 A KR 20210056790A KR 1020190143679 A KR1020190143679 A KR 1020190143679A KR 20190143679 A KR20190143679 A KR 20190143679A KR 20210056790 A KR20210056790 A KR 20210056790A
Authority
KR
South Korea
Prior art keywords
analysis
plan
dynamic
edr
static
Prior art date
Application number
KR1020190143679A
Other languages
Korean (ko)
Other versions
KR102348357B1 (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 KR1020190143679A priority Critical patent/KR102348357B1/en
Publication of KR20210056790A publication Critical patent/KR20210056790A/en
Application granted granted Critical
Publication of KR102348357B1 publication Critical patent/KR102348357B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The present invention relates to an endpoint detection and response (EDR) technology using a dynamic analysis plan, which can detect an abnormal operation. According to the present invention, an EDR apparatus using a dynamic analysis plan comprises: an analysis plan establishment unit generating an analysis plan for each of static and dynamic analyses for operation of a specific file on an endpoint terminal according to a predefined analysis scenario; a static analysis performing unit performing a bias static analysis on the operation according to the analysis plan; an analysis plan adjustment unit adjusting the analysis plan for the dynamic analysis by reflecting a result of the bias static analysis; a dynamic analysis performing unit performing the dynamic analysis for the operation on the basis of the adjusted analysis plan; and a malicious operation detection unit performing, when an abnormal pattern related to the operation is detected according to the dynamic analysis, unsupervised learning-based malware detection to determine whether the specific file is malicious.

Description

동적인 분석 플랜을 이용하는 EDR 장치 및 방법{APPARATUS AND METHODS FOR ENDPOINT DETECTION AND REPONSE USING DYNAMIC ANALYSIS PLANS}EDR device and method using dynamic analysis plan {APPARATUS AND METHODS FOR ENDPOINT DETECTION AND REPONSE USING DYNAMIC ANALYSIS PLANS}

본 발명은 동적인 분석 플랜을 이용한 EDR 기술에 관한 것으로, 더욱 상세하게는 정적 분석 결과를 반영하여 동적 분석을 위한 분석 플랜을 변경하여 이상 행위를 탐지할 수 있는 동적인 분석 플랜을 이용하는 EDR 장치 및 방법에 관한 것이다.The present invention relates to an EDR technology using a dynamic analysis plan, and more particularly, an EDR device using a dynamic analysis plan capable of detecting anomalies by changing an analysis plan for dynamic analysis by reflecting a static analysis result, and It's about the method.

EDR (Endpoint Detection and Response) 기술은 가트너(Gartner)에 의해 2013년 처음 소개되었다. 여기에서, EDR은 엔드포인트의 행위와 이벤트들을 기록하고, 수집된 행위와 이벤트들을 기반으로 공격을 탐지하고 대응하는 솔루션으로 정의되었다. 즉, EDR은 많은 사이버 공격의 목표이자 시작점을 엔드포인트로 규정하고, 엔드포인트에서 무슨 일이 일어나고 있는가라는 질문에서부터 출발한다.EDR (Endpoint Detection and Response) technology was first introduced in 2013 by Gartner. Here, EDR is defined as a solution that records the behavior and events of an endpoint, and detects and responds to attacks based on the collected behavior and events. In other words, EDR defines the target and starting point of many cyber attacks as endpoints, and starts with the question of what is happening at the endpoints.

EDR은 엔드포엔트에서 다양한 정보(예: 프로세스, 네트워크 트래픽, 레지스트리, 파일, 사용자)를 수집해서 엔드포인트의 가시성을 확보한 뒤, 수집된 다양한 정보를 기반으로 행위분석, 머신러닝, IOC(Indicator of Compromise) 탐지의 기술로 알려진 그리고 알려지지 않은 위협을 탐지할 수 있다. EDR은 파일 기반의 악성 코드뿐만 아니라 파일 없이 실행되는 악성 코드에 대한 공격도 탐지할 수 있다. 또한, EDR은 위협이 발견된 엔드포인트를 격리하고, 위협을 제거할 수 있도록 대응을 가능하게 할 수 있다.EDR collects various information (e.g. process, network traffic, registry, file, user) from the endpoint to secure the visibility of the endpoint, and then based on the collected various information, behavior analysis, machine learning, IOC (Indicator) of Compromise) can detect known and unknown threats with the technology of detection. EDR can detect attacks not only against file-based malicious code but also against malicious code that runs without a file. In addition, EDR can quarantine endpoints where threats are found and enable responses to eliminate threats.

EDR은 전통적인 엔드포인트 보안 플랫폼(Endpoint Protection Platform)의 방어 기술보다 악성 코드의 공격 방법과 기술을 더욱 빠르게 진화시켰다.EDR has evolved the attack method and technology of malicious code much faster than the defense technology of the traditional Endpoint Protection Platform.

한국등록특허 제10-1814368(2018.01.04)호Korean Patent Registration No. 10-1814368 (2018.01.04)

본 발명의 일 실시예는 정적 분석 결과를 반영하여 동적 분석을 위한 분석 플랜을 변경하여 이상 행위를 탐지할 수 있는 동적인 분석 플랜을 이용하는 EDR 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide an EDR apparatus and method using a dynamic analysis plan capable of detecting abnormal behavior by changing an analysis plan for dynamic analysis by reflecting a static analysis result.

본 발명의 일 실시예는 분석 플랜의 편향성에 따라 편향된 정적 분석을 수행하고 그 결과를 반영하여 동적 분석을 위한 분석 플랜을 갱신할 수 있는 동적인 분석 플랜을 이용하는 EDR 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is to provide an EDR apparatus and method using a dynamic analysis plan capable of performing a static analysis biased according to the bias of the analysis plan and updating the analysis plan for dynamic analysis by reflecting the result.

본 발명의 일 실시예는 동적 분석을 위한 분석 플랜에 포함된 분석 기법들의 유사도를 기초로 그룹화 하고 그룹별 대표 분석 기법을 결정하여 분석 순서에 따라 배치함으로써 분석 플랜의 편향성을 변경할 수 있는 동적인 분석 플랜을 이용하는 EDR 장치 및 방법을 제공하고자 한다.An embodiment of the present invention is a dynamic analysis capable of changing the bias of the analysis plan by grouping based on the similarity of analysis techniques included in the analysis plan for dynamic analysis, determining representative analysis techniques for each group, and arranging them according to the analysis order. We would like to provide an EDR device and method using a plan.

실시예들 중에서, 동적인 분석 플랜을 이용하는 EDR (Endpoint Detection & Response) 장치는 기 정의된 분석 시나리오에 따라 엔드포인트 단말 상에서 특정 파일의 동작에 관한 정적 및 동적 분석들 각각의 분석 플랜을 생성하는 분석 플랜 수립부, 상기 분석 플랜에 따라 상기 동작에 관한 편향(bias) 정적 분석을 수행하는 정적 분석 수행부, 상기 편향 정적 분석의 결과를 반영하여 상기 동적 분석에 대한 분석 플랜을 조정하는 분석 플랜 조정부, 조정된 상기 분석 플랜을 기초로 상기 동작에 관한 동적 분석을 수행하는 동적 분석 수행부 및 상기 동적 분석에 따라 상기 동작에 관한 이상 패턴이 검출된 경우 상기 특정 파일에 대해 비지도 학습 기반의 멀웨어(malware) 탐지를 수행하여 악성여부를 결정하는 악성 행위 탐지부를 포함한다.Among the embodiments, an EDR (Endpoint Detection & Response) device using a dynamic analysis plan is an analysis that generates an analysis plan for each of static and dynamic analysis on the operation of a specific file on the endpoint terminal according to a predefined analysis scenario. A plan establishment unit, a static analysis performing unit that performs a static analysis of the bias on the operation according to the analysis plan, an analysis plan adjustment unit that adjusts an analysis plan for the dynamic analysis by reflecting the result of the biased static analysis, A dynamic analysis performing unit that performs dynamic analysis on the operation based on the adjusted analysis plan, and unsupervised learning-based malware for the specific file when an abnormal pattern related to the operation is detected according to the dynamic analysis. ) It includes a malicious behavior detection unit that determines whether it is malicious by performing detection.

상기 분석 플랜 수립부는 복수의 분석 기법들에 관한 분석 순서의 조합으로 정의되는 분석 플랜들의 집합에서 상기 분석 시나리오에 매칭되고 상기 정적 및 동적 분석들 각각에 대응되는 분석 플랜을 결정하고, 상기 분석 플랜들 각각은 해당 분석 플랜을 구성하는 분석 기법들 간의 유사도에 따른 편향성을 포함할 수 있다.The analysis plan establishment unit determines an analysis plan that matches the analysis scenario and corresponds to each of the static and dynamic analyzes from a set of analysis plans defined as a combination of an analysis order of a plurality of analysis techniques, and the analysis plans Each may include a bias according to the similarity between the analysis techniques constituting the corresponding analysis plan.

상기 정적 분석 수행부는 상기 집합에서 상기 편향성이 임계기준 이상인 분석 플랜들 중 어느 하나를 랜덤으로 선별하여 상기 편향 정적 분석을 수행할 수 있다.The static analysis performing unit may perform the bias static analysis by randomly selecting any one of analysis plans having the bias equal to or greater than a threshold criterion from the set.

상기 분석 플랜 조정부는 상기 편향 정적 분석의 결과 불명확(uncertain)으로 분류되는 경우 상기 동적 분석에 대한 분석 플랜의 편향성을 변경할 수 있다.The analysis plan adjustment unit may change the bias of the analysis plan for the dynamic analysis when the bias is classified as unclear as a result of the static analysis.

상기 분석 플랜 조정부는 상기 동적 분석에 대한 분석 플랜에 대해 분석 기법들 간의 유사도를 기초로 분석 기법들을 그룹화 하는 제1 단계, 상기 그룹화된 분석 기법들의 그룹들 각각에 대한 대표 분석 기법을 결정하는 제2 단계 및 상기 대표 분석 기법들을 분석 순서에 따라 배치하는 제3 단계를 수행함으로써 상기 동적 분석에 대한 분석 플랜의 편향성을 변경할 수 있다.The analysis plan adjustment unit includes a first step of grouping analysis techniques based on similarity between analysis techniques with respect to the analysis plan for the dynamic analysis, and a second determining a representative analysis technique for each of the grouped analysis techniques. By performing a step and a third step of arranging the representative analysis techniques according to an analysis order, it is possible to change the bias of the analysis plan for the dynamic analysis.

상기 분석 플랜 조정부는 상기 대표 분석 기법들 과의 유사도가 특정 기준 이하인 분석 기법들을 선별하여 상기 대표 분석 기법들 사이에 배치하는 제4 단계를 추가 수행함으로써 상기 동적 분석에 대한 분석 플랜의 편향성을 변경할 수 있다.The analysis plan adjustment unit may change the bias of the analysis plan for the dynamic analysis by performing an additional fourth step of selecting analysis methods having a similarity with the representative analysis methods less than a specific criterion and arranging them between the representative analysis methods. have.

상기 악성 행위 탐지부는 파일 동작에 관한 SYSCALL 그래프 모집단을 통해 형성된 비지도학습 네트워크를 통해 상기 특정 파일에서 예상되는 행위가 알려지지 않은 위협을 발생시킬 가능성을 결정할 수 있다.The malicious behavior detection unit may determine a possibility that an expected behavior in the specific file generates an unknown threat through an unsupervised learning network formed through a SYSCALL graph population related to a file operation.

실시예들 중에서, 동적인 분석 플랜을 이용하는 EDR 방법은 기 정의된 분석 시나리오에 따라 엔드포인트 단말 상에서 특정 파일의 동작에 관한 정적 및 동적 분석들 각각의 분석 플랜을 생성하는 단계, 상기 분석 플랜에 따라 상기 동작에 관한 편향(bias) 정적 분석을 수행하는 단계, 상기 편향 정적 분석의 결과를 반영하여 상기 동적 분석에 대한 분석 플랜을 조정하는 단계, 조정된 상기 분석 플랜을 기초로 상기 동작에 관한 동적 분석을 수행하는 단계 및 상기 동적 분석에 따라 상기 동작에 관한 이상 패턴이 검출된 경우 상기 특정 파일에 대해 비지도 학습 기반의 멀웨어(malware) 탐지를 수행하여 악성여부를 결정하는 단계를 포함한다.Among the embodiments, the EDR method using a dynamic analysis plan includes generating an analysis plan for each of static and dynamic analysis on the operation of a specific file on an endpoint terminal according to a predefined analysis scenario, according to the analysis plan. Performing a static bias analysis on the motion, adjusting an analysis plan for the dynamic analysis by reflecting the result of the static bias analysis, and dynamic analysis on the motion based on the adjusted analysis plan And determining whether or not it is malicious by performing unsupervised learning-based malware detection on the specific file when an abnormal pattern related to the operation is detected according to the dynamic analysis.

개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.The disclosed technology can have the following effects. However, since it does not mean that a specific embodiment should include all of the following effects or only the following effects, it should not be understood that the scope of the rights of the disclosed technology is limited thereby.

본 발명의 일 실시예에 따른 동적인 분석 플랜을 이용하는 EDR 장치 및 방법은 분석 플랜의 편향성에 따라 편향된 정적 분석을 수행하고 그 결과를 반영하여 동적 분석을 위한 분석 플랜을 갱신할 수 있다.The EDR apparatus and method using the dynamic analysis plan according to an embodiment of the present invention may perform a static analysis biased according to the bias of the analysis plan and update the analysis plan for dynamic analysis by reflecting the result.

본 발명의 일 실시예에 따른 동적인 분석 플랜을 이용하는 EDR 장치 및 방법은 동적 분석을 위한 분석 플랜에 포함된 분석 기법들의 유사도를 기초로 그룹화 하고 그룹별 대표 분석 기법을 결정하여 분석 순서에 따라 배치함으로써 분석 플랜의 편향성을 변경할 수 있다.The EDR device and method using a dynamic analysis plan according to an embodiment of the present invention are grouped based on the similarity of analysis techniques included in the analysis plan for dynamic analysis, and a representative analysis technique for each group is determined and arranged according to the analysis order. By doing so, you can change the bias of the analysis plan.

도 1은 본 발명에 따른 동적인 분석 플랜을 이용하는 EDR 시스템의 구성을 설명하는 도면이다.
도 2는 도 1에 있는 EDR 장치의 물리적 구성을 설명하는 블록도이다.
도 3은 도 1에 있는 EDR 장치의 기능적 구성을 설명하는 블록도이다.
도 4는 도 1에 있는 EDR 장치에서 수행되는 동적인 분석 플랜을 이용하는 EDR 과정을 설명하는 순서도이다.
도 5는 본 발명의 일 실시예에 따른 동적인 분석 플랜을 이용하는 EDR 시스템을 설명하는 개념도이다.
1 is a diagram illustrating the configuration of an EDR system using a dynamic analysis plan according to the present invention.
FIG. 2 is a block diagram illustrating a physical configuration of the EDR device in FIG. 1.
3 is a block diagram illustrating a functional configuration of the EDR device in FIG. 1.
4 is a flowchart illustrating an EDR process using a dynamic analysis plan performed in the EDR device of FIG. 1.
5 is a conceptual diagram illustrating an EDR system using a dynamic analysis plan according to an embodiment of the present invention.

본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Since the description of the present invention is merely an embodiment for structural or functional description, the scope of the present invention should not be construed as being limited by the embodiments described in the text. That is, since the embodiments can be variously changed and have various forms, the scope of the present invention should be understood to include equivalents capable of realizing the technical idea. In addition, since the object or effect presented in the present invention does not mean that a specific embodiment should include all or only such effects, the scope of the present invention should not be understood as being limited thereto.

한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.Meanwhile, the meaning of terms described in the present application should be understood as follows.

"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.Terms such as "first" and "second" are used to distinguish one component from other components, and the scope of rights is not limited by these terms. For example, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being "connected" to another component, it should be understood that although it may be directly connected to the other component, another component may exist in the middle. On the other hand, when it is mentioned that a component is "directly connected" to another component, it should be understood that there is no other component in the middle. On the other hand, other expressions describing the relationship between components, that is, "between" and "just between" or "neighboring to" and "directly neighboring to" should be interpreted as well.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions are to be understood as including plural expressions unless the context clearly indicates otherwise, and terms such as "comprises" or "have" refer to implemented features, numbers, steps, actions, components, parts, or It is to be understood that it is intended to designate that a combination exists and does not preclude the presence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.

각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In each step, the identification code (e.g., a, b, c, etc.) is used for convenience of explanation, and the identification code does not describe the order of each step, and each step has a specific sequence clearly in the context. Unless otherwise stated, it may occur differently from the stated order. That is, each of the steps may occur in the same order as the specified order, may be performed substantially simultaneously, or may be performed in the reverse order.

본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The present invention can be implemented as computer-readable code on a computer-readable recording medium, and the computer-readable recording medium includes all types of recording devices storing data that can be read by a computer system. . Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tapes, floppy disks, and optical data storage devices. Further, the computer-readable recording medium is distributed over a computer system connected by a network, so that computer-readable codes can be stored and executed in a distributed manner.

여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the field to which the present invention belongs, unless otherwise defined. Terms defined in commonly used dictionaries should be construed as having meanings in the context of related technologies, and cannot be construed as having an ideal or excessively formal meaning unless explicitly defined in the present application.

도 1은 본 발명에 따른 동적인 분석 플랜을 이용하는 EDR 시스템의 구성을 설명하는 도면이다.1 is a diagram illustrating the configuration of an EDR system using a dynamic analysis plan according to the present invention.

도 1을 참조하면, 동적인 분석 플랜을 이용하는 EDR 시스템(100)은 EDR 단말 장치(110), EDR 장치(130) 및 데이터베이스(150)를 포함할 수 있다.Referring to FIG. 1, an EDR system 100 using a dynamic analysis plan may include an EDR terminal device 110, an EDR device 130, and a database 150.

EDR 단말 장치(110)는 네트워크에 접근하는 사용자의 신원을 인증하고 사용자의 행위를 추적하여 시스템에 위협이 되는 행위를 감지할 수 있는 컴퓨팅 장치에 해당할 수 있고, 스마트폰, 노트북 또는 컴퓨터로 구현될 수 있으며, 반드시 이에 한정되지 않고, 태블릿 PC 등 다양한 디바이스로도 구현될 수 있다. EDR 단말 장치(110)는 EDR 장치(130)와 네트워크를 통해 연결될 수 있고, 복수의 EDR 단말 장치(110)들은 EDR 장치(130)와 동시에 연결될 수 있다. The EDR terminal device 110 may correspond to a computing device capable of detecting an act that threatens the system by authenticating the identity of a user accessing the network and tracking the user's behavior, and implemented as a smartphone, laptop, or computer. It may be, but is not limited thereto, and may be implemented in various devices such as a tablet PC. The EDR terminal device 110 may be connected to the EDR device 130 through a network, and a plurality of EDR terminal devices 110 may be connected to the EDR device 130 at the same time.

일 실시예에서, EDR 단말 장치(110)는 엔드포인트(endpoint) 단말로서 사용자 또는 업무용 PC에 해당할 수 있고, 사용자 행위들에 관한 정보를 수집하고 이를 프론트-엔드 서버로 전송하는 동작을 수행하는 엔드포인트 에이전트의 동작을 제어할 수 있다. 또한, EDR 단말 장치(110)는 사용자의 신원을 인증할 수 있고, 엔드포인트 에이전트와 연동하여 사용자의 접근 및 이용을 제한할 수 있다.In one embodiment, the EDR terminal device 110 may correspond to a user or a work PC as an endpoint terminal, and collects information on user actions and transmits it to a front-end server. You can control the behavior of the endpoint agent. In addition, the EDR terminal device 110 may authenticate the user's identity, and may restrict the user's access and use by interworking with the endpoint agent.

여기에서, 엔드포인트 에이전트는 엔드포인트 단말 상에서 동작하는 프로그램에 해당할 수 있고, 사용자 행위를 모니터링 하는 역할을 수행할 수 있다. 엔드포인트 에이전트는 사용자 트래커(tracker), 네트워크 데이터 트래커, 파일 메타데이터 처리기 및 시큐리티 정책 집행기를 포함할 수 있다.Here, the endpoint agent may correspond to a program running on the endpoint terminal and may perform a role of monitoring user behavior. The endpoint agent may include a user tracker, a network data tracker, a file metadata handler, and a security policy enforcer.

사용자 트래커는 사용자의 행위를 추적하는 동작을 수행할 수 있고, 네트워크 데이터 트래커는 네트워크 트래픽 데이터를 수집하고 분석하는 동작을 수행할 수 있으며, 파일 메타데이터 처리기는 파일로부터 메타데이터를 추출하고 분석하는 동작을 수행할 수 있고, 시큐리티 정책 집행기는 프론트-엔드 서버로부터 수신된 시큐리티 정책에 따라 사용자의 행위에 대한 허용여부를 결정하는 동작을 수행할 수 있다.User tracker can perform actions to track user behavior, network data tracker can perform actions to collect and analyze network traffic data, and file metadata handler actions to extract and analyze metadata from files. May be performed, and the security policy executor may perform an operation of determining whether to allow the user's behavior according to the security policy received from the front-end server.

일 실시예에서, EDR 단말 장치(110)는 사용자의 행위와 연관된 파일 데이터를 추적하여 특정 파일과 연관된 동작 데이터를 EDR 장치(130)에 제공할 수 있다. 또한, EDR 단말 장치(110)는 특정 파일의 동작과 연관된 SYSCALL 그래프를 생성하여 프론트-엔드 서버 및 EDR 장치(130)에게 제공할 수 있다. 이를 위하여, EDR 단말 장치(110)는 사용자의 행위와 연관된 데이터를 비-파일 데이터와 파일 데이터로 분류할 수 있고, 파일 데이터를 선별하여 프론트-엔드 서버 및 EDR 장치(130)로 전송할 수 있다.In an embodiment, the EDR terminal device 110 may provide motion data associated with a specific file to the EDR device 130 by tracking file data associated with a user's behavior. In addition, the EDR terminal device 110 may generate a SYSCALL graph associated with the operation of a specific file and provide it to the front-end server and the EDR device 130. To this end, the EDR terminal device 110 may classify data related to a user's behavior into non-file data and file data, select the file data, and transmit it to the front-end server and the EDR device 130.

즉, EDR 단말 장치(110)는 사용자의 행위들이 파일과 연관되었는지를 기준으로 파일 데이터와 비-파일 데이터로 구분할 수 있고, 파일 데이터를 프론트-엔드 서버에게 제공할 수 있다. 한편, 프론트-엔드 서버는 특정 파일에 관한 파일 내용이 변경된 경우 해당 파일 정보를 EDR 장치(130)에게 전송할 수 있다.That is, the EDR terminal device 110 may classify the user's actions into file data and non-file data based on whether the user's actions are associated with a file, and may provide the file data to the front-end server. Meanwhile, the front-end server may transmit the corresponding file information to the EDR device 130 when the file contents related to a specific file are changed.

EDR 장치(130)는 EDR 단말 장치(110)로부터 SIEM(Security Information and Event Management) 기반의 위협행위를 검출하고 인공지능 기반의 위협행위를 분석하며 시큐리티 정책의 생성 및 갱신에 관한 동작을 수행하는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 또한, EDR 장치(130)는 프론트-엔드 서버와의 연동을 통해 사용자의 행위에 관한 학습, 분석 및 탐지 등의 동작을 수행할 수 있다. The EDR device 130 is a computer that detects SIEM (Security Information and Event Management)-based threat behavior from the EDR terminal device 110, analyzes artificial intelligence-based threat behavior, and performs operations related to creating and updating security policies. Alternatively, it may be implemented as a server corresponding to the program. In addition, the EDR device 130 may perform operations such as learning, analysis, and detection of a user's behavior through interworking with the front-end server.

이 때, 프론트-엔드 서버는 EDR 단말 장치(110)로부터 수집된 사용자의 행위에 관한 정보를 별도의 저장공간에 저장하고 관리하는 동작을 수행할 수 있다. 이러한 동작을 위해 프론트-엔드 서버는 엔드포인트 에이전트 처리기를 포함하여 구현될 수 있다. 엔드포인트 에이전트 처리기는 엔드포인트 단말의 접속 및 사용자 추적 세션을 관리하여 사용자 행위에 관한 정보를 추적 및 수집하는 동작을 수행할 수 있다.In this case, the front-end server may perform an operation of storing and managing information on a user's behavior collected from the EDR terminal device 110 in a separate storage space. For this operation, the front-end server may be implemented including an endpoint agent handler. The endpoint agent processor may perform an operation of tracking and collecting information on user behavior by managing access and user tracking sessions of the endpoint terminal.

한편, EDR 장치(130)는 SIEM 기반 위협행위 검출기 및 비지도학습 기반 위협행위 분석기를 포함하여 구현될 수 있다. 또한, EDR 장치(130)는 EDR 단말 장치(110) 및 프론트-엔드 서버와 블루투스, WiFi, 통신망 등을 통해 무선으로 연결될 수 있고, 네트워크를 통해 EDR 단말 장치(110) 및 프론트-엔드 서버와 데이터를 주고받을 수 있다.Meanwhile, the EDR device 130 may be implemented by including a SIEM-based threat behavior detector and an unsupervised learning-based threat behavior analyzer. In addition, the EDR device 130 may be wirelessly connected to the EDR terminal device 110 and the front-end server through Bluetooth, WiFi, a communication network, etc., and the EDR terminal device 110 and the front-end server and data through the network. Can give and receive.

일 실시예에서, EDR 장치(130)는 데이터베이스(150)와 연동하여 엔드포인트 단말로부터 수집한 정보를 기초로 위협행위 검출 및 분석, 그리고 시큐리티 정책의 생성 및 갱신에 관한 동작을 수행할 수 있다. 한편, EDR 장치(130)는 도 1과 달리, 데이터베이스(150)를 내부에 포함하여 구현될 수 있고, 독립적으로 구현된 SIEM(Security Information and Event Management) 모듈과 연동하여 동작할 수 있다.In one embodiment, the EDR device 130 may interwork with the database 150 to detect and analyze a threat behavior based on information collected from an endpoint terminal, and perform an operation related to generation and update of a security policy. Meanwhile, unlike FIG. 1, the EDR device 130 may be implemented including the database 150 internally, and may operate in conjunction with an independently implemented SIEM (Security Information and Event Management) module.

여기에서, SIEM 모듈은 빅데이터의 방대한 정보 속에서 단순한 로그 수집 및 분석이 아닌 사후에 추적 등이 가능하도록 상관분석과 포렌식 기능을 제공해주는 지능적 위협에 대한 조기 경고 모니터링 체계에 해당할 수 있다. 즉, SIEM 모듈은 정보시스템의 보안 정보 및 이벤트 관리를 통해 내부 및 외부 위협을 모니터링 함으로써 외부의 공격은 물론, 내부 정보유출 또한 방지하는 기능을 수행할 수 있다.Here, the SIEM module may correspond to an early warning monitoring system for intelligent threats that provides correlation analysis and forensic functions to enable post-mortem tracking, etc., rather than simple log collection and analysis in the vast information of big data. That is, the SIEM module can perform a function to prevent external attacks as well as internal information leakage by monitoring internal and external threats through the security information and event management of the information system.

또한, EDR 장치(130)는 프로세서, 메모리, 사용자 입출력부 및 네트워크 입출력부를 포함하여 구현될 수 있으며, 이에 대해서는 도 2에서 보다 자세히 설명한다.In addition, the EDR device 130 may be implemented including a processor, a memory, a user input/output unit, and a network input/output unit, which will be described in more detail with reference to FIG. 2.

데이터베이스(150)는 EDR 장치(130)의 동작 과정에서 필요한 다양한 정보들을 저장하는 저장장치에 해당할 수 있다. 데이터베이스(150)는 EDR 단말 장치(110)로부터 수집된 사용자 행위에 관한 정보를 저장할 수 있으나, 반드시 이에 한정되지 않고, EDR 단말 장치(110) 및 프론트-엔드 서버와의 연동 과정에서 다양한 형태로 수집 또는 가공된 정보들을 저장할 수 있다.The database 150 may correspond to a storage device that stores various pieces of information required during the operation of the EDR device 130. The database 150 may store information on user behavior collected from the EDR terminal device 110, but is not necessarily limited thereto, and is collected in various forms in the process of interworking with the EDR terminal device 110 and the front-end server. Or it can store processed information.

일 실시예에서, 데이터베이스(150)는 독립적으로 구현된 SIEM 모듈과 연동하여 동작할 수 있다. 한편, SIEM 모듈은 독립적인 데이터베이스 모듈로서 구현될 수 있고, 이 경우 데이터베이스(150)는 SIEM 모듈을 포함하여 정의될 수 있다.In one embodiment, the database 150 may operate in conjunction with an independently implemented SIEM module. Meanwhile, the SIEM module may be implemented as an independent database module, and in this case, the database 150 may be defined including the SIEM module.

도 2는 도 1에 있는 EDR 장치의 물리적 구성을 설명하는 블록도이다.FIG. 2 is a block diagram illustrating a physical configuration of the EDR device in FIG. 1.

도 2를 참조하면, EDR 장치(130)는 프로세서(210), 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)를 포함하여 구현될 수 있다.Referring to FIG. 2, the EDR device 130 may include a processor 210, a memory 230, a user input/output unit 250, and a network input/output unit 270.

프로세서(210)는 EDR 장치(130)의 각 동작을 처리하는 프로시저를 실행할 수 있고, 그 과정 전반에서 읽혀지거나 작성되는 메모리(230)를 관리할 수 있으며, 메모리(230)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄할 수 있다. 프로세서(210)는 EDR 장치(130)의 동작 전반을 제어할 수 있고, 메모리(230), 사용자 입출력부(250) 및 네트워크 입출력부(270)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(210)는 EDR 장치(130)의 CPU(Central Processing Unit)로 구현될 수 있다.The processor 210 may execute a procedure for processing each operation of the EDR device 130 and manage the memory 230 that is read or written throughout the process, and the volatile memory in the memory 230 and Synchronization time between non-volatile memories can be scheduled. The processor 210 can control the overall operation of the EDR device 130, and is electrically connected to the memory 230, the user input/output unit 250, and the network input/output unit 270 to control data flow between them. have. The processor 210 may be implemented as a central processing unit (CPU) of the EDR device 130.

메모리(230)는 SSD(Solid State Drive) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 EDR 장치(130)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.The memory 230 may include an auxiliary memory device that is implemented as a nonvolatile memory such as a solid state drive (SSD) or a hard disk drive (HDD), and is used to store all data required for the EDR device 130, and RAM A main memory device implemented as a volatile memory such as (Random Access Memory) may be included.

사용자 입출력부(250)는 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함할 수 있다. 예를 들어, 사용자 입출력부(250)는 터치 패드, 터치 스크린, 화상 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터 또는 터치스크린과 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(250)는 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, EDR 장치(130)는 서버로서 수행될 수 있다.The user input/output unit 250 may include an environment for receiving a user input and an environment for outputting specific information to a user. For example, the user input/output unit 250 may include an input device including an adapter such as a touch pad, a touch screen, an on-screen keyboard, or a pointing device, and an output device including an adapter such as a monitor or a touch screen. In one embodiment, the user input/output unit 250 may correspond to a computing device connected through a remote connection, and in that case, the EDR device 130 may be performed as a server.

네트워크 입출력부(270)은 네트워크를 통해 외부 장치 또는 시스템과 연결하기 위한 환경을 포함하고, 예를 들어, LAN(Local Area Network), MAN(Metropolitan Area Network), WAN(Wide Area Network) 및 VAN(Value Added Network) 등의 통신을 위한 어댑터를 포함할 수 있다.The network input/output unit 270 includes an environment for connecting to an external device or system through a network, for example, a local area network (LAN), a metropolitan area network (MAN), a wide area network (WAN), and a VAN ( Value Added Network) may include an adapter for communication.

도 3은 도 1에 있는 EDR 장치의 기능적 구성을 설명하는 블록도이다.3 is a block diagram illustrating a functional configuration of the EDR device in FIG. 1.

도 3을 참조하면, EDR 장치(130)는 분석 플랜 수립부(310), 정적 분석 수행부(320), 분석 플랜 조정부(330), 동적 분석 수행부(340), 악성 행위 탐지부(350) 및 제어부(360)를 포함할 수 있다.Referring to FIG. 3, the EDR device 130 includes an analysis plan establishment unit 310, a static analysis execution unit 320, an analysis plan adjustment unit 330, a dynamic analysis execution unit 340, and a malicious behavior detection unit 350. And a control unit 360.

분석 플랜 수립부(310)는 기 정의된 분석 시나리오에 따라 엔드포인트 단말 상에서 특정 파일의 동작에 관한 정적 및 동적 분석들 각각의 분석 플랜을 생성할 수 있다. 여기에서, 분석 시나리오는 엔드포인트 단말 상에서의 사용자 행위에 관한 분석을 위해 사전에 정의된 분석 내용으로서 분석 목적, 대상 및 방법을 구체적으로 한정하고 범위를 특정하여 생성될 수 있다. 분석 플랜 수립부(310)는 분석 시나리오와 엔드포인트 단말에 대한 기본 정보, 그리고 엔드포인트 단말의 운용 환경에 관한 정보를 기초로 정적 및 동적 분석을 위한 분석 플랜을 생성할 수 있다.The analysis plan establishment unit 310 may generate an analysis plan for each of static and dynamic analysis on the operation of a specific file on the endpoint terminal according to a predefined analysis scenario. Here, the analysis scenario is an analysis content defined in advance for analysis of user behavior on the endpoint terminal, and may be generated by specifically defining an analysis purpose, an object, and a method, and specifying a range. The analysis plan establishment unit 310 may generate an analysis plan for static and dynamic analysis based on the analysis scenario, basic information on the endpoint terminal, and information on the operating environment of the endpoint terminal.

일 실시예에서, 분석 플랜 수립부(310)는 복수의 분석 기법들에 관한 분석 순서의 조합으로 정의되는 분석 플랜들의 집합에서 분석 시나리오에 매칭되고 정적 및 동적 분석들 각각에 대응되는 분석 플랜을 결정할 수 있다. 복수의 분석 기법들은 엔드포인트 단말에 대한 정적 분석 기법 및 동적 분석 기법들을 포함하고 각 분석 기법들 별로 분석 목적, 대상 및 방법이 구체적으로 특정되어 정의될 수 있다. In one embodiment, the analysis plan establishment unit 310 determines an analysis plan that matches the analysis scenario in a set of analysis plans defined as a combination of analysis sequences for a plurality of analysis techniques and corresponds to each of the static and dynamic analysis. I can. The plurality of analysis techniques include static analysis techniques and dynamic analysis techniques for the endpoint terminal, and analysis objectives, targets, and methods may be specifically specified and defined for each analysis technique.

또한, 분석 플랜은 정적 분석 또는 동적 분석 과정에서 어떠한 분석 기법을 사용할 것인지, 어떠한 순서로 분석을 수행할 것인지를 구체적으로 정의한 분석 방법론에 해당할 수 있다. 즉, 분석 플랜 수립부(310)는 분석 플랜들의 집합에서 분석 시나리오에 매칭되는 분석 플랜들을 결정할 수 있고, 정적 분석을 위한 분석 플랜과 동적 분석을 위한 분석 플랜을 각각 결정할 수 있다.In addition, the analysis plan may correspond to an analysis methodology that specifically defines what analysis technique to use in the static or dynamic analysis process, and in what order to perform the analysis. That is, the analysis plan establishment unit 310 may determine analysis plans matching the analysis scenario from the set of analysis plans, and may determine an analysis plan for static analysis and an analysis plan for dynamic analysis, respectively.

일 실시예에서, 복수의 분석 플랜들 각각은 해당 분석 플랜을 구성하는 분석 기법들 간의 유사도에 따른 편향성을 포함할 수 있다. 보다 구체적으로, 하나의 분석 플랜은 복수의 분석 기법들을 포함할 수 있고, 복수의 분석 기법들이 수행되는 순서가 특정되어 정의될 수 있다. 이 때, 분석 플랜에 포함된 복수의 분석 기법들이 서로 유사할수록 해당 분석 플랜에 따른 분석을 통해 도출되는 결과가 편향될 확률이 높아질 수 있다. In an embodiment, each of the plurality of analysis plans may include a bias according to similarity between analysis techniques constituting the corresponding analysis plan. More specifically, one analysis plan may include a plurality of analysis techniques, and an order in which the plurality of analysis techniques are performed may be specified and defined. In this case, as the plurality of analysis techniques included in the analysis plan are similar to each other, the probability that the result derived through the analysis according to the analysis plan is biased may increase.

즉, 분석 플랜들은 EDR 장치(130)에 의해 사전에 정의될 수 있고, 정의되는 시점에 각 분석 기법들 간의 유사도를 산출하고 유사도를 기초로 한 편향성을 특징 정보로서 포함할 수 있다. 분석 기법들 간의 유사도는 분석 목적의 유사도, 분석 대상의 유사도 및 분석 방법의 유사도를 통합하여 결정될 수 있고, 구체적인 수치로서 표현될 수 있다.That is, the analysis plans may be defined in advance by the EDR device 130, and a similarity between each analysis technique may be calculated at the defined time point, and a bias based on the similarity may be included as feature information. The similarity between analysis techniques may be determined by integrating the similarity for the purpose of analysis, the similarity of the analysis target, and the similarity of the analysis method, and may be expressed as a specific number.

정적 분석 수행부(320)는 분석 플랜에 따라 특정 파일의 동작에 관한 편향(bias) 정적 분석을 수행할 수 있다. 여기에서, 편향(bias) 정적 분석은 분석 플랜의 편향성에 따라 특정 파일의 동작에 관한 정적 분석 결과도 편향된 결과가 도출되는 정적 분석에 해당할 수 있다. 예를 들어, 분석 플랜에 포함된 분석 기법들이 트로이 목마(Trojan)에 속하는 멀웨어(malware) 탐지에 특화된 기법들인 경우 해당 분석 플랜에 따른 정적 분석의 결과는 트로이 목마에 속하는지 여부를 높은 확률로 예측할 수 있다. 즉, 편향 정적 분석은 분석 플랜의 편향성이 높을수록 편향성 높은 분석 결과를 제공할 수 있다.The static analysis performing unit 320 may perform a bias static analysis on an operation of a specific file according to an analysis plan. Here, the bias static analysis may correspond to a static analysis in which a biased result is also derived from a static analysis result about the behavior of a specific file according to the bias of the analysis plan. For example, if the analysis techniques included in the analysis plan are specialized techniques for detecting malware belonging to a Trojan, the result of static analysis according to the corresponding analysis plan can predict whether it belongs to a Trojan horse with a high probability. I can. That is, in the biased static analysis, the higher the bias of the analysis plan, the higher the biased analysis result can be provided.

일 실시예에서, 정적 분석 수행부(320)는 분석 플랜들의 집합에서 편향성이 임계기준 이상인 분석 플랜들 중 어느 하나를 랜덤으로 선별하여 편향 정적 분석을 수행할 수 있다. 정적 분석 수행부(320)는 분석 시나리오에 따라 분석 플랜들의 집합에서의 선별 기준이 되는 임계기준을 결정할 수 있고, 분석 플랜의 편향성이 임계기준 이상인 분석 플랜들을 선별하여 편향 정적 분석을 수행할 수 있다.In an embodiment, the static analysis performing unit 320 may perform a biased static analysis by randomly selecting any one of analysis plans having a bias greater than or equal to a threshold criterion from a set of analysis plans. The static analysis execution unit 320 may determine a critical criterion that is a selection criterion in the set of analysis plans according to an analysis scenario, and may perform a biased static analysis by selecting analysis plans having a bias of the analysis plan equal to or greater than the critical criterion. .

분석 플랜 조정부(330)는 편향 정적 분석의 결과를 반영하여 동적 분석에 대한 분석 플랜을 조정할 수 있다. EDR 장치(130)는 분석 플랜 조정부(330)를 통해 분석 플랜 수립부(310)가 1차적으로 생성한 분석 플랜을 분석 과정에서 동적으로 갱신할 수 있다. 특히, 동적 분석에 대한 분석 플랜은 편향 정적 분석의 결과를 반영함으로써 편향된 정적 분석 결과를 기초로 멀웨어 탐지를 효과적으로 수행할 수 있다.The analysis plan adjustment unit 330 may adjust the analysis plan for the dynamic analysis by reflecting the result of the biased static analysis. The EDR device 130 may dynamically update the analysis plan primarily generated by the analysis plan establishment unit 310 through the analysis plan adjustment unit 330 during the analysis process. In particular, the analysis plan for the dynamic analysis reflects the result of the biased static analysis, so that malware detection can be effectively performed based on the biased static analysis result.

일 실시예에서, 분석 플랜 조정부(330)는 편향 정적 분석의 결과 불명확(uncertain)으로 분류되는 경우 동적 분석에 대한 분석 플랜의 편향성을 변경할 수 있다. 편향 정적 분석은 그 결과로서 특정 파일에 관한 동작의 정상(normal), 이상(abnormal) 및 불명확(uncertain) 중 어느 하나를 제공할 수 있다. 분석 플랜 조정부(330)는 편향 정적 분석의 결과가 불명확으로 분류된 경우 보다 정확도 높은 분석 결과를 도출하기 위하여 동적 분석에 대한 분석 플랜의 편향성을 변경할 수 있다. 따라서, 분석 플랜 조정부(330)는 편향 정적 분석의 결과가 명확한 경우, 예를 들어, 정상 또는 이상으로 분류된 경우에는 분석 플랜에 따라 동적 분석을 수행할 수 있음은 물론이다.In an embodiment, the analysis plan adjuster 330 may change the bias of the analysis plan for the dynamic analysis when it is classified as unclear as a result of the biased static analysis. Bias static analysis can provide as a result any one of normal, abnormal, and unclear behavior of a particular file. The analysis plan adjustment unit 330 may change the bias of the analysis plan for the dynamic analysis in order to derive a more accurate analysis result when the result of the biased static analysis is classified as unclear. Therefore, it goes without saying that the analysis plan adjustment unit 330 may perform dynamic analysis according to the analysis plan when the result of the biased static analysis is clear, for example, classified as normal or abnormal.

일 실시예에서, 분석 플랜 조정부(330)는 동적 분석에 대한 분석 플랜에 대해 분석 기법들 간의 유사도를 기초로 분석 기법들을 그룹화 하는 제1 단계, 그룹화된 분석 기법들의 그룹들 각각에 대한 대표 분석 기법을 결정하는 제2 단계 및 대표 분석 기법들을 분석 순서에 따라 배치하는 제3 단계를 수행함으로써 동적 분석에 대한 분석 플랜의 편향성을 변경할 수 있다.In one embodiment, the analysis plan adjustment unit 330 is a first step of grouping analysis techniques based on similarity between analysis techniques for an analysis plan for dynamic analysis, a representative analysis technique for each group of grouped analysis techniques The bias of the analysis plan with respect to the dynamic analysis may be changed by performing a second step of determining an analysis method and a third step of arranging representative analysis techniques in an analysis order.

보다 구체적으로, 분석 플랜 조정부(330)는 동적 분석에 대한 분석 플랜에 대해 분석 기법들 간의 유사도를 기초로 분석 기법들을 그룹화 할 수 있다. 하나의 분석 플랜은 복수의 분석 기법들을 포함하여 정의될 수 있고, 분석 플랜 조정부(330)는 복수의 분석 기법들을 분석 기법들 간의 유사도를 기초로 그룹화 할 수 있다. 이 경우 그룹화에 사용되는 알고리즘은 그룹화 대상의 중복 여부나 자료의 크기에 따라 계층적 알고리즘과 비계층적 알고리즘으로 구분될 수 있으며, 이에 대한 구체적인 설명은 생략한다.More specifically, the analysis plan adjustment unit 330 may group the analysis techniques with respect to the analysis plan for the dynamic analysis based on the similarity between the analysis techniques. One analysis plan may be defined including a plurality of analysis techniques, and the analysis plan adjustment unit 330 may group a plurality of analysis techniques based on similarity between the analysis techniques. In this case, the algorithm used for grouping may be classified into a hierarchical algorithm and a non-hierarchical algorithm depending on whether or not the grouping object overlaps or the size of data, and detailed descriptions thereof will be omitted.

또한, 분석 플랜 조정부(330)는 그룹화된 분석 기법들의 그룹들 각각에 대한 대표 분석 기법을 결정할 수 있다. 예를 들어, 분석 플랜 조정부(330)는 그룹화를 통해 생성된 각 그룹에서 평균 분석 시간이 가장 짧은 분석 기법을 대표 분석 기법으로 결정할 수 있다.In addition, the analysis plan adjustment unit 330 may determine a representative analysis technique for each group of grouped analysis techniques. For example, the analysis plan adjustment unit 330 may determine an analysis technique having the shortest average analysis time in each group generated through grouping as the representative analysis technique.

또한, 분석 플랜 조정부(330)는 대표 분석 기법들을 분석 순서에 따라 배치할 수 있다. 즉, 분석 플랜 조정부(330)는 그룹화를 통해 생성된 각 그룹들을 분석 순서에 따라 배치할 수 있고, 각 그룹들을 대신하여 대표 분석 기법들을 분석 순서에 따라 배치함으로써 기존의 분석 플랜을 변경할 수 있다.In addition, the analysis plan adjustment unit 330 may arrange representative analysis techniques according to an analysis order. That is, the analysis plan adjustment unit 330 may arrange each group generated through grouping according to the analysis order, and may change the existing analysis plan by arranging representative analysis techniques in place of each group according to the analysis order.

일 실시예에서, 분석 플랜 조정부(330)는 대표 분석 기법들 과의 유사도가 특정 기준 이하인 분석 기법들을 선별하여 대표 분석 기법들 사이에 배치하는 제4 단계를 추가 수행함으로써 동적 분석에 대한 분석 플랜의 편향성을 변경할 수 있다. 분석 플랜 조정부(330)는 분석 플랜에 포함되지 않는 분석 기법들을 대상으로 대표 분석 기법들 과의 유사하지 않은 분석 기법들을 선별하고, 분석 순서에 따라 배치된 대표 분석 기법들 사이에 각각 배치하여 동적 분석에 대한 기존의 분석 플랜을 변경할 수 있다. 결과적으로, 분석 플랜에 포함된 분석 기법의 변경으로 인해 해당 분석 플랜의 편향성 역시 변경될 수 있다.In one embodiment, the analysis plan adjustment unit 330 additionally performs a fourth step of selecting analysis techniques having a similarity with the representative analysis techniques less than or equal to a specific criterion and arranging them between the representative analysis techniques. You can change the bias. The analysis plan adjustment unit 330 selects analysis techniques that are not similar to the representative analysis techniques for analysis techniques that are not included in the analysis plan, and dynamically analyzes them by placing them between the representative analysis techniques arranged according to the analysis order. You can change the existing analysis plan for As a result, the bias of the analysis plan may also change due to changes in the analysis techniques included in the analysis plan.

동적 분석 수행부(340)는 조정된 분석 플랜을 기초로 파일의 동작에 관한 동적 분석을 수행할 수 있다. 동적 분석은 격리된(isolated) 가상 환경에서 파일에 관한 동작을 실행하면서 그 행위를 분석하는 기법으로 상대적으로 정확도 높은 결과를 획득할 수 있다. 그러나, 동적 분석은 정적 분석에 비해 상대적으로 많은 시간이 소요될 수 있고, 가상 환경의 구축과 운용에 추가적인 노력이 필요하다는 단점을 가질 수 있다.The dynamic analysis performing unit 340 may perform dynamic analysis on the operation of the file based on the adjusted analysis plan. Dynamic analysis is a technique that analyzes the behavior while executing an operation on a file in an isolated virtual environment, and can obtain relatively high-accuracy results. However, the dynamic analysis may take a relatively large amount of time compared to the static analysis, and may have a disadvantage in that additional efforts are required to construct and operate a virtual environment.

일 실시예에서, 동적 분석 수행부(340)는 분석 대상의 객체 유형에 따라 동작에 관한 프로파일을 선택하는 프로파일 선택 모듈, 가상 런타임 환경에서 객체에 관한 시뮬레이션 환경을 제공하는 시뮬레이션 모듈, 가상 런타임 환경에서 객체를 동작시켜 분석 플랜에 따른 동적 분석을 수행하는 동작 모듈을 포함할 수 있다.In one embodiment, the dynamic analysis performing unit 340 is a profile selection module that selects a profile for an operation according to an object type to be analyzed, a simulation module that provides a simulation environment for an object in a virtual runtime environment, and a virtual runtime environment. It may include an operation module that operates an object to perform dynamic analysis according to an analysis plan.

악성 행위 탐지부(350)는 동적 분석에 따라 파일의 동작에 관한 이상 패턴이 검출된 경우 특정 파일에 대해 비지도 학습 기반의 멀웨어(malware) 탐지를 수행하여 악성여부를 결정할 수 있다. 동적 분석 수행부(340)는 동적 분석을 통해 편향된 행위의 패턴을 이상 패턴으로서 검출할 수 있고, 악성 행위 탐지부(350)는 동적 분석 수행부(340)에 의한 검출에 따라 특정 파일에 대해 멀웨어 탐지 기법을 적용할 수 있다. 특히, 악성 행위 탐지부(350)는 비지도 학습을 통해 구축된 탐지 모델을 활용하여 악성여부를 결정할 수 있다.When an abnormal pattern related to an operation of a file is detected according to a dynamic analysis, the malicious behavior detection unit 350 may determine whether it is malicious by performing unsupervised learning-based malware detection on a specific file. The dynamic analysis execution unit 340 may detect a pattern of a biased behavior through dynamic analysis as an abnormal pattern, and the malicious behavior detection unit 350 may detect malware for a specific file according to the detection by the dynamic analysis execution unit 340. Detection techniques can be applied. In particular, the malicious behavior detection unit 350 may determine whether it is malicious by using a detection model built through unsupervised learning.

일 실시예에서, 악성 행위 탐지부(350)는 파일 동작에 관한 SYSCALL 그래프 모집단을 통해 형성된 비지도학습 네트워크를 통해 특정 파일에서 예상되는 행위가 알려지지 않은 위협을 발생시킬 가능성을 결정할 수 있다. 악성 행위 탐지부(350)는 특정 파일에 대한 사용자 행위에 기초하여 위협패턴을 검출할 수 있고, 이를 위하여 사전에 구축된 학습 결과를 사용할 수 있다. In an embodiment, the malicious behavior detection unit 350 may determine a possibility that an expected behavior in a specific file generates an unknown threat through an unsupervised learning network formed through a SYSCALL graph population related to a file operation. The malicious behavior detection unit 350 may detect a threat pattern based on a user's behavior for a specific file, and may use a pre-built learning result for this.

여기에서, 비지도학습 네트워크는 SYSCALL 그래프 모집단으로부터 추출된 학습데이터를 학습하여 생성된 학습 모델에 해당할 수 있고, 파일에 대한 사용자 행위가 알려지지 않은 위협을 발생시킬 수 있는지에 관한 정보를 제공할 수 있다. 즉, 악성 행위 탐지부(350)는 특정 파일에 관한 SYSCALL 그래프를 학습 네트워크에 입력하여 알려지지 않은 위협에 관한 정보를 획득할 수 있다. Here, the unsupervised learning network can correspond to the learning model generated by learning the learning data extracted from the SYSCALL graph population, and can provide information on whether user actions on the file can cause unknown threats. have. That is, the malicious behavior detection unit 350 may obtain information on an unknown threat by inputting a SYSCALL graph for a specific file into the learning network.

또한, SYSCALL 그래프 모집단은 라벨(label)이 부여되지 않은 파일의 SYSCALL 그래프의 집합에 해당할 수 있다. 따라서, 비지도학습 네트워크는 입력된 SYSCALL 그래프를 기초로 기존에 알려지지 않았지만 파일 또는 시스템의 동작과 관련하여 사용자에게 위협이 될 수 있는 이상행위에 해당할 확률에 관한 정보를 출력으로서 제공할 수 있다.In addition, the SYSCALL graph population may correspond to a set of SYSCALL graphs of files to which no label is assigned. Accordingly, the unsupervised learning network can provide information on the probability of an abnormal behavior that may be a threat to a user in relation to the operation of a file or system, although previously unknown based on the input SYSCALL graph.

일 실시예에서, 악성 행위 탐지부(350)는 비지도학습 네트워크의 출력으로서 특정 파일의 SYSCALL 그래프에 관한 패턴의 위험률을 획득하고 위험률이 임계값을 초과하는 경우 미리 정의된 정상 패턴과의 유사도를 기초로 알려지지 않은 위협의 발생 가능성을 결정할 수 있다. 악성 행위 탐지부(350)는 비지도학습 네트워크의 출력으로서 특정 파일의 SYSCALL 그래프에 관한 패턴의 위험률을 획득할 수 있고, 해당 위험률이 기준으로 미리 설정된 임계값을 초과하는 경우 알려지지 않은 위협으로서 1차 검출할 수 있다. 악성 행위 탐지부(350)는 1차 검출 결과를 기초로 사용자에게 알림을 제공할 수 있다.In one embodiment, the malicious behavior detection unit 350 obtains a risk rate of a pattern related to a SYSCALL graph of a specific file as an output of the unsupervised learning network, and when the risk rate exceeds a threshold value, the similarity with a predefined normal pattern is obtained. On the basis of this, it is possible to determine the likelihood of an unknown threat occurring. The malicious behavior detection unit 350 can obtain the risk rate of the pattern related to the SYSCALL graph of a specific file as an output of the unsupervised learning network. Can be detected. The malicious behavior detection unit 350 may provide a notification to the user based on the first detection result.

한편, 악성 행위 탐지부(350)는 1차 검출 결과로서 위험률이 임계값을 초과하는 경우 미리 정의된 정상 패턴과의 유사도를 기초로 알려지지 않은 위협의 발생 가능성을 2차 결정할 수 있다. 악성 행위 탐지부(350)는 특정 파일의 SYSCALL 그래프를 기초로 미리 정의된 정상 패턴들 과의 유사도를 각각 산출할 수 있고, 이를 기초로 알려지지 않은 위협의 발생 가능성을 2차적으로 산출할 수 있다. Meanwhile, when the risk rate exceeds a threshold value as a result of the primary detection, the malicious behavior detection unit 350 may secondarily determine the likelihood of occurrence of an unknown threat based on a similarity with a predefined normal pattern. The malicious behavior detection unit 350 may calculate the similarity with each of the predefined normal patterns based on the SYSCALL graph of a specific file, and based on this, may secondly calculate the possibility of occurrence of an unknown threat.

예를 들어, 악성 행위 탐지부(350)는 정상 패턴들과의 유사도(a1, a2, ..., an)에 관한 전체 평균 α(= Σai / n)을 산출하고 알려지지 않은 위협의 발생 가능성 β(= 1 - α)를 산출할 수 있다. 이 때, 정상 패턴과의 유사도 ai는 정상 패턴 i와 유사할수록 그 값이 높아질 수 있다. 따라서, 전체 평균 α가 높을수록 정상 패턴에 해당할 확률이 높고, 알려지지 않은 위협의 발생 가능성 β는 낮아질 수 있다.For example, the malicious behavior detection unit 350 calculates the overall average α (= Σa i / n) about the similarity (a 1 , a 2 , ..., a n) with the normal patterns and The probability of occurrence of β (= 1-α) can be calculated. In this case, the similarity a i with the normal pattern may increase as the similarity a i with the normal pattern i increases. Therefore, the higher the overall average α, the higher the probability of corresponding to the normal pattern, and the lower the probability β of the occurrence of an unknown threat.

제어부(360)는 EDR 장치(130)의 전체적인 동작을 제어하고, 분석 플랜 수립부(310), 정적 분석 수행부(320), 분석 플랜 조정부(330), 동적 분석 수행부(340) 및 악성 행위 탐지부(350) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.The control unit 360 controls the overall operation of the EDR device 130, and an analysis plan establishment unit 310, a static analysis execution unit 320, an analysis plan adjustment unit 330, a dynamic analysis execution unit 340, and a malicious behavior A control flow or data flow between the detection units 350 may be managed.

도 4는 도 1에 있는 EDR 장치에서 수행되는 동적인 분석 플랜을 이용하는 EDR 과정을 설명하는 순서도이다.4 is a flowchart illustrating an EDR process using a dynamic analysis plan performed in the EDR device of FIG. 1.

도 4를 참조하면, EDR 장치(130)는 분석 플랜 수립부(310)를 통해 기 정의된 분석 시나리오에 따라 엔드포인트 단말 상에서 특정 파일의 동작에 관한 정적 및 동적 분석들 각각의 분석 플랜을 생성할 수 있다(단계 S410). EDR 장치(130)는 정적 분석 수행부(320)를 통해 분석 플랜에 따라 특정 파일의 동작에 관한 편향(bias) 정적 분석을 수행할 수 있다(단계 S430). EDR 장치(130)는 분석 플랜 조정부(330)를 통해 편향 정적 분석의 결과를 반영하여 동적 분석에 대한 분석 플랜을 조정할 수 있다(단계 S450).Referring to FIG. 4, the EDR device 130 generates an analysis plan for each of static and dynamic analyzes on the operation of a specific file on the endpoint terminal according to a predefined analysis scenario through the analysis plan establishment unit 310. Can (step S410). The EDR device 130 may perform a bias static analysis on the operation of a specific file according to the analysis plan through the static analysis execution unit 320 (step S430). The EDR device 130 may adjust the analysis plan for the dynamic analysis by reflecting the result of the biased static analysis through the analysis plan adjustment unit 330 (step S450).

또한, EDR 장치(130)는 동적 분석 수행부(340)를 통해 조정된 분석 플랜을 기초로 파일의 동작에 관한 동적 분석을 수행할 수 있다(단계 S470). EDR 장치(130)는 악성 행위 탐지부(350)를 통해 동적 분석에 따라 파일의 동작에 관한 이상 패턴이 검출된 경우 특정 파일에 대해 비지도 학습 기반의 멀웨어(malware) 탐지를 수행하여 악성여부를 결정할 수 있다(단계 S490).In addition, the EDR device 130 may perform dynamic analysis on the operation of the file based on the analysis plan adjusted through the dynamic analysis performing unit 340 (step S470). The EDR device 130 detects malware by performing unsupervised learning-based malware detection on a specific file when an abnormal pattern related to the operation of a file is detected through dynamic analysis through the malicious behavior detection unit 350. It can be determined (step S490).

도 5는 본 발명의 일 실시예에 따른 동적인 분석 플랜을 이용하는 EDR 시스템을 설명하는 개념도이다.5 is a conceptual diagram illustrating an EDR system using a dynamic analysis plan according to an embodiment of the present invention.

도 5를 참조하면, 동적인 분석 플랜을 이용하는 EDR 시스템(100)은 엔드포인트 단말(510)에서 동작하는 엔드포인트 에이전트, 프론트-엔드 서버(530) 및 분석 서버(550)를 포함할 수 있다. 이 경우, 프론트-엔드 서버(530) 및 분석 서버(550)는 EDR 장치(130)로서 구현될 수 있다. 또한, 엔드포인트 단말(510)은 EDR 단말 장치(110)에 해당할 수 있다.Referring to FIG. 5, an EDR system 100 using a dynamic analysis plan may include an endpoint agent, a front-end server 530, and an analysis server 550 operating in the endpoint terminal 510. In this case, the front-end server 530 and the analysis server 550 may be implemented as the EDR device 130. In addition, the endpoint terminal 510 may correspond to the EDR terminal device 110.

프론트-엔드 서버(530)는 엔드포인트 에이전트로부터 수집된 정보를 기초로 분석 서버(550)에 엔드포인트의 가시성을 제공하는 동작을 수행할 수 있다. 분석 서버(550)는 엔드포인트 에이전트에서 사용하도록 시큐리티 정책을 생성하고 배포하는 역할을 수행할 수 있다. 이 때, 시큐리티 정책은 엔드포인트 단말(510) 상에서의 정적 및 동적 분석을 위한 분석 플랜을 포함할 수 있다.The front-end server 530 may perform an operation of providing visibility of an endpoint to the analysis server 550 based on information collected from the endpoint agent. The analysis server 550 may play a role of creating and distributing a security policy for use by an endpoint agent. In this case, the security policy may include an analysis plan for static and dynamic analysis on the endpoint terminal 510.

특히, 분석 서버(550)는 주기적으로 시큐리티 정책을 엔드포인트 에이전트에게 제공하여 엔드포인트 에이전트가 오프라인으로 동작할 경우에도 일정 수준 이상의 보안성을 유지할 수 있도록 유도할 수 있다. 분석 서버(550)는 관련 동작을 위하여 독립적인 SIEM(Security Information and Event Management) 모듈(570)과 연결될 수 있고, 분석(통계 또는 알람) 결과를 다양한 인터페이스를 통해 시각화하여 관리자에게 제공할 수 있다.In particular, the analysis server 550 may periodically provide a security policy to the endpoint agent to induce a certain level of security or higher even when the endpoint agent operates offline. The analysis server 550 may be connected to an independent SIEM (Security Information and Event Management) module 570 for related operations, and may visualize analysis (statistics or alarm) results through various interfaces and provide them to an administrator.

도 5에서, 엔드포인트 단말(510)은 프론트-엔드 서버(530)와 연결되어 사용자 신원 기반 세션을 유지 및 갱신할 수 있고, 이를 기초로 사용자의 행위를 추적할 수 있다. 이를 위하여 프론트-엔드 서버(530)는 엔드포인트 단말(510)로부터의 요청에 따라 사용자 신원 기반 세션의 생성 및 유지에 활용되는 사용자 식별자를 제공할 수 있고, 사용자 신원 기반 세션을 통해 엔드포인트 단말(510)과의 데이터 교환을 처리할 수 있다.In FIG. 5, the endpoint terminal 510 may be connected to the front-end server 530 to maintain and update a user identity-based session, and track a user's behavior based on this. To this end, the front-end server 530 may provide a user identifier used to create and maintain a user identity-based session according to a request from the endpoint terminal 510, and through the user identity-based session, the endpoint terminal ( 510) can handle data exchange.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to preferred embodiments of the present invention, those skilled in the art will variously modify and change the present invention within the scope not departing from the spirit and scope of the present invention described in the following claims. You will understand that you can do it.

100: 동적인 분석 플랜을 이용하는 EDR 시스템
110: EDR 단말 장치 130: EDR 장치
150: 데이터베이스
210: 프로세서 230: 메모리
250: 사용자 입출력부 270: 네트워크 입출력부
310: 분석 플랜 수립부 320: 정적 분석 수행부
330: 분석 플랜 조정부 340: 동적 분석 수행부
350: 악성 행위 탐지부 360: 제어부
510: 엔드포인트 단말 530: 프론트-엔드 서버
550: 분석서버 570: SIEM 모듈
100: EDR system with dynamic analysis plan
110: EDR terminal device 130: EDR device
150: database
210: processor 230: memory
250: user input/output unit 270: network input/output unit
310: analysis plan establishment unit 320: static analysis execution unit
330: analysis plan adjustment unit 340: dynamic analysis execution unit
350: malicious behavior detection unit 360: control unit
510: endpoint terminal 530: front-end server
550: analysis server 570: SIEM module

Claims (8)

기 정의된 분석 시나리오에 따라 엔드포인트 단말 상에서 특정 파일의 동작에 관한 정적 및 동적 분석들 각각의 분석 플랜을 생성하는 분석 플랜 수립부;
상기 분석 플랜에 따라 상기 동작에 관한 편향(bias) 정적 분석을 수행하는 정적 분석 수행부;
상기 편향 정적 분석의 결과를 반영하여 상기 동적 분석에 대한 분석 플랜을 조정하는 분석 플랜 조정부;
조정된 상기 분석 플랜을 기초로 상기 동작에 관한 동적 분석을 수행하는 동적 분석 수행부; 및
상기 동적 분석에 따라 상기 동작에 관한 이상 패턴이 검출된 경우 상기 특정 파일에 대해 비지도 학습 기반의 멀웨어(malware) 탐지를 수행하여 악성여부를 결정하는 악성 행위 탐지부를 포함하는 동적인 분석 플랜을 이용하는 EDR (Endpoint Detection & Response) 장치.
An analysis plan establishment unit that generates an analysis plan for each of static and dynamic analysis on the operation of a specific file on the endpoint terminal according to a predefined analysis scenario;
A static analysis performing unit that performs a static analysis of a bias on the operation according to the analysis plan;
An analysis plan adjustment unit adjusting an analysis plan for the dynamic analysis by reflecting the result of the biased static analysis;
A dynamic analysis performing unit that performs dynamic analysis on the operation based on the adjusted analysis plan; And
Using a dynamic analysis plan including a malicious behavior detection unit that determines whether it is malicious by performing unsupervised learning-based malware detection on the specific file when an abnormal pattern related to the operation is detected according to the dynamic analysis. EDR (Endpoint Detection & Response) device.
제1항에 있어서, 상기 분석 플랜 수립부는
복수의 분석 기법들에 관한 분석 순서의 조합으로 정의되는 분석 플랜들의 집합에서 상기 분석 시나리오에 매칭되고 상기 정적 및 동적 분석들 각각에 대응되는 분석 플랜을 결정하고,
상기 분석 플랜들 각각은 해당 분석 플랜을 구성하는 분석 기법들 간의 유사도에 따른 편향성을 포함하는 것을 특징으로 하는 동적인 분석 플랜을 이용하는 EDR 장치.
The method of claim 1, wherein the analysis plan establishment unit
Determine an analysis plan that matches the analysis scenario and corresponds to each of the static and dynamic analyzes from a set of analysis plans defined as a combination of analysis orders for a plurality of analysis techniques,
EDR apparatus using a dynamic analysis plan, characterized in that each of the analysis plans includes a bias according to a similarity between analysis techniques constituting the corresponding analysis plan.
제2항에 있어서, 상기 정적 분석 수행부는
상기 집합에서 상기 편향성이 임계기준 이상인 분석 플랜들 중 어느 하나를 랜덤으로 선별하여 상기 편향 정적 분석을 수행하는 것을 특징으로 하는 동적인 분석 플랜을 이용하는 EDR 장치.
The method of claim 2, wherein the static analysis performing unit
EDR apparatus using a dynamic analysis plan, characterized in that the biased static analysis is performed by randomly selecting any one of the analysis plans having the bias equal to or greater than a threshold criterion from the set.
제1항에 있어서, 상기 분석 플랜 조정부는
상기 편향 정적 분석의 결과 불명확(uncertain)으로 분류되는 경우 상기 동적 분석에 대한 분석 플랜의 편향성을 변경하는 것을 특징으로 하는 동적인 분석 플랜을 이용하는 EDR 장치.
The method of claim 1, wherein the analysis plan adjustment unit
EDR apparatus using a dynamic analysis plan, characterized in that when the result of the biased static analysis is classified as uncertain, the bias of the analysis plan for the dynamic analysis is changed.
제4항에 있어서, 상기 분석 플랜 조정부는
상기 동적 분석에 대한 분석 플랜에 대해 분석 기법들 간의 유사도를 기초로 분석 기법들을 그룹화 하는 제1 단계, 상기 그룹화된 분석 기법들의 그룹들 각각에 대한 대표 분석 기법을 결정하는 제2 단계 및 상기 대표 분석 기법들을 분석 순서에 따라 배치하는 제3 단계를 수행함으로써 상기 동적 분석에 대한 분석 플랜의 편향성을 변경하는 것을 특징으로 하는 동적인 분석 플랜을 이용하는 EDR 장치.
The method of claim 4, wherein the analysis plan adjustment unit
A first step of grouping analysis techniques based on similarity between analysis techniques for the analysis plan for the dynamic analysis, a second step of determining a representative analysis technique for each of the grouped analysis techniques, and the representative analysis EDR apparatus using a dynamic analysis plan, characterized in that by performing a third step of arranging techniques according to an analysis order, the bias of the analysis plan for the dynamic analysis is changed.
제5항에 있어서, 상기 분석 플랜 조정부는
상기 대표 분석 기법들 과의 유사도가 특정 기준 이하인 분석 기법들을 선별하여 상기 대표 분석 기법들 사이에 배치하는 제4 단계를 추가 수행함으로써 상기 동적 분석에 대한 분석 플랜의 편향성을 변경하는 것을 특징으로 하는 동적인 분석 플랜을 이용하는 EDR 장치.
The method of claim 5, wherein the analysis plan adjustment unit
Dynamic analysis characterized in that the bias of the analysis plan for the dynamic analysis is changed by additionally performing a fourth step of selecting analysis techniques having a similarity with the representative analysis techniques less than a specific criterion and placing them between the representative analysis techniques. EDR device using a phosphorus analysis plan.
제1항에 있어서, 상기 악성 행위 탐지부는
파일 동작에 관한 SYSCALL 그래프 모집단을 통해 형성된 비지도학습 네트워크를 통해 상기 특정 파일에서 예상되는 행위가 알려지지 않은 위협을 발생시킬 가능성을 결정하는 것을 특징으로 하는 동적인 분석 플랜을 이용하는 EDR 장치.
The method of claim 1, wherein the malicious behavior detection unit
EDR device using a dynamic analysis plan, characterized in that it determines the likelihood that an action expected in the specific file will generate an unknown threat through an unsupervised learning network formed through a population of a SYSCALL graph on file operation.
EDR (Endpoint Detection & Response) 장치에서 수행되는 방법에 있어서,
기 정의된 분석 시나리오에 따라 엔드포인트 단말 상에서 특정 파일의 동작에 관한 정적 및 동적 분석들 각각의 분석 플랜을 생성하는 단계;
상기 분석 플랜에 따라 상기 동작에 관한 편향(bias) 정적 분석을 수행하는 단계;
상기 편향 정적 분석의 결과를 반영하여 상기 동적 분석에 대한 분석 플랜을 조정하는 단계;
조정된 상기 분석 플랜을 기초로 상기 동작에 관한 동적 분석을 수행하는 단계; 및
상기 동적 분석에 따라 상기 동작에 관한 이상 패턴이 검출된 경우 상기 특정 파일에 대해 비지도 학습 기반의 멀웨어(malware) 탐지를 수행하여 악성여부를 결정하는 단계를 포함하는 동적인 분석 플랜을 이용하는 EDR 방법.
In a method performed in an EDR (Endpoint Detection & Response) device,
Generating an analysis plan for each of static and dynamic analyzes on an operation of a specific file on an endpoint terminal according to a predefined analysis scenario;
Performing a static bias analysis on the operation according to the analysis plan;
Adjusting an analysis plan for the dynamic analysis by reflecting the result of the biased static analysis;
Performing dynamic analysis on the operation based on the adjusted analysis plan; And
EDR method using a dynamic analysis plan comprising the step of determining whether the specific file is malicious by performing unsupervised learning-based malware detection when an abnormal pattern related to the operation is detected according to the dynamic analysis .
KR1020190143679A 2019-11-11 2019-11-11 Apparatus and methods for endpoint detection and reponse using dynamic analysis plans KR102348357B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190143679A KR102348357B1 (en) 2019-11-11 2019-11-11 Apparatus and methods for endpoint detection and reponse using dynamic analysis plans

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190143679A KR102348357B1 (en) 2019-11-11 2019-11-11 Apparatus and methods for endpoint detection and reponse using dynamic analysis plans

Publications (2)

Publication Number Publication Date
KR20210056790A true KR20210056790A (en) 2021-05-20
KR102348357B1 KR102348357B1 (en) 2022-01-11

Family

ID=76143042

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190143679A KR102348357B1 (en) 2019-11-11 2019-11-11 Apparatus and methods for endpoint detection and reponse using dynamic analysis plans

Country Status (1)

Country Link
KR (1) KR102348357B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679331A (en) * 2022-04-11 2022-06-28 北京国联天成信息技术有限公司 AI technology-based malicious code passive detection method and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060033603A (en) * 2004-10-15 2006-04-19 유문수 Automatic security service system by use of scenario and method
KR101814368B1 (en) 2017-07-27 2018-01-04 김재춘 Information security network integrated management system using big data and artificial intelligence, and a method thereof
KR101930293B1 (en) * 2017-09-12 2018-12-18 연세대학교 산학협력단 Apparatus and Method for Identifying Variety Malicious Code Using Static Analysis and Dynamic Analysis
KR101969572B1 (en) * 2018-06-22 2019-04-16 주식회사 에프원시큐리티 Malicious code detection apparatus and method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060033603A (en) * 2004-10-15 2006-04-19 유문수 Automatic security service system by use of scenario and method
KR101814368B1 (en) 2017-07-27 2018-01-04 김재춘 Information security network integrated management system using big data and artificial intelligence, and a method thereof
KR101930293B1 (en) * 2017-09-12 2018-12-18 연세대학교 산학협력단 Apparatus and Method for Identifying Variety Malicious Code Using Static Analysis and Dynamic Analysis
KR101969572B1 (en) * 2018-06-22 2019-04-16 주식회사 에프원시큐리티 Malicious code detection apparatus and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114679331A (en) * 2022-04-11 2022-06-28 北京国联天成信息技术有限公司 AI technology-based malicious code passive detection method and system
CN114679331B (en) * 2022-04-11 2024-02-02 北京国联天成信息技术有限公司 AI technology-based malicious code passive detection method and system

Also Published As

Publication number Publication date
KR102348357B1 (en) 2022-01-11

Similar Documents

Publication Publication Date Title
Han et al. Unicorn: Runtime provenance-based detector for advanced persistent threats
US11620524B2 (en) Issuing alerts for storage volumes using machine learning
US10936717B1 (en) Monitoring containers running on container host devices for detection of anomalies in current container behavior
Biggio et al. Poisoning behavioral malware clustering
Ahmed et al. Novel approach for network traffic pattern analysis using clustering-based collective anomaly detection
JP6528448B2 (en) Network attack monitoring device, network attack monitoring method, and program
US20180075240A1 (en) Method and device for detecting a suspicious process by analyzing data flow characteristics of a computing device
JP6557774B2 (en) Graph-based intrusion detection using process trace
CN112822206B (en) Network cooperative attack behavior prediction method and device and electronic equipment
Aburomman et al. Survey of learning methods in intrusion detection systems
Dong et al. Efficient discovery of abnormal event sequences in enterprise security systems
Sallam et al. Data and syntax centric anomaly detection for relational databases
Lin et al. Collaborative alert ranking for anomaly detection
US20230412620A1 (en) System and methods for cybersecurity analysis using ueba and network topology data and trigger - based network remediation
Al-Utaibi et al. Intrusion detection taxonomy and data preprocessing mechanisms
Rosli et al. Clustering analysis for malware behavior detection using registry data
US20230087309A1 (en) Cyberattack identification in a network environment
KR102311997B1 (en) Apparatus and method for endpoint detection and response terminal based on artificial intelligence behavior analysis
Halvorsen et al. Evaluating the observability of network security monitoring strategies with TOMATO
KR102221736B1 (en) Blockchain based device and method for endpoint detection and response
Anand et al. HiPeR-Early detection of a ransomware attack using hardware performance counters
KR102348357B1 (en) Apparatus and methods for endpoint detection and reponse using dynamic analysis plans
Datta et al. Real-time threat detection in ueba using unsupervised learning algorithms
Allaf et al. Confmvm: A hardware-assisted model to confine malicious vms
Ekong et al. Securing against zero-day attacks: a machine learning approach for classification and organizations’ perception of its impact

Legal Events

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