KR20200037472A - Malware cross analysis system and method for operating the same - Google Patents

Malware cross analysis system and method for operating the same Download PDF

Info

Publication number
KR20200037472A
KR20200037472A KR1020180116696A KR20180116696A KR20200037472A KR 20200037472 A KR20200037472 A KR 20200037472A KR 1020180116696 A KR1020180116696 A KR 1020180116696A KR 20180116696 A KR20180116696 A KR 20180116696A KR 20200037472 A KR20200037472 A KR 20200037472A
Authority
KR
South Korea
Prior art keywords
file
malicious code
infected
analysis
cross
Prior art date
Application number
KR1020180116696A
Other languages
Korean (ko)
Inventor
하정우
윤용구
Original Assignee
한화시스템 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한화시스템 주식회사 filed Critical 한화시스템 주식회사
Priority to KR1020180116696A priority Critical patent/KR20200037472A/en
Publication of KR20200037472A publication Critical patent/KR20200037472A/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/562Static detection
    • G06F21/565Static detection by checking file integrity

Abstract

Disclosed is a malicious code cross analysis system which can enhance security. According to an embodiment of the present invention, the malicious code cross analysis system comprises: a cross analysis unit analyzing a file by using each of a plurality of security solutions; a collection unit receiving the file from a user terminal, requesting analysis for the file to the analysis unit, receiving a result of the analysis of each of the plurality of security solutions from the analysis unit, and determining whether the file is infected with a malicious code based on the result of the analysis of each of the plurality of security solutions; and a processing unit transmitting a hash value of the malicious code, a file name, a deletion command, and information on whether a network is isolated to the user terminal if it is determined that the file is infected with the malicious code by the collection unit.

Description

악성 코드 교차 분석 시스템 및 이의 동작 방법{MALWARE CROSS ANALYSIS SYSTEM AND METHOD FOR OPERATING THE SAME}Malware cross-analysis system and its operation method {MALWARE CROSS ANALYSIS SYSTEM AND METHOD FOR OPERATING THE SAME}

아래 실시예들은 악성 코드 교차 분석에 관한 것이다.The embodiments below relate to cross-analysis of malicious code.

최근에, 악성 코드가 파일에 숨겨져 배포되어 피해가 발생한다. 이러한 피해를 줄이기 위해선 악성 코드를 정확히 탐지하는 기술이 요구된다. Recently, malicious code is hidden in files and distributed, causing damage. In order to reduce such damage, a technology for accurately detecting malicious code is required.

관련 선행기술로, 한국 등록특허공보 제10-1060596호(발명의 명칭: 악성 파일 탐지 시스템, 악성 파일 탐지 장치 및 그 방법, 출원인: 한국전자통신연구원)가 있다. 해당 등록특허공보에는 네트워크상에서 수집된 실행 파일을 그에 대응하는 가상화창을 할당한 후, 해당 가상화 프로그램을 통해 실행시키고, 해당 실행 파일의 동작 상태를 모니터링하며, 모니터링된 동작 상태의 결과를 분석하여 악성 파일 여부를 판단한 후에, 악성 파일 여부를 포함하는 악성 파일 정보를 제공함으로써, 가상화 프로그램을 통해 실행 파일을 실행시켜 그 동작 상태 분석을 통해 악성 파일 유무를 쉽게 판단하는 내용이 개시된다.As a related prior art, there is Korean Patent Registration No. 10-1060596 (name of invention: malicious file detection system, malicious file detection device and method, and applicant: Korea Electronics and Telecommunications Research Institute). In the registered patent publication, a virtualization window corresponding to the executable file collected on the network is allocated, and then executed through the virtualization program, the operation status of the execution file is monitored, and the result of the monitored operation status is analyzed to be malicious. After determining whether a file is a file, by providing malicious file information including a malicious file, a content for easily determining the presence or absence of a malicious file through an operation state analysis by executing an executable file through a virtualization program is disclosed.

일 측에 따른 악성 코드 교차 분석 시스템은 복수의 보안 솔루션들 각각을 이용하여 파일을 분석하는 교차 분석부; 상기 파일을 사용자 단말로부터 수신하고, 상기 파일에 대한 분석을 상기 분석부에 요청하며, 상기 분석부로부터 상기 복수의 보안 솔루션들 각각의 분석 결과를 수신하고, 상기 복수의 보안 솔루션들 각각의 분석 결과를 기초로 상기 파일이 악성 코드에 감염되었는지 여부를 결정하는 수집부; 및 상기 파일이 상기 수집부에 의해 상기 악성 코드에 감염되었다고 결정된 경우, 상기 악성 코드의 해시값, 파일명, 삭제 명령, 및 네트워크 격리여부를 상기 사용자 단말로 전송하는 처리부를 포함한다.The malicious code cross-analysis system according to one side includes a cross-analysis unit that analyzes a file using each of a plurality of security solutions; Receiving the file from the user terminal, requesting the analysis of the file to the analysis unit, receiving the analysis results of each of the plurality of security solutions from the analysis unit, analysis results of each of the plurality of security solutions A collection unit that determines whether the file is infected with a malicious code based on the; And a processing unit transmitting the hash value of the malicious code, a file name, a deletion command, and network isolation to the user terminal when it is determined that the file is infected with the malicious code by the collection unit.

상기 수집부는 상기 파일을 상기 사용자 단말로부터 수신한 경우 상기 파일이 악성 코드 감염 파일에 해당하는지 여부를 확인할 수 있고, 상기 파일이 악성 코드 감염 파일에 해당하지 않는 것으로 확인한 경우 상기 파일에 대한 분석을 상기 분석부에 요청할 수 있다.When the file is received from the user terminal, the collection unit may check whether the file corresponds to a malicious code-infected file, and when it is determined that the file does not correspond to a malicious code-infected file, analyzes the file. You can ask the analysis department.

상기 수집부는 상기 파일이 상기 악성 코드에 감염되지 않은 것으로 결정한 경우, 상기 파일을 데이터베이스에 저장할 수 있다.The collection unit may store the file in a database when it is determined that the file is not infected with the malicious code.

일 측에 따른 악성 코드 교차 분석 시스템은 과거에 악성 코드에 감염되지 않은 것으로 상기 수집부에 의해 결정되었던 적어도 하나의 파일이 저장된 데이터베이스를 더 포함할 수 있다.The malicious code cross-analysis system according to one side may further include a database in which at least one file determined by the collection unit is not infected with the malicious code in the past.

일 측에 따른 악성 코드 교차 분석 시스템은 상기 데이터베이스에 저장된 적어도 하나의 파일이 상기 악성 코드에 감염되었는지 여부에 대한 하나 이상의 검사 결과를 획득하고 상기 획득된 검사 결과를 기초로 상기 데이터베이스에 저장된 적어도 하나의 파일이 상기 악성 코드에 감염되었는지 여부를 결정하는 회귀 진단 엔진을 더 포함할 수 있다.The malicious code cross-analysis system according to one side acquires one or more scan results for whether at least one file stored in the database is infected with the malicious code, and at least one stored in the database based on the obtained scan results It may further include a regression diagnostic engine to determine whether the file is infected with the malicious code.

상기 획득된 검사 결과는 최신 분석 기법을 통해 획득될 수 있다.The obtained inspection result can be obtained through the latest analysis technique.

일 측에 따른 악성 코드 교차 분석 시스템의 동작 방법은 파일을 사용자 단말로부터 수신하는 단계; 복수의 보안 솔루션들 각각을 이용하여 상기 파일을 분석하는 단계; 상기 복수의 보안 솔루션들 각각의 분석 결과를 기초로 상기 파일이 악성 코드에 감염되었는지 여부를 결정하는 단계; 및 상기 파일이 상기 악성 코드에 감염되었다고 결정된 경우, 상기 악성 코드의 해시값, 파일명, 삭제 명령, 및 네트워크 격리여부를 상기 사용자 단말로 전송하는 단계를 포함한다.A method of operating a malicious code cross-analysis system according to one side includes receiving a file from a user terminal; Analyzing the file using each of a plurality of security solutions; Determining whether the file is infected with malicious code based on an analysis result of each of the plurality of security solutions; And when it is determined that the file is infected with the malicious code, transmitting the hash value of the malicious code, a file name, a deletion command, and network isolation to the user terminal.

일 측에 따른 악성 코드 교차 분석 시스템의 동작 방법은 상기 파일을 상기 사용자 단말로부터 수신한 경우 상기 파일이 악성 코드 감염 파일에 해당하는지 여부를 확인하는 단계를 더 포함할 수 있고, 상기 파일을 분석하는 단계는 상기 파일이 악성 코드 감염 파일에 해당하지 않는 것으로 확인한 경우 상기 파일을 분석하는 단계를 포함할 수 있다.The operation method of the malicious code cross-analysis system according to one side may further include determining whether the file corresponds to a malicious code-infected file when the file is received from the user terminal, and analyzing the file The step may include analyzing the file when it is determined that the file does not correspond to a malicious code infected file.

일 측에 따른 악성 코드 교차 분석 시스템의 동작 방법은 상기 파일이 상기 악성 코드에 감염되지 않은 것으로 결정한 경우, 상기 파일을 데이터베이스에 저장하는 단계를 더 포함할 수 있다.The operation method of the malicious code cross-analysis system according to one side may further include storing the file in a database when it is determined that the file is not infected with the malicious code.

일 측에 따른 악성 코드 교차 분석 시스템의 동작 방법은 데이터베이스에 저장된 적어도 하나의 파일이 상기 악성 코드에 감염되었는지 여부에 대한 하나 이상의 검사 결과를 획득하는 단계; 및 상기 획득된 검사 결과를 기초로 상기 데이터베이스에 저장된 적어도 하나의 파일이 상기 악성 코드에 감염되었는지 여부를 결정하는 단계를 더 포함할 수 있다.The method of operating a malicious code cross-analysis system according to an aspect includes obtaining one or more scan results of whether at least one file stored in a database is infected with the malicious code; And determining whether at least one file stored in the database is infected with the malicious code based on the obtained scan result.

상기 획득된 검사 결과는 최신 분석 기법을 통해 획득될 수 있다.The obtained inspection result can be obtained through the latest analysis technique.

상기 데이터베이스에 저장된 적어도 하나의 파일은 과거에 상기 악성 코드에 감염되지 않은 것으로 결정되었던 것일 수 있다.At least one file stored in the database may have been determined not to be infected with the malicious code in the past.

실시예들은 복수의 보안 솔루션들을 통해 하나 이상의 파일이 하나 이상의 악성 코드에 감염되었는지를 교차 분석할 수 있어, 알려진 악성 코드 및/또는 알려지지 않은 악성 코드에 기반한 지능형 지속 보안 위협(APT, Advanced Persistent Threat)에 대응할 수 있고, 보안을 강화할 수 있다.Embodiments can cross-analyze if one or more files are infected with one or more malware through a plurality of security solutions, so that advanced persistent threats (APTs) based on known and / or unknown malware Countermeasures and increase security.

도 1은 일 실시예에 따른 악성 코드 교차 분석 시스템을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 악성 코드 교차 분석 시스템 내의 다중 교차 분석 엔진을 설명하기 위한 도면이다.
도 3은 일 실시예에 따른 악성 코드 교차 분석 시스템 내의 회귀 진단 엔진을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 악성 코드 교차 분석 시스템의 동작 방법을 설명하기 위한 순서도이다.
1 is a diagram for explaining a malicious code cross-analysis system according to an embodiment.
2 is a diagram for explaining a multiple cross analysis engine in a malicious code cross analysis system according to an embodiment.
3 is a diagram for describing a regression diagnosis engine in a malicious code cross-analysis system according to an embodiment.
4 is a flowchart illustrating a method of operating a malicious code cross-analysis system according to an embodiment.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, various changes may be made to the embodiments, and the scope of the patent application right is not limited or limited by these embodiments. It should be understood that all modifications, equivalents, or substitutes for the embodiments are included in the scope of rights.

실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are for illustrative purposes only and should not be construed as limiting. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, the terms "include" or "have" are intended to indicate the presence of features, numbers, steps, actions, components, parts or combinations thereof described herein, one or more other features. It should be understood that the existence or addition possibilities of fields or numbers, steps, operations, components, parts or combinations thereof are not excluded in advance.

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

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same reference numerals are assigned to the same components regardless of reference numerals, and redundant descriptions thereof will be omitted. In describing the embodiments, when it is determined that detailed descriptions of related known technologies may unnecessarily obscure the subject matter of the embodiments, detailed descriptions thereof will be omitted.

도 1은 일 실시예에 따른 악성 코드 교차 분석 시스템을 설명하기 위한 도면이다. 1 is a diagram for explaining a malicious code cross-analysis system according to an embodiment.

도 1을 참조하면, 일 실시예에 따른 악성 코드 교차 분석 시스템(100)은 다중 교차 분석 엔진(110) 및 회귀 진단 엔진(120)을 포함한다.Referring to FIG. 1, the malicious code cross-analysis system 100 according to an embodiment includes a multiple cross-analysis engine 110 and a regression diagnosis engine 120.

다중 교차 분석 엔진(110)은 적어도 하나 엔드 포인트(end point) 및 네트워크로부터 파일을 수집한다. 엔드 포인트는 사용자 PC 등의 사용자 단말로 달리 표현될 수 있다. 파일은, 예를 들어, 실행 파일, 문서 파일 등을 포함할 수 있다. 파일은 전술한 예들로 제한되지 않는다.The multiple cross-analysis engine 110 collects files from at least one end point and network. The endpoint can be represented differently by a user terminal such as a user PC. The file may include, for example, an executable file, a document file, and the like. The file is not limited to the examples described above.

다중 교차 분석 엔진(110)은 복수의 보안 솔루션들 각각을 이용하여 파일을 분석한다. 복수의 보안 솔루션 각각은 해당 파일에 악성 코드가 있는지를 탐지하는 솔루션을 나타낸다. 일 실시예에 있어서, 복수의 보안 솔루션들 각각의 벤더(vendor)는 서로 다르다. 다시 말해, 다중 교차 분석 엔진(110)은 서로 다른 벤더들 각각의 보안 솔루션을 이용하여 파일을 분석한다. 일례로, 다중 교차 분석 엔진(110)에 벤더 A의 보안 솔루션, 벤더 B의 보안 솔루션, 및 벤더 C의 보안 솔루션이 존재하는 경우, 다중 교차 분석 엔진(110)은 벤더 A의 보안 솔루션, 벤더 B의 보안 솔루션, 및 벤더 C의 보안 솔루션 각각을 구동하여 파일을 분석할 수 있다. The multiple cross analysis engine 110 analyzes a file using each of a plurality of security solutions. Each of the plurality of security solutions represents a solution that detects whether there is malicious code in the corresponding file. In one embodiment, each vendor of a plurality of security solutions is different. In other words, the multiple cross-analysis engine 110 analyzes files using security solutions of different vendors. In one example, if a multiple cross-analysis engine 110 has a vendor A security solution, a vendor B security solution, and a vendor C security solution, the multiple cross-analysis engine 110 is the vendor A security solution, the vendor B You can analyze the files by running each of the security solutions of Vendor C and the security solutions of Vendor C.

다중 교차 분석 엔진(110)은 복수의 보안 솔루션들 각각의 분석 결과를 기초로 파일이 악성 코드에 감염되었는지 여부를 결정한다. 다중 교차 분석 엔진(110)은 파일이 악성 코드에 감염되지 않은 것으로 결정한 경우, 해당 파일을 데이터베이스에 저장한다. 후술하겠지만, 해당 파일은 이후에 회귀 진단 엔진(120)의 정밀 분석에 의해 악성 코드에 감염되었는지가 체크된다. 다중 교차 분석 엔진(110)은 파일이 악성 코드에 감염된 것으로 결정한 경우, 악성 코드의 해시값, 악성 코드 파일명, 및 악성 코드의 호스트의 IP(internet protocol) 주소 정보 중 어느 하나 또는 이들의 조합을 해당 파일의 수집처에 해당하는 엔드 포인트로 전송한다. 엔드 포인트는 악성 코드의 해시값 및/또는 악성 코드 파일명을 기초로 해당 파일을 삭제하거나 파일 실행을 보류할 수 있고, 호스트를 네트워크로부터 격리하여 주변으로의 확산을 차단할 수 있다.The multiple cross analysis engine 110 determines whether the file is infected with malicious code based on the analysis result of each of the plurality of security solutions. When it is determined that the file is not infected with malicious code, the multi-cross analysis engine 110 stores the file in the database. As will be described later, the file is then checked for infection by malicious code by precise analysis of the regression diagnosis engine 120. When the cross-analysis engine 110 determines that a file is infected with malicious code, the multi-cross analysis engine 110 corresponds to any one or a combination of hash value of the malicious code, the malicious code file name, and IP (internet protocol) address information of the host of the malicious code. Transfer to the endpoint corresponding to the destination of the file. The endpoint may delete the file or suspend the execution of the file based on the hash value of the malicious code and / or the file name of the malicious code, and isolate the host from the network to block the spread to the surroundings.

회귀 진단 엔진(120)은 다중 교차 분석 엔진(110)의 데이터베이스에 저장된 하나 이상의 파일을 분석하여 해당 파일이 악성 코드에 감염되었는지 여부를 검사한다. 이러한 검사는 신종 기법을 사용하여 분석을 우회한 뒤, 네트워크에 침투한 상황을 고려한 것이다. 다시 말해, 악성 코드는 분석기술을 회피할 수 있고 이러한 악성 코드는 다중 교차 분석 엔진(110)에 의해 탐색되지 않을 수 있는데, 이 경우, 다중 교차 분석 엔진(110)은 해당 악성 코드를 포함하는 파일을 정상이라고 결정할 수 있다. 회귀 진단 엔진(120)은 다중 교차 분석 엔진(110)이 과거에 정상으로 결정한 하나 이상의 파일을 최신의 분석 방법으로 정밀 분석하여 해당 파일이 악성 코드에 감염되었는지를 검사할 수 있다. 일례로, 회귀 진단 엔진(120)은 하나 이상의 파일을 코드형태, 샌드박스, 최신의 악성코드 DB를 이용하는 정적/동적/평판도 분석을 활용하여 해당 파일이 악성코드에 감염되었는지를 검사할 수 있다. 이에 따라, 악성 코드에 의한 피해가 최소화되거나 없을 수 있고 악성 코드 교차 분석 시스템(100)의 신뢰성이 보다 향상될 수 있다.The regression diagnosis engine 120 analyzes one or more files stored in the database of the multiple cross-analysis engine 110 to check whether the corresponding file is infected with malicious code. These tests took into account the situation where they penetrated the network after bypassing the analysis using new techniques. In other words, the malicious code can evade the analysis technology and the malicious code may not be searched by the multiple cross-analysis engine 110. In this case, the multiple cross-analysis engine 110 may include a file containing the malicious code. Can be determined as normal. The regression diagnosis engine 120 may precisely analyze one or more files that the multiple cross-analysis engine 110 has determined to be normal in the past using the latest analysis method to check whether the corresponding files are infected with malicious code. As an example, the regression diagnosis engine 120 may check whether the corresponding file is infected with the malicious code using static / dynamic / reputation analysis using one or more files in the form of code, sandbox, and the latest malicious code DB. Accordingly, damage caused by the malicious code may be minimized or absent, and the reliability of the malicious code cross-analysis system 100 may be improved.

도 2는 일 실시예에 따른 악성 코드 교차 분석 시스템 내의 다중 교차 분석 엔진을 설명하기 위한 도면이다.2 is a diagram for explaining a multiple cross analysis engine in a malicious code cross analysis system according to an embodiment.

도 2를 참조하면, 다중 교차 분석 엔진(110)은 수집부(210), 데이터베이스(220), 교차 분석부(230), 및 처리부(240)를 포함한다.Referring to FIG. 2, the multiple cross analysis engine 110 includes a collection unit 210, a database 220, a cross analysis unit 230, and a processing unit 240.

수집부(210)는 하나 이상의 엔드 포인트 및/또는 네트워크로부터 하나 이상의 파일을 수집 또는 수신한다. The collection unit 210 collects or receives one or more files from one or more endpoints and / or networks.

일 실시예에 따르면, 수집부(210)는 파일을 수집 또는 수신한 경우, 해당 파일이 악성 코드 감염 파일에 해당하는지 여부를 확인할 수 있다. 일례로, 수집부(210)는 미리 저장된 IOC(Indicators of Compromise) 데이터에 기초하여 해당 파일이 악성 코드 감염 파일에 해당하는지 여부를 확인할 수 있다. 수집부(210)는 해당 파일이 악성 코드 감염 파일인 경우, 해당 파일을 전송한 엔드 포인트에게 해당 파일을 삭제할 것을 지시 또는 명령할 수 있다. 수집부(210)는 해당 파일이 악성 코드 감염 파일에 해당하지 않는 경우, 해당 파일에 대한 분석을 교차 분석부(230)에 요청할 수 있다.According to an embodiment, when the collection unit 210 collects or receives a file, it may determine whether the corresponding file corresponds to a malicious code-infected file. As an example, the collection unit 210 may check whether the corresponding file corresponds to a malicious code infected file based on pre-stored indicators of compromise (IOC) data. When the corresponding file is a malicious code infected file, the collection unit 210 may instruct or instruct the endpoint that transmitted the corresponding file to delete the corresponding file. When the corresponding file does not correspond to a malicious code-infected file, the collection unit 210 may request the cross-analysis unit 230 to analyze the file.

교차 분석부(230)는 복수의 보안 솔루션들 각각을 이용하여 파일을 분석한다. The cross-analysis unit 230 analyzes a file using each of a plurality of security solutions.

각 보안 솔루션은 파일이 악성 코드에 감염되었는지에 대한 분석 결과를 도출할 수 있다. 이 때, 각 보안 솔루션은 동적 분석, 정적 분석, 및 평판 분석 중 적어도 하나를 통해 파일을 분석할 수 있다.Each security solution can derive an analysis result on whether the file is infected with malicious code. At this time, each security solution can analyze the file through at least one of dynamic analysis, static analysis, and reputation analysis.

일례로, 교차 분석부(230)가 파일 x1에 대한 분석을 요청받은 경우, 각 보안 솔루션은 파일 x1에 대한 분석 결과를 아래 표 1과 같이 도출할 수 있다.As an example, when the cross-analysis unit 230 is requested to analyze the file x1, each security solution may derive the analysis results for the file x1 as shown in Table 1 below.

위험도 HighRisk High 위험도 MediumRisk Medium 위험도 LowLow risk 벤더 A의 보안 솔루션Vendor A security solutions 1One 22 00 벤더 B의 보안 솔루션Vendor B security solutions 22 1One 00 벤더 C의 보안 솔루션Vendor C security solutions 1One 33 00

즉, 파일 x1에 대한 각 보안 솔루션의 분석 결과는 위험도 High에 해당하는 악성 코드의 개수 및 위험도 Medium에 해당하는 악성 코드의 개수를 포함할 수 있다. 여기서, 파일 x1에 대한 각 보안 솔루션의 분석 결과는 위험도 High에 해당하는 악성 코드의 종류 및 위험도 Medium에 해당하는 악성 코드의 종류를 포함할 수 있다.다른 일례로, 교차 분석부(230)가 파일 x2에 대한 분석을 요청받은 경우, 각 보안 솔루션은 파일 x2에 대한 분석 결과를 아래 표 2와 같이 도출할 수 있다.That is, the analysis result of each security solution for the file x1 may include the number of malicious codes corresponding to high risk and the number of malicious codes corresponding to medium risk. Here, the analysis result of each security solution for the file x1 may include the type of malicious code corresponding to the high risk and the type of malicious code corresponding to the medium risk. As another example, the cross-analysis unit 230 is a file When analysis for x2 is requested, each security solution can derive the analysis results for file x2 as shown in Table 2 below.

위험도 HighRisk High 위험도 MediumRisk Medium 위험도 LowLow risk 벤더 A의 보안 솔루션Vendor A security solutions 00 33 00 벤더 B의 보안 솔루션Vendor B security solutions 00 22 00 벤더 C의 보안 솔루션Vendor C security solutions 00 00 00

즉, 파일 x2에 대한 벤더 A 및 벤더 B 각각의 보안 솔루션의 분석 결과는 위험도 High에 해당하는 악성 코드의 개수 및 위험도 Medium에 해당하는 악성 코드의 개수를 포함할 수 있고, 파일 x2에 대한 벤더 C의 보안 솔루션의 분석 결과는 위험도 High에 해당하는 악성 코드의 개수, 위험도 Medium에 해당하는 악성 코드의 개수, 및 위험도 Low에 해당하는 악성 코드의 개수를 포함할 수 있다. 또 다른 일례로, 교차 분석부(230)가 파일 x3에 대한 분석을 요청받은 경우, 각 보안 솔루션은 파일 x3에 대한 분석 결과를 아래 표 3과 같이 도출할 수 있다.In other words, the analysis results of the vendor A and vendor B security solutions for the file x2 may include the number of malicious codes corresponding to the high risk and the number of malicious codes corresponding to the medium medium, and the vendor C for the file x2. The analysis result of the security solution may include the number of malicious codes corresponding to high risk, the number of malicious codes corresponding to medium risk, and the number of malicious codes corresponding to low risk. As another example, when the cross-analysis unit 230 is requested to analyze the file x3, each security solution may derive the analysis results for the file x3 as shown in Table 3 below.

위험도 HighRisk High 위험도 MediumRisk Medium 위험도 LowLow risk 벤더 A의 보안 솔루션Vendor A security solutions 00 00 00 벤더 B의 보안 솔루션Vendor B security solutions 00 00 00 벤더 C의 보안 솔루션Vendor C security solutions 00 00 00

교차 분석부(230)는 복수의 보안 솔루션들 각각의 분석 결과를 수집부(210)로 전송한다. 각 보안 솔루션의 분석 결과는 위 표 1 내지 표 3을 통해 설명한 것과 같이, 특정 위험도에 해당하는 악성 코드의 개수 및 종류를 포함할 수 있다.수집부(210)는 복수의 보안 솔루션들 각각의 분석 결과를 기초로 파일이 악성 코드에 감염되었는지 여부를 결정한다. 일례로, 수집부(210)는 위의 표 1에 해당하는 분석 결과를 교차 분석부(230)로부터 수신할 수 있다. 위의 표 1에서 각 보안 솔루션은 위험도 High에 해당하는 악성 코드를 파일 x1에서 검출하였으므로, 수집부(210)는 파일 x1이 악성 코드에 감염되었다고 결정할 수 있다. 다른 일례로, 수집부(210)는 위의 표 2에 해당하는 분석 결과를 교차 분석부(230)로부터 수신할 수 있다. 위의 표 2에서 벤더 A의 보안 솔루션 및 벤더 B의 보안 솔루션은 파일 x2에서 위험도 Medium에 해당하는 악성 코드를 검출하였으나 벤더 C의 보안 솔루션은 악성 코드를 검출하지 못했다. 이 경우, 수집부(210)는 다수결에 따라 파일 x2는 악성 코드에 감염되었다고 결정할 수 있다. 또 다른 일례로, 수집부(210)는 위의 표 3에 해당하는 분석 결과를 교차 분석부(230)로부터 수신할 수 있다. 위의 표 3에서 각 보안 솔루션은 악성 코드를 검출하지 못했다. 이 경우, 수집부(210)는 파일 x3가 악성 코드에 감염되지 않았다고 결정할 수 있다.The cross analysis unit 230 transmits the analysis results of each of the plurality of security solutions to the collection unit 210. The analysis results of each security solution may include the number and type of malicious codes corresponding to a specific risk, as described through Tables 1 to 3 above. The collection unit 210 analyzes each of a plurality of security solutions Based on the results, it is determined whether the file is infected with malicious code. As an example, the collection unit 210 may receive the analysis results corresponding to Table 1 above from the cross analysis unit 230. In Table 1 above, since each security solution detects the malicious code corresponding to the high risk in the file x1, the collection unit 210 may determine that the file x1 is infected with the malicious code. As another example, the collection unit 210 may receive the analysis results corresponding to Table 2 above from the cross analysis unit 230. In Table 2 above, vendor A's security solution and vendor B's security solution detected malicious code corresponding to medium risk in file x2, but vendor C's security solution did not detect malicious code. In this case, the collection unit 210 may determine that the file x2 is infected with malicious code according to the majority vote. As another example, the collection unit 210 may receive the analysis results corresponding to Table 3 above from the cross analysis unit 230. In Table 3 above, each security solution did not detect malicious code. In this case, the collection unit 210 may determine that the file x3 is not infected with malicious code.

수집부(210)는 파일이 악성 코드에 감염되지 않았다고 결정한 경우, 수집부(210) 또는 처리부(240)는 파일을 데이터베이스(220)에 저장할 수 있다. 다시 말해, 파일이 악성 코드에 감염되지 않은 정상 파일에 해당하는 경우, 수집부(210)는 해당 파일을 데이터베이스(220)에 저장할 수 있다. 처리부(240)는 해당 파일은 악성 코드에 감염되지 않았다는 결과를 해당 파일의 전송처에 해당하는 엔드 포인트로 전달할 수 있다. When the collection unit 210 determines that the file is not infected with the malicious code, the collection unit 210 or the processing unit 240 may store the file in the database 220. In other words, if the file corresponds to a normal file that is not infected with malicious code, the collection unit 210 may store the file in the database 220. The processing unit 240 may deliver the result that the corresponding file is not infected with the malicious code to the endpoint corresponding to the destination of the corresponding file.

수집부(210)는 파일이 악성 코드에 감염되었다고 결정한 경우, 처리부(240)는 해당 파일을 전송한 엔드 포인트에게 악성 코드의 해쉬값, 악성 코드 파일명, 및 악성 코드의 호스트(예를 들어, C&C(Command & Control) 서버)의 IP 주소 정보를 전송할 수 있다. 또한, 처리부(240)는 악성 코드 원본을 데이터베이스(220)에 저장할 수 있다. When the collection unit 210 determines that the file is infected with the malicious code, the processing unit 240 transmits the hash value of the malicious code, the malicious code file name, and the host of the malicious code (for example, C & C) (Command & Control) server) to send IP address information. Also, the processing unit 240 may store the original malicious code in the database 220.

엔드 포인트는 악성 코드의 해시값 및/또는 악성 코드 파일명을 기초로 해당 파일을 삭제하거나 파일 실행을 보류할 수 있고, 호스트를 네트워크로부터 격리하여 주변으로의 확산을 차단할 수 있다.The endpoint may delete the file or suspend the execution of the file based on the hash value of the malicious code and / or the file name of the malicious code, and isolate the host from the network to block the spread to the surroundings.

데이터베이스(220)에 하나 이상의 파일들이 저장된다. 이러한 파일들은 수집부(210)가 과거에 정상이라고 결정한 파일에 해당한다. 일례로, 데이터베이스(220)에는 수집부(210)가 1년전에 정상이라고 결정한 하나 이상의 파일들, 수집부(210)가 6개월 전에 정상이라고 결정한 하나 이상의 파일들, 수집부(210)가 1주일 전에 정상이라고 결정한 하나 이상의 파일들이 저장되어 있다. 데이터베이스(220)에 저장된 파일들은 후술할 회귀 진단 엔진에 의해 악성 코드에 감염되었는지 확인될 수 있다. One or more files are stored in the database 220. These files correspond to files determined by the collection unit 210 to be normal in the past. For example, in the database 220, one or more files that the collection unit 210 determined to be normal one year ago, one or more files that the collection unit 210 determined to be normal six months ago, and the collection unit 210 to one week One or more files have been saved that were previously determined to be normal. Files stored in the database 220 may be checked for infection by malicious code by a regression diagnosis engine, which will be described later.

일 실시예에 따르면, 다중 교차 분석 엔진(110)은 복수의 보안 솔루션들을 통해 하나 이상의 파일이 악성 코드에 감염되었는지를 교차 분석할 수 있다. 이로 인해, 알려진 악성 코드 뿐 아니라 알려지지 않은 악성 코드에 기반한 지능형 지속 보안 위협(APT, Advanced Persistent Threat)에 대응할 수 있고, 보안성이 향상될 수 있다. According to an embodiment, the multiple cross analysis engine 110 may cross analyze whether one or more files are infected with malicious code through a plurality of security solutions. Due to this, it is possible to cope with advanced persistent threats (APTs) based on unknown malicious codes as well as known malicious codes, and security can be improved.

도 3은 일 실시예에 따른 악성 코드 교차 분석 시스템 내의 회귀 진단 엔진을 설명하기 위한 도면이다.3 is a diagram for describing a regression diagnosis engine in a malicious code cross-analysis system according to an embodiment.

도 3을 참조하면, 회귀 진단 엔진(120)은 분석부(310)를 포함한다.Referring to FIG. 3, the regression diagnosis engine 120 includes an analysis unit 310.

분석부(310)는 데이터베이스(220)에 저장된 적어도 하나의 파일이 악성 코드에 감염되었는지 여부에 대한 하나 이상의 검사 결과를 획득한다. 일례로, 분석부(310)는 데이터베이스(220)에 저장된 적어도 하나의 파일을 하나 이상의 백신 프로그램을 통해 검사할 수 있다. 또한, 분석부(310)는 데이터베이스(220)에 저장된 적어도 하나의 파일에 대한 악성 코드 검사를 특정 웹사이트에 요청할 수 있고, 특정 웹사이트로부터 검사 결과를 수신할 수 있다. The analysis unit 310 acquires one or more scan results of whether at least one file stored in the database 220 is infected with malicious code. For example, the analysis unit 310 may examine at least one file stored in the database 220 through one or more vaccine programs. In addition, the analysis unit 310 may request a malicious website to scan a specific website for at least one file stored in the database 220 and receive a scan result from the specific website.

분석부(310)는 획득된 하나 이상의 검사 결과를 기초로 데이터베이스(220)에 저장된 적어도 하나의 파일이 악성 코드에 감염되었는지 여부를 결정한다. 일례로, 분석부(310)는 검사 결과들 중에서 파일이 위험도가 높은 악성 코드에 감염된 것으로 의심된다는 검사 결과가 절반 이상을 차지하는 경우, 해당 파일이 악성 코드에 감염된 것으로 결정할 수 있다.The analysis unit 310 determines whether at least one file stored in the database 220 is infected with malicious code based on the obtained one or more scan results. For example, the analysis unit 310 may determine that the file is infected with the malicious code when the scan result that the file is suspected to be infected with the high-risk malicious code among the scan results occupies more than half.

분석부(310)는 특정 파일이 악성 코드에 감염된 것으로 결정한 경우, 악성 코드의 해시값, 파일명, 삭제 명령, 및 네트워크 격리 여부를 해당 파일을 전송한 엔드 포인트로 전송할 수 있다. 엔드 포인트는 해당 악성 코드의 해시값 및 파일명을 통해 해당 파일을 삭제할 수 있고 호스트를 네트워크로부터 격리하여 주변으로의 확산을 차단할 수 있다.When it is determined that the specific file is infected with the malicious code, the analysis unit 310 may transmit the hash value of the malicious code, a file name, a deletion command, and network isolation to the endpoint that transmitted the corresponding file. The endpoint can delete the corresponding file through the hash value and file name of the malicious code, and can isolate the host from the network and block the spread to the surroundings.

일 실시예에 따르면, 회귀 진단 엔진(120)은 과거에 악성 코드에 감염되지 않은 파일이 현재 시점에 악성 코드에 감염되었는지 여부를 재차 결정할 수 있다. 즉, 과거에 알려지지 않았으나 현재 알려진 악성 코드 또는 과거에 악성 코드로 분석되지 않았으나 현재에는 회귀 진단 엔진(120)을 통해 악성 코드로 탐지될 수 있다. 이에 따라, 엔드 포인트의 보안성이 향상될 수 있고 APT에 의한 피해를 줄이거나 APT에 보다 잘 대응할 수 있다.According to an embodiment, the regression diagnosis engine 120 may re-determine whether a file not infected with the malicious code in the past has been infected with the malicious code at the present time. That is, although it was not known in the past but was not analyzed as currently known malicious code or in the past, it can be detected as malicious code through the regression diagnosis engine 120. Accordingly, the security of the endpoint can be improved, and damage caused by the APT can be reduced or the APT can be better responded.

도 4는 일 실시예에 따른 악성 코드 교차 분석 시스템의 동작 방법을 설명하기 위한 순서도이다.4 is a flowchart illustrating a method of operating a malicious code cross-analysis system according to an embodiment.

도 4를 참조하면, 악성 코드 교차 분석 시스템(100)은 파일을 사용자 단말로부터 수신한다(410). 일례로, 사용자 단말은 파일이 첨부된 이메일을 수신하는 경우, 해당 파일을 실행하기 전에 악성 코드 교차 분석 시스템(100)으로 전송할 수 있다. 4, the malicious code cross-analysis system 100 receives a file from the user terminal (410). In one example, when the user terminal receives an email with a file attached, the user terminal may transmit it to the malicious code cross-analysis system 100 before executing the file.

악성 코드 교차 분석 시스템(100)은 복수의 보안 솔루션들 각각을 이용하여 파일을 분석한다(420).The malicious code cross-analysis system 100 analyzes a file using each of a plurality of security solutions (420).

악성 코드 교차 분석 시스템(100)은 복수의 보안 솔루션들 각각의 분석 결과를 기초로 파일이 악성 코드에 감염되었는지 여부를 결정한다(430).The malicious code cross-analysis system 100 determines whether the file is infected with the malicious code based on the analysis result of each of the plurality of security solutions (430).

악성 코드 교차 분석 시스템(100)은 파일이 악성 코드에 감염되었다고 결정된 경우, 악성 코드의 해시값, 파일명, 삭제 명령, 및 네트워크 격리여부를 사용자 단말에 전달한다(440).When it is determined that the file is infected with the malicious code, the malicious code cross-analysis system 100 transmits the hash value of the malicious code, the file name, a deletion command, and network isolation to the user terminal (440).

도 1 내지 도 3을 통해 기술된 사항들은 도 4를 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.Since the items described through FIGS. 1 to 3 may be applied to the items described through FIG. 4, detailed descriptions are omitted.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The device described above may be implemented with hardware components, software components, and / or combinations of hardware components and software components. For example, the devices and components described in the embodiments include, for example, processors, controllers, arithmetic logic units (ALUs), digital signal processors (micro signal processors), microcomputers, field programmable gate arrays (FPGAs). , A programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions, may be implemented using one or more general purpose computers or special purpose computers. The processing device may run an operating system (OS) and one or more software applications running on the operating system. In addition, the processing device may access, store, manipulate, process, and generate data in response to the execution of the software. For convenience of understanding, a processing device may be described as one being used, but a person having ordinary skill in the art, the processing device may include a plurality of processing elements and / or a plurality of types of processing elements. It can be seen that may include. For example, the processing device may include a plurality of processors or a processor and a controller. In addition, other processing configurations, such as parallel processors, are possible.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instruction, or a combination of one or more of these, and configure the processing device to operate as desired, or process independently or collectively You can command the device. Software and / or data may be interpreted by a processing device, or to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodied in the transmitted signal wave. The software may be distributed on networked computer systems, and stored or executed in a distributed manner. Software and data may be stored in one or more computer-readable recording media.

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

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by a limited embodiment and drawings, those skilled in the art can make various modifications and variations from the above description. For example, the described techniques are performed in a different order than the described method, and / or the components of the described system, structure, device, circuit, etc. are combined or combined in a different form from the described method, or other components Alternatively, even if replaced or substituted by equivalents, appropriate results can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (10)

복수의 보안 솔루션들 각각을 이용하여 파일을 분석하는 교차 분석부;
상기 파일을 사용자 단말로부터 수신하고, 상기 파일에 대한 분석을 상기 분석부에 요청하며, 상기 분석부로부터 상기 복수의 보안 솔루션들 각각의 분석 결과를 수신하고, 상기 복수의 보안 솔루션들 각각의 분석 결과를 기초로 상기 파일이 악성 코드에 감염되었는지 여부를 결정하는 수집부; 및
상기 파일이 상기 수집부에 의해 상기 악성 코드에 감염되었다고 결정된 경우, 상기 악성 코드의 해시값, 파일명, 삭제 명령, 및 네트워크 격리여부를 상기 사용자 단말로 전송하는 처리부
를 포함하는,
악성 코드 교차 분석 시스템.
A cross-analysis unit that analyzes a file using each of a plurality of security solutions;
Receiving the file from the user terminal, requesting the analysis of the file to the analysis unit, receiving the analysis results of each of the plurality of security solutions from the analysis unit, analysis results of each of the plurality of security solutions A collection unit that determines whether the file is infected with a malicious code based on the; And
When it is determined that the file is infected with the malicious code by the collection unit, a processing unit that transmits the hash value of the malicious code, a file name, a deletion command, and network isolation to the user terminal
Containing,
Malware cross-analysis system.
제1항에 있어서,
상기 수집부는 상기 파일을 상기 사용자 단말로부터 수신한 경우 상기 파일이 악성 코드 감염 파일에 해당하는지 여부를 확인하고, 상기 파일이 악성 코드 감염 파일에 해당하지 않는 것으로 확인한 경우 상기 파일에 대한 분석을 상기 분석부에 요청하는,
악성 코드 교차 분석 시스템.
According to claim 1,
When the file is received from the user terminal, the collection unit checks whether the file corresponds to a malicious code-infected file, and analyzes the analysis of the file when it is determined that the file does not correspond to a malicious code-infected file. Asking for wealth,
Malware cross-analysis system.
제1항에 있어서,
상기 수집부는 상기 파일이 상기 악성 코드에 감염되지 않은 것으로 결정한 경우, 상기 파일을 데이터베이스에 저장하는,
악성 코드 교차 분석 시스템.
According to claim 1,
If the collection unit determines that the file is not infected with the malicious code, the file is stored in the database.
Malware cross-analysis system.
제1항에 있어서,
과거에 악성 코드에 감염되지 않은 것으로 상기 수집부에 의해 결정되었던 적어도 하나의 파일이 저장된 데이터베이스
를 더 포함하는,
악성 코드 교차 분석 시스템.
According to claim 1,
Database that stores at least one file that has been determined by the collection unit as not being infected with malicious code in the past
Further comprising,
Malware cross-analysis system.
제4항에 있어서,
상기 데이터베이스에 저장된 적어도 하나의 파일이 상기 악성 코드에 감염되었는지 여부에 대한 하나 이상의 검사 결과를 획득하고 -상기 획득된 검사 결과는 최신 분석 기법을 통해 획득됨-, 상기 획득된 검사 결과를 기초로 상기 데이터베이스에 저장된 적어도 하나의 파일이 상기 악성 코드에 감염되었는지 여부를 결정하는 회귀 진단 엔진
을 더 포함하는,
악성 코드 교차 분석 시스템.
According to claim 4,
Obtain one or more scan results of whether at least one file stored in the database is infected with the malicious code, and-the obtained scan results are obtained through the latest analysis technique-based on the obtained scan results Regression diagnosis engine that determines whether at least one file stored in the database is infected with the malicious code
Containing more,
Malware cross-analysis system.
파일을 사용자 단말로부터 수신하는 단계;
복수의 보안 솔루션들 각각을 이용하여 상기 파일을 분석하는 단계;
상기 복수의 보안 솔루션들 각각의 분석 결과를 기초로 상기 파일이 악성 코드에 감염되었는지 여부를 결정하는 단계; 및
상기 파일이 상기 악성 코드에 감염되었다고 결정된 경우, 상기 악성 코드의 해시값, 파일명, 삭제 명령, 및 네트워크 격리여부를 상기 사용자 단말로 전송하는 단계
를 포함하는,
악성 코드 교차 분석 시스템의 동작 방법.
Receiving a file from a user terminal;
Analyzing the file using each of a plurality of security solutions;
Determining whether the file is infected with malicious code based on an analysis result of each of the plurality of security solutions; And
If it is determined that the file is infected with the malicious code, transmitting the hash value, file name, deletion command, and network isolation of the malicious code to the user terminal
Containing,
How the malware cross-analysis system works.
제6항에 있어서,
상기 파일을 상기 사용자 단말로부터 수신한 경우 상기 파일이 악성 코드 감염 파일에 해당하는지 여부를 확인하는 단계
를 더 포함하고,
상기 파일을 분석하는 단계는,
상기 파일이 악성 코드 감염 파일에 해당하지 않는 것으로 확인한 경우 상기 파일을 분석하는 단계
를 포함하는,
악성 코드 교차 분석 시스템의 동작 방법.
The method of claim 6,
Checking whether the file corresponds to a malicious code infected file when the file is received from the user terminal
Further comprising,
The step of analyzing the file,
Analyzing the file if it is determined that the file does not correspond to a malicious code-infected file
Containing,
How the malware cross-analysis system works.
제6항에 있어서,
상기 파일이 상기 악성 코드에 감염되지 않은 것으로 결정한 경우, 상기 파일을 데이터베이스에 저장하는 단계
를 더 포함하는,
악성 코드 교차 분석 시스템의 동작 방법.
The method of claim 6,
If it is determined that the file is not infected with the malicious code, storing the file in a database
Further comprising,
How the malware cross-analysis system works.
제6항에 있어서,
데이터베이스에 저장된 적어도 하나의 파일이 상기 악성 코드에 감염되었는지 여부에 대한 하나 이상의 검사 결과를 획득하는 단계-상기 획득된 검사 결과는 최신 분석 기법을 통해 획득됨-; 및
상기 획득된 검사 결과를 기초로 상기 데이터베이스에 저장된 적어도 하나의 파일이 상기 악성 코드에 감염되었는지 여부를 결정하는 단계
를 더 포함하는,
악성 코드 교차 분석 시스템의 동작 방법.
The method of claim 6,
Obtaining one or more scan results of whether at least one file stored in the database is infected with the malicious code, wherein the obtained scan results are obtained through the latest analysis technique; And
Determining whether at least one file stored in the database is infected with the malicious code based on the obtained scan result
Further comprising,
How the malware cross-analysis system works.
제9항에 있어서,
상기 데이터베이스에 저장된 적어도 하나의 파일은 과거에 상기 악성 코드에 감염되지 않은 것으로 결정되었던 것인,
악성 코드 교차 분석 시스템의 동작 방법.
The method of claim 9,
At least one file stored in the database was determined to have been infected with the malicious code in the past,
How the malware cross-analysis system works.
KR1020180116696A 2018-10-01 2018-10-01 Malware cross analysis system and method for operating the same KR20200037472A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180116696A KR20200037472A (en) 2018-10-01 2018-10-01 Malware cross analysis system and method for operating the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180116696A KR20200037472A (en) 2018-10-01 2018-10-01 Malware cross analysis system and method for operating the same

Publications (1)

Publication Number Publication Date
KR20200037472A true KR20200037472A (en) 2020-04-09

Family

ID=70275940

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180116696A KR20200037472A (en) 2018-10-01 2018-10-01 Malware cross analysis system and method for operating the same

Country Status (1)

Country Link
KR (1) KR20200037472A (en)

Similar Documents

Publication Publication Date Title
US10380337B2 (en) Configuring a sandbox environment for malware testing
US10223534B2 (en) Static detection of vulnerabilities in base images of software containers
US10193929B2 (en) Methods and systems for improving analytics in distributed networks
US9294486B1 (en) Malware detection and analysis
JP4938576B2 (en) Information collection system and information collection method
US20130340077A1 (en) Secure cloud hypervisor monitor
KR102271545B1 (en) Systems and Methods for Domain Generation Algorithm (DGA) Malware Detection
JP6000465B2 (en) Process inspection apparatus, process inspection program, and process inspection method
US10412101B2 (en) Detection device, detection method, and detection program
US11556652B2 (en) End-point visibility
US10601867B2 (en) Attack content analysis program, attack content analysis method, and attack content analysis apparatus
US20230300168A1 (en) Detecting malware infection path in a cloud computing environment utilizing a security graph
US10893090B2 (en) Monitoring a process on an IoT device
US20230208862A1 (en) Detecting malware infection path in a cloud computing environment utilizing a security graph
US10635811B2 (en) System and method for automation of malware unpacking and analysis
KR20200037472A (en) Malware cross analysis system and method for operating the same
Hsiao et al. Combining dynamic passive analysis and active fingerprinting for effective bot malware detection in virtualized environments
KR101291125B1 (en) Method and apparatus for providing dignosis and cure service of malicious code in virtualization environment

Legal Events

Date Code Title Description
E601 Decision to refuse application