WO2012023657A1 - Network-based harmful-program detection method using a virtual machine, and a system comprising the same - Google Patents

Network-based harmful-program detection method using a virtual machine, and a system comprising the same Download PDF

Info

Publication number
WO2012023657A1
WO2012023657A1 PCT/KR2010/007133 KR2010007133W WO2012023657A1 WO 2012023657 A1 WO2012023657 A1 WO 2012023657A1 KR 2010007133 W KR2010007133 W KR 2010007133W WO 2012023657 A1 WO2012023657 A1 WO 2012023657A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
network
file
harmful
traffic
Prior art date
Application number
PCT/KR2010/007133
Other languages
French (fr)
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 주식회사 이세정보
Publication of WO2012023657A1 publication Critical patent/WO2012023657A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • 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
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms

Definitions

  • the present invention relates to a network-based malicious program detection method and system using a virtual machine for monitoring the network and the entire individual user terminal at the same time to detect malicious programs on the network.
  • the network security equipment determines whether the malicious code is the only event in the network area. Therefore, in case of excessive traffic, DDos attack, IP / MAC / ARP tampering attack by zombie PC, there is a limit that you cannot directly control the PC or malicious code existing in the network.
  • malicious codes were collected by collecting malicious codes and analyzing these malicious codes by applying them to individual PCs.
  • the existing security devices capture and analyze the information flowing through the network in one direction only, analyze the collected files through simple pattern comparison method without dynamic heuristic function, and do only the traffic based analysis.
  • agent-based security solutions operating on conventional PCs can obtain the pattern information or files of malicious codes at the process level by monitoring the status of individual PCs, but it is difficult to know the status of the entire network and agents. The disadvantage is that all must be installed.
  • the present invention detects and monitors not only traffic and packets on the network, but also zombies operating in the client and worms affecting the network, in conjunction with agents in the client, thereby ensuring organic security between the network and the client.
  • the present invention aims to provide a network-based malicious program detection method using a virtual machine capable of system and a system thereof.
  • the present invention provides a network-based malicious program detection method and system using a virtual machine capable of bidirectional capture of packets flowing through a network and reducing false positive rates when analyzing collected data.
  • the present invention is to provide a network-based malicious program detection method and system using a virtual machine that can prevent the zombie PC and zero-day attack by real-time monitoring and updating the various traffic or files of the network and individual PC.
  • the present invention relates to a method and system for detecting harmful programs on a network by simultaneously monitoring the entire network and individual user terminals.
  • a network-based malicious program detection method using a virtual machine includes: (a) analyzing all data of a network by packet mirroring; (b) filtering and blocking unnecessary packets by the filtering engine; (c) generating statistical data for each IP at which packet transmission and reception occurs; And (d) writes the collected files through a filtering engine to a database and transfers the suspect files to the virtual machine controller, and the virtual machine controller delivers the received suspicious files to one of a plurality of waiting virtual machines. Analyzing at the analyzer; Characterized in that comprises a.
  • the network-based malicious program detection system using a virtual machine includes a mirroring module for mirroring data on the network; A filtering module for blocking unnecessary packets from the packets passing through the mirroring module by filtering the filtering engine; A data generation module for forming statistical data for each IP in which packet transmission and reception occur in a network; A file collection engine for collecting data passing through the filtering engine; A virtual machine controller controlling copying, destroying, and running of the virtual machine, transferring suspicious files among collected files to the virtual machine, and transferring suspicious file analysis results of the virtual machine to a database; A plurality of virtual machines having an analyzer configured to analyze a suspicious file received from the virtual machine controller, and transferring the suspicious file analysis result to the virtual machine controller; And a database storing statistical data for each IP, a file collected through a file collection engine, and a file analysis result of a virtual machine. Characterized in that it comprises a.
  • the present invention as described above can collect a file containing a command delivered to the suspect file and malicious code on the network through a packet combination and analyze it in a virtual machine.
  • network equipment performs traditional traffic-based tasks
  • virtual machines perform process-based PC-based analysis of executing and inspecting the corresponding files, securing security to the PC area that IPS or IDS could not fully satisfy. can do.
  • an organic security scheme is possible between the network and the client.
  • all the traffic flowing through the network can be monitored by performing bidirectional capture during mirroring.
  • dynamic heuristic signatures and traffic pattern signatures are automatically updated in real time according to various traffic or file analysis of the network and individual PCs, monitoring and results thereof. Therefore, when a file detected as a harmful program moves on the network, it can be immediately determined without further analysis. That is, it detects unknown DDos attack tools and malicious codes used in DDos attacks using the present invention, generates the details of the actions (C & C server IP, use port, communication type, etc.) as signatures and applies them to the security products that are built. This enables an integrated security system against large-scale DDos attacks and zero-day attacks.
  • 1 and 2 are a flow chart of a network-based malicious program detection method using a virtual machine of the present invention.
  • Figure 3 is a detailed flowchart of the data passed through the filtering engine in the network-based malicious program detection method using a virtual machine of the present invention.
  • FIG. 4 is a table showing a list of monitorable behaviors and their underlying data through dynamic heuristics.
  • FIG. 5 is a conceptual diagram illustrating an embodiment in which a dynamic heuristic engine matches a policy based on process behavior.
  • FIG. 6 is a flowchart illustrating an embodiment of a signature auto-update process of the virtual machine analyzer.
  • FIG. 7 is a flow chart illustrating an embodiment for adding, changing, and deleting signatures in a virtual machine analyzer.
  • FIG. 8 is a flow diagram illustrating an embodiment for signature auto-update of a packet filtering engine.
  • FIG. 9 is a flow chart showing the order in which file downloads are blocked when collecting malicious files using the present invention.
  • FIG. 10 is a block diagram of a network-based harmful program detection system using a virtual machine of the present invention.
  • Router 20 L4 Switch
  • mirroring module 120 filtering engine
  • 1 and 2 are flowcharts of a network-based malicious program detection method using the virtual machine 160 of the present invention.
  • the present invention relates to a network-based malicious program detection method using a virtual machine 160 to monitor the network and the entire individual user terminal 50 at the same time to detect malicious programs on the network. Analyzing the data; (b) filtering and blocking unnecessary packets by the filtering engine 120; (c) generating statistical data for each IP at which packet transmission and reception occurs; And (d) records the collected file through the filtering engine 120 in the database 170 and then transfers the suspicious file to the virtual machine controller 150, and the virtual machine controller 150 waits for the received suspicious file. Passing the data to one of the plurality of virtual machines 160 being analyzed so that the analyzer 162 of the virtual machine 160 analyzes the virtual machine 160; Characterized in that comprises a.
  • the present invention begins with analyzing all data of the network in a packet mirroring manner (step (a)).
  • the present invention uses a mirroring concept in which the tap 40 equipment is installed on the top of the network instead of the inline mode to capture all data flowing through the network in real time and use it for analysis. Therefore, it operates without overloading the network and does not cause any problem to the network even if a failure occurs.
  • the present invention by modifying the network device driver by using a technique capable of performing the communication between the driver and the application to achieve the highest speed, it is possible to allow the mirroring to achieve a sufficient capture performance.
  • bidirectional capture can occur simultaneously, allowing both traffic to be monitored.
  • the filtering engine 120 skips all unnecessary surveillance targets and data other than the surveillance region, and has surveillance IP / PORT and unmonitored IP / PORT target information.
  • the filtering engine 120 proceeds with pattern analysis by signatures to discover malicious packets that attempt to invade.
  • the address information and matching signature information of the packet are recorded in the database 170 log.
  • step (b) an unnecessary inspection object in the list is excluded from the inspection by using a white list.
  • the harmful traffic detection history can be stored separately in the database (170).
  • Steps may be selectively performed by the user. Agents are the minimum modules for performing blocking and can optionally be installed.
  • step (c) statistical information is generated by analyzing all IP, PORT, and PROTOCOL information in which packet transmission and reception occur.
  • Such statistical data may be stored separately in the database 170, and the data recorded in the database 170 may view the real-time traffic status by the web manager 230. By viewing the packet transmission and reception contents, it is possible to identify specific PCs that increase traffic, and identify transmission paths of harmful traffic or suspicious files.
  • information can be generated to centrally monitor the desired sub IP or group.
  • the suspect file is transferred to the virtual machine controller 150, and the virtual machine controller 150
  • the received suspicious file is delivered to one of the plurality of waiting virtual machines 160 and analyzed by the analyzer 162 of the virtual machine 160.
  • step (d) among the files passing through the filtering engine 120, executable files or files of a desired format are collected by the file collection engine 140.
  • the malware signature file can be extracted by comparing the pattern signature.
  • a file is collected from the packet information passing through the filtering engine 120, and the name and detailed information of the collected file are continuously recorded in the database 170 as a log.
  • the collected suspicious file is transferred to the virtual machine controller 150, and the virtual machine controller 150 delivers the suspicious file to the virtual machine 160.
  • the suspicious file is transmitted to the analyzer 162 which is a program for analyzing whether the suspicious file is malicious code by the virtual machine controller 150 and analyzed.
  • the analysis result is received by the virtual machine controller 150. It is delivered and stored in the database 170 again.
  • the files collected from the network may be the same file.
  • the file analyzed once can extract unique information, and the same file can be skipped without further analysis, thereby reducing unnecessary performance.
  • the database 170 is a file-based database 170 that can operate at a higher speed than the general database 170, and provides a function of storing and retrieving various data.
  • the database 170 stores not only file collection details, but also harmful traffic detection details, statistical data details by IP, and malware analysis details, which can be viewed through the web manager 230.
  • the virtual machine controller 150 copies, destroys, and operates the virtual machine 160 so that the collected suspect files can be inspected in the virtual machine.
  • the virtual machine 160 which analyzes the suspicious file and delivers the analysis result to the virtual machine controller 150 is destroyed.
  • the virtual machine controller 150 duplicates the virtual machine 160 as many times as the number of the destroyed virtual machine 160 so that the number of the virtual machine 160 remains the same.
  • the number of virtual machines 160 waiting is maintained to n, and when a collection file is added to a waiting queue to generate a virtual machine 160 that can be analyzed, several suspicious files may be delivered and analyzed up to n at the same time.
  • the virtual machine 160 is operated by a set number. When the virtual machine 160 is damaged, the virtual machine 160 is automatically generated and the virtual machine 160 is further operated.
  • the analyzer 162 automatically resets the virtual machine 160 after completing the test, and always waits to recreate the clone to check the suspicious file.
  • the analyzer 162 existing in the virtual machine 160 is an agent program for analyzing whether the transferred suspicious file is malicious code, and is automatically operated when the virtual machine 160 is executed.
  • the analyzer 162 executes and analyzes the suspicious file and transmits the suspect file to the virtual machine controller 150.
  • the analyzer 162 includes an engine that monitors the use of native functions of the OS based on behavior and analyzes harmful programs by dynamic heuristic techniques.
  • the suspicious file matched by the dynamic heuristic decision policy terminates the analysis, and transmits the policy content and suspicious file information that detects the suspicious file to the virtual machine controller 150.
  • the suspicious file which is not detected by the policy transmits the detailed behavior history and process information by the behavior-based native function usage monitoring to the virtual machine controller 150 and finishes the analysis.
  • the communication between the virtual machine controller 150 and the virtual machine analyzer 162 is a path directly connected to the OS, not a path of the existing malicious code, and the malware cannot move through this path. Therefore, the virus cannot be spread to the outside of the virtual machine 160, so it is safe.
  • the malicious code is executed in the virtual machine 160 such as a PC environment, the behavior and characteristics of the malicious code at the time of execution can be analyzed.
  • FIG. 4 is a table showing a list of monitorable behaviors and their underlying data through dynamic heuristics.
  • the dynamic heuristic engine monitors the series of actions shown in FIG. 4, and a combination of these actions creates a policy.
  • the process of performing a combination of these actions is matched to the policy upon detection, matching not only a single action but also the nature of the scenario in which the actions are combined.
  • policies can be used to reduce false positives that are detected by normal processes as compared to detecting single actions, and to reflect in detail the behavior patterns of malware.
  • FIG. 5 is a conceptual diagram of a dynamic heuristic engine matching a policy based on process behavior.
  • action A, action B, action C is the policy set in the dynamic heuristic engine.
  • the collected file arrives at the analyzer 162 of the virtual machine 160, the file is executed, from which the behavior of the process is compared in real time.
  • the harmful program 1, variant 1-1, variant 1-2, and new species 1 differ in some degree from each other, but include all of the above policies. Therefore, they all match.
  • This behavior-based detection / matching technique can detect newly emerging malware with one policy because its behavior does not change well even if the simple pattern signature of malicious code changes or variants appear.
  • this policy is basically a concept of combination, so normal programs that don't match the combination are not detected. Therefore, the false positive rate can be reduced.
  • the analysis result of the virtual machine 160 of step (d) may be transmitted to the virtual machine controller 150 and then stored in the database 170 (step (e)).
  • Network-based malicious program detection method using the virtual machine 160 of the present invention is the pattern signature of the suspect file extracted from the virtual machine 160 after the step (e) of the filtering engine 120 and the virtual machine 160 And automatically updating the analyzer 162 (step (f)).
  • suspicious files analyzed as malicious programs automatically generate pattern signatures from the files, and signatures for traffic monitoring and dynamic heuristics for analyzers and signatures for detection through behavior combinations are automatically extracted and filtered. 120 and update the pattern of analyzer 162.
  • the pattern updated in the filtering engine 120 is a malicious code signature or a harmful traffic signature, and the signature of the malicious code itself is set so that the malicious code detection is completed immediately without having to check again in the analyzer 162. If a traffic pattern signature is detected, the file is not analyzed by analyzer 162 and detection is completed with traffic detection.
  • FIG. 6 is a flowchart illustrating an embodiment of a signature automatic update process of the virtual machine analyzer 162.
  • the file collection engine 140 may collect a file having a set format. After file collection is completed, the file collection engine 140 may analyze the virtual machine 160 to know whether the file is malicious.
  • the malicious file is operated in the virtual machine 160 to analyze the malicious behavior by comparing with the dynamic heuristic signature, and when it is determined to be a malicious file, the signature for the malicious file is automatically obtained and automatically registered in the database 170 next time. If detected, it is detected immediately, and the virtual machine clone is deleted and then restored.
  • the signature for the file is obtained. If the same signature exists in the database 170, the virtual machine 160 immediately detects the malicious program without detecting an action.
  • FIG. 7 is a flowchart illustrating an embodiment of adding, changing, and deleting signatures of the virtual machine analyzer 162.
  • the signature update of the analyzer 162 may be enabled only for the dynamic heuristic signature, except for the already verified signature value and the static heuristic signature attached to the analyzer engine.
  • a scenario that is a dynamic heuristic signature may be manually added, changed, or deleted according to a user's request.
  • a new scenario (dynamic heuristic signature) can be added if there is a misdetection of a suspected file, and a scenario can be changed or deleted if a misdetection occurs when detecting using an existing scenario.
  • the scenario is composed of various types of actions, and the action can be added with parameters to further refine the scenario.
  • FIG. 8 is a flowchart illustrating an embodiment of signature automatic update of the packet filtering engine 120.
  • the built-in signature of the packet filtering engine 120 is encrypted and stored as a file, and is used for real-time detection of malicious packets by parsing during initial operation. This signature can detect DDos and Exploit attacks.
  • the attack packet detected by the virtual machine 160 automatically updates the signature in the database 170 when the simulation attack succeeds, recovers the damage caused by the simulation attack to its original state, and waits for the simulation attack of another malicious packet.
  • attack packets such as signatures detected in the virtual machine 160
  • the malicious packet is reported to be detected immediately without rescanning in the virtual machine 160.
  • Network based malicious program detection method using the virtual machine 160 of the present invention to determine the location of the transmission and reception of harmful traffic by monitoring the traffic status in real time between the step (c) and (d) And / or periodically performing a Taint check to determine whether a system file is damaged, and if a damaged system file is found, recovering the system to a backup file using the system backup and recovery module 220. It is done.
  • Taint test keeps data such as checksum of OS modules and periodically checks whether the file of the system is damaged or inoperable.
  • system backup and recovery module 220 is used to backup the entire system to the original backup version. After recovery, reboot and return to normal.
  • the backup file backs up the current state when the system is running, always keeping the latest version.
  • the original backup file can be stored in a compressed format and can be configured to operate according to the backup cycle.
  • the present invention is characterized in that the administrator can check each step through the web manager (230).
  • Web manager 230 is a management tool that allows you to see the contents of the present invention from mirroring to file analysis and action results at a glance.
  • the web manager 230 provides network statistics for IP / PORT / PROTOCOL for the packets monitored by mirroring to distinguish each PC, and outputs real-time file collection details and analysis results on the screen.
  • the signature analysis and analysis added by the virtual machine 160 and harmful traffic detection history detected at the traffic level and the target information for transmitting and receiving the traffic is also provided.
  • the analyzed file is provided to the administrator through the web manager 230 for further analysis and action at national agencies and cyber control centers.
  • the report on the detailed data of the entire system from the past to the present can be output to a screen or a printer, or as a file. Provides the ability to save.
  • FIG. 9 is a flowchart showing the order in which file downloads are blocked when collecting malicious files using the present invention.
  • FIG. 9 shows a situation in which a PE header of executable files detected as a malicious file is stored for this purpose, and when a file matching the PE header is downloaded, a TCP RST signal is sent to the server to block the file transfer. .
  • the present invention relates to a system for detecting harmful programs on a network by simultaneously monitoring the entire network and individual user terminals 50, the mirroring module 100 for mirroring data on the network;
  • a filtering module for filtering out unnecessary packets from the packets passing through the mirroring module 100 by the filtering engine 120;
  • a data generation module 130 for forming statistical data for each IP in which packet transmission and reception occur in a network;
  • a file collection engine 140 for collecting data passing through the filtering engine 120; It controls the copying, destruction, and operation of the virtual machine 160, and transfers suspicious files among the collected files to the virtual machine 160, while transferring suspicious file analysis results of the virtual machine 160 to the database 170.
  • Virtual machine controller 150 A plurality of virtual machines 160 having an analyzer 162 therein that analyzes the suspicious file received from the virtual machine controller 150, and transmits the suspicious file analysis result to the virtual machine controller 150; And a database 170 storing statistical data for each IP, a file collected through the file collection engine 140, and a file analysis result of the virtual machine 160. It includes a network-based harmful program detection system using a virtual machine 160, characterized in that it comprises (see Figs. 1 and 10).
  • the filtering module extracts harmful traffic in comparison with the pattern signature of the traffic, and detects and blocks a module 180 which transmits a reject signal to a harmful file transmission / reception target and blocks transmission and reception; And a notification module 190 for notifying a user of blocking transmission and reception of harmful files.
  • the database 170 is characterized in that further stores the harmful traffic detection history.
  • the filtering module is a process blocking module 200 for instructing the blocking of the process of generating harmful traffic to the agent dedicated to blocking of harmful traffic generating PC; Can be installed by user's choice.
  • the present invention provides a check module 210 for checking whether a system file is damaged by Taint test; A backup and recovery module 220 for recovering a damaged system file using the backup file; And a web manager 230 that monitors all data and operations on the system in real time.
  • An update module for automatically updating the filtering engine 120 and the analyzer 162 of the virtual machine 160 with the pattern signature of the suspect file extracted from the virtual machine 160; It characterized in that it further comprises.
  • the web manager 230 performs a function of logging in and logging off a system, a function of viewing an on / off state or operating state of each module, and an entire system operation log, and storing and outputting data desired by an administrator.
  • Description of each module in the network-based malicious program detection system using the virtual machine 160 of the present invention includes the above-described information in each step of the network-based malicious program detection method using the virtual machine 160.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

The present invention relates to a method and system for detecting harmful programs on a network by simultaneously monitoring the network and individual user terminals as a whole, and the invention comprises a network-based harmful-program detection method using a virtual machine, the method comprising the steps of: (a) analysing all network data by using packet mirroring; (b) blocking unnecessary packets by filtering by means of a filtering engine; (c) generating statistical data specific to each IP whereby packets are sent and received; and (d) recording, on a database, files that have been collected through a filtering engine, then transmitting a suspect file to a virtual machine controller, and having the virtual machine controller transmit the transmitted suspect file to one of a plurality of virtual machines, that are on stand-by, for analysis in an analyser of the virtual machine, and the invention also comprises a system for the method.

Description

가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법 및 그 시스템Network based malicious program detection method and system using virtual machine
본 발명은 네트워크와 개별 사용자 단말 전체를 동시에 감시하여 네트워크상의 유해 프로그램을 검출하기 위한 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법 및 그 시스템에 대한 것이다.The present invention relates to a network-based malicious program detection method and system using a virtual machine for monitoring the network and the entire individual user terminal at the same time to detect malicious programs on the network.
종래 네트워크 보안장비는 악성코드 판별 주체가 주로 네트워크의 패킷이기 때문에, 네트워크 영역의 사건으로만 악성코드 여부를 판별하였다. 따라서 좀비 PC에 의한 과다 트래픽이나 DDos 공격, IP/MAC/ARP 변조 공격시, 망 내부에 존재하는 해당 PC나 악성코드를 직접 제어할 수 없다는 한계가 있다. In the conventional network security equipment, since the main subject of the malicious code is mainly a packet of the network, the network security equipment determines whether the malicious code is the only event in the network area. Therefore, in case of excessive traffic, DDos attack, IP / MAC / ARP tampering attack by zombie PC, there is a limit that you cannot directly control the PC or malicious code existing in the network.
그리고 과거에는 신종 또는 변종 악성 프로그램이 출현하여 확산 되기까지 일정 시간이 소요되었다. 그러나 요즈음은 제로 데이 공격 등 하루 이내에 신종 또는 변종 공격이 일어나고 있다.In the past, it took some time for new and variant malicious programs to emerge and spread. Nowadays, new or variant attacks are taking place within a day, including zero-day attacks.
또한, 최근의 공격은 그 기법들이 점차 지능화되어 감에 따라, 공격인지 알 수 없는 형태로 진행된다. 따라서 해당 악성코드를 직접 분석해 보지 않고는 네트워크 보안장비가 이를 분별할 수 없다는 문제점이 있다.In addition, the recent attacks proceed as a form of unknown as the techniques are increasingly intelligent. Therefore, there is a problem that the network security equipment can not discern this without directly analyzing the malicious code.
종래 시그니쳐 기반의 네트워크 보안장비에서는 악성코드를 수집한 후, 각 보안회사에서 이들 악성코드를 분석하여 개별 PC에 적용하는 방식으로 악성코드 분석이 진행되었다. In the conventional signature-based network security equipment, malicious codes were collected by collecting malicious codes and analyzing these malicious codes by applying them to individual PCs.
그러나, 악성코드의 수집에 오랜 시간이 소요되고, 수집된 악성코드를 분석하여 사용자 PC에 적용하는 데에도 시간이 소요되기 때문에, 이들 공격을 차단하는데 근본적이 해결책이 되지 못하고 있다. However, since it takes a long time to collect malicious code and time to analyze and apply the collected malicious code to the user's PC, it is not a fundamental solution to block these attacks.
아울러 기존의 보안장비들은 네트워크 망에 흐르는 정보를 단방향만 캡처하여 분석하였고, 동적 휴리스틱 기능은 없이 단순 패턴 비교 방식만을 통해서 수집된 파일을 분석하였으며, 트래픽 기반 분석 이외는 하지 못하였다.In addition, the existing security devices capture and analyze the information flowing through the network in one direction only, analyze the collected files through simple pattern comparison method without dynamic heuristic function, and do only the traffic based analysis.
한편, 종래 PC에서 작동하는 에이전트(agent) 기반의 보안 솔루션들은 개별 PC의 상태를 감시하여 프로세스 레벨에서 악성코드의 패턴 정보나 파일을 입수할 수 있으나, 네트워크 전체의 상태를 알기 어렵고 에이전트(agent)가 모두 설치되어야 한다는 단점이 있다.On the other hand, agent-based security solutions operating on conventional PCs can obtain the pattern information or files of malicious codes at the process level by monitoring the status of individual PCs, but it is difficult to know the status of the entire network and agents. The disadvantage is that all must be installed.
상기한 문제점을 해결하기 위하여 본 발명은 네트워크상의 트래픽이나 패킷 뿐 아니라, 클라이언트 내의 에이전트와 연동하여 클라이언트 내에서 동작하는 좀비와 네트워크에 영향을 주는 웜 등을 탐지 및 감시함으로써, 네트워크와 클라이언트 간에 유기적 보안 체계가 가능한 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법 및 그 시스템을 제공하고자 한다.In order to solve the above problems, the present invention detects and monitors not only traffic and packets on the network, but also zombies operating in the client and worms affecting the network, in conjunction with agents in the client, thereby ensuring organic security between the network and the client. The present invention aims to provide a network-based malicious program detection method using a virtual machine capable of system and a system thereof.
또한, 네트워크 망을 흐르는 패킷의 양방향 캡처가 가능하고, 수집된 자료의 분석시 오탐률을 줄일 수 있는 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법 및 그 시스템을 제공하고자 한다.In addition, the present invention provides a network-based malicious program detection method and system using a virtual machine capable of bidirectional capture of packets flowing through a network and reducing false positive rates when analyzing collected data.
아울러 본 발명은 네트워크 및 개별 PC의 각종 트래픽이나 파일을 실시간 모니터링 및 업데이트 함으로써, 좀비 PC 및 제로 데이 공격을 예방할 수 있는 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법 및 그 시스템을 제공하고자 한다.In addition, the present invention is to provide a network-based malicious program detection method and system using a virtual machine that can prevent the zombie PC and zero-day attack by real-time monitoring and updating the various traffic or files of the network and individual PC.
본 발명은 네트워크와 개별 사용자 단말 전체를 동시에 감시하여 네트워크상의 유해 프로그램을 검출하는 방법 및 시스템에 대한 것으로,The present invention relates to a method and system for detecting harmful programs on a network by simultaneously monitoring the entire network and individual user terminals.
가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법은 (a) 패킷 미러링 방식으로 네트워크의 모든 데이터를 분석하는 단계; (b) 불필요한 패킷을 필터링 엔진으로 필터링하여 차단하는 단계; (c) 패킷 송수신이 일어나는 각 IP별 통계 데이터를 생성하는 단계; 및 (d) 필터링 엔진을 통과하여 수집된 파일을 데이터베이스에 기록한 후 의심 파일을 가상 머신 컨트롤러로 전달하고, 상기 가상 머신 컨트롤러는 전달받은 의심 파일을 대기 중인 복수의 가상 머신 중 하나에 전달하여 가상 머신의 분석기에서 분석하게 하는 단계; 를 포함하여 구성되는 것을 특징으로 한다.A network-based malicious program detection method using a virtual machine includes: (a) analyzing all data of a network by packet mirroring; (b) filtering and blocking unnecessary packets by the filtering engine; (c) generating statistical data for each IP at which packet transmission and reception occurs; And (d) writes the collected files through a filtering engine to a database and transfers the suspect files to the virtual machine controller, and the virtual machine controller delivers the received suspicious files to one of a plurality of waiting virtual machines. Analyzing at the analyzer; Characterized in that comprises a.
아울러 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 시스템은 네트워크상의 데이터를 미러링하는 미러링 모듈; 상기 미러링 모듈을 통과한 패킷에서 불필요한 패킷을 필터링 엔진으로 필터링하여 차단하는 필터링 모듈; 네트워크상에서 패킷 송수신이 일어나는 각 IP별로 통계 데이터를 형성하는 데이터 생성 모듈; 상기 필터링 엔진을 통과한 데이터를 수집하는 파일 수집 엔진; 가상 머신의 복사, 파괴, 가동을 제어하고, 수집된 파일 중 의심 파일을 가상 머신에 전달하는 한편, 가상 머신의 의심 파일 분석 결과를 데이터베이스에 전달하는 가상 머신 컨트롤러; 가상 머신 컨트롤러부터 전달받은 의심 파일을 분석하는 분석기를 내부에 구비하되, 의심 파일 분석 결과를 가상 머신 컨트롤러에 전달하는 복수의 가상 머신; 및 IP별 통계 데이터, 파일 수집 엔진을 통하여 수집된 파일, 가상 머신의 파일 분석 결과를 저장하는 데이터베이스; 를 포함하는 것을 특징으로 한다.In addition, the network-based malicious program detection system using a virtual machine includes a mirroring module for mirroring data on the network; A filtering module for blocking unnecessary packets from the packets passing through the mirroring module by filtering the filtering engine; A data generation module for forming statistical data for each IP in which packet transmission and reception occur in a network; A file collection engine for collecting data passing through the filtering engine; A virtual machine controller controlling copying, destroying, and running of the virtual machine, transferring suspicious files among collected files to the virtual machine, and transferring suspicious file analysis results of the virtual machine to a database; A plurality of virtual machines having an analyzer configured to analyze a suspicious file received from the virtual machine controller, and transferring the suspicious file analysis result to the virtual machine controller; And a database storing statistical data for each IP, a file collected through a file collection engine, and a file analysis result of a virtual machine. Characterized in that it comprises a.
상기와 같은 본 발명에 따르면 네트워크상에서 의심 파일 및 악성코드로 전달되는 명령이 담긴 파일을 패킷 조합을 통하여 수집하여 이를 가상 머신에서 분석할 수 있다. 즉, 네트워크 장비는 전통적인 트래픽 기반 임무를 수행하고, 가상 머신은 해당 파일을 실행하고 조사하는 프로세스 중심의 PC기반 분석을 수행함으로써, 기존의 IPS나 IDS가 충분히 할 수 없었던 PC영역까지 보안성을 확보할 수 있다. 따라서 네트워크와 클라이언트 간에 유기적 보안 체계가 가능하다.According to the present invention as described above can collect a file containing a command delivered to the suspect file and malicious code on the network through a packet combination and analyze it in a virtual machine. In other words, network equipment performs traditional traffic-based tasks, and virtual machines perform process-based PC-based analysis of executing and inspecting the corresponding files, securing security to the PC area that IPS or IDS could not fully satisfy. can do. Thus, an organic security scheme is possible between the network and the client.
특히, 본 발명에서는 미러링시 양방향 캡처를 진행하여 네트워크 망을 흐르는 트래픽을 모두 감시할 수 있다. Particularly, in the present invention, all the traffic flowing through the network can be monitored by performing bidirectional capture during mirroring.
또한, 기존의 네트워크 보안장비와는 달리 동적 휴리스틱 엔진을 통하여, 악성코드의 행동패턴을 상세하게 반영할 수 있어 오탐률을 줄일 수 있다.In addition, unlike the existing network security equipment through the dynamic heuristic engine, it is possible to reflect the behavior patterns of the malicious code in detail to reduce the false positive rate.
아울러 본 발명에서는 네트워크와 개별 PC의 각종 트래픽이나 파일 분석, 이의 모니터링 및 결과에 따른 동적 휴리스틱 시그니쳐와 트래픽 패턴 시그니쳐가 자동으로 실시간 업데이트 된다. 따라서 유해 프로그램으로 검출된 파일 등이 네트워크상에서 이동할 때, 추가 분석 없이 이를 즉시 판별할 수 있다. 즉, 본 발명을 이용하는 DDos 공격에 이용되는 알려지지 않은 DDos 공격툴 및 악성코드를 탐지하여 그 행위 내역(C&C 서버 IP, 사용 PORT, 통신 타입 등)을 시그니쳐로 생성하고 기구축되어 있는 보안 제품에 적용함으로써, 대규모 DDos 공격 및 제로 데이 공격에 대한 통합적인 보안 체계가 가능하다.In addition, in the present invention, dynamic heuristic signatures and traffic pattern signatures are automatically updated in real time according to various traffic or file analysis of the network and individual PCs, monitoring and results thereof. Therefore, when a file detected as a harmful program moves on the network, it can be immediately determined without further analysis. That is, it detects unknown DDos attack tools and malicious codes used in DDos attacks using the present invention, generates the details of the actions (C & C server IP, use port, communication type, etc.) as signatures and applies them to the security products that are built. This enables an integrated security system against large-scale DDos attacks and zero-day attacks.
도 1 및 도 2는 본 발명의 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법의 순서도.1 and 2 are a flow chart of a network-based malicious program detection method using a virtual machine of the present invention.
도 3은 본 발명의 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 방법에서 필터링 엔진을 통과한 데이터에 대한 세부 순서도.Figure 3 is a detailed flowchart of the data passed through the filtering engine in the network-based malicious program detection method using a virtual machine of the present invention.
도 4는 동적 휴리스틱을 통한 감시 가능 행동 목록과 그 하부 데이터를 나타내는 표.4 is a table showing a list of monitorable behaviors and their underlying data through dynamic heuristics.
도 5는 동적 휴리스틱 엔진이 프로세스 행동을 기반으로 정책과 매칭하는 실시예를 보여주는 개념도.5 is a conceptual diagram illustrating an embodiment in which a dynamic heuristic engine matches a policy based on process behavior.
도 6은 가상 머신 분석기의 시그니쳐 자동 갱신 과정에 대한 실시예를 보여주는 순서도.6 is a flowchart illustrating an embodiment of a signature auto-update process of the virtual machine analyzer.
도 7은 가상 머신 분석기의 시그니쳐 추가, 변경, 삭제에 대한 실시예를 보여주는 순서도.7 is a flow chart illustrating an embodiment for adding, changing, and deleting signatures in a virtual machine analyzer.
도 8은 패킷 필터링 엔진의 시그니쳐 자동 갱신에 대한 실시예를 보여주는 순서도.8 is a flow diagram illustrating an embodiment for signature auto-update of a packet filtering engine.
도 9는 본 발명을 이용하여 악성파일 수집시 파일 다운로드가 차단되는 순서를 나타내는 순서도.9 is a flow chart showing the order in which file downloads are blocked when collecting malicious files using the present invention.
도 10은 본 발명의 가상 머신을 이용한 네트워크 기반 유해 프로그램 검출 시스템의 구성도.10 is a block diagram of a network-based harmful program detection system using a virtual machine of the present invention.
<부호의 설명><Description of the code>
10: 라우터 20: L4 스위치10: Router 20: L4 Switch
30: 방화벽 40: 탭30: Firewall 40: Tab
50: 사용자 단말 60: 관리 콘솔 프로그램50: user terminal 60: management console program
100: 미러링 모듈 120: 필터링 엔진100: mirroring module 120: filtering engine
130: 데이터 생성 모듈 140: 파일 수집 엔진130: data generation module 140: file collection engine
150: 가상 머신 컨트롤러 160: 가상 머신150: virtual machine controller 160: virtual machine
162: 분석기 170: 데이터베이스162: Analyzer 170: Database
180: 검출 및 차단 모듈 190: 알림 모듈180: detection and blocking module 190: notification module
200: 프로세스 차단 모듈 210: 검사 모듈200: process blocking module 210: inspection module
220: 백업 및 복구 모듈 230: 웹 매니저220: backup and recovery module 230: web manager
이하, 첨부한 도면 및 바람직한 실시예에 따라 본 발명을 상세히 설명한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings and preferred embodiments.
도 1 및 도 2는 본 발명의 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법의 순서도이다.1 and 2 are flowcharts of a network-based malicious program detection method using the virtual machine 160 of the present invention.
본 발명은 네트워크와 개별 사용자 단말(50) 전체를 동시에 감시하여 네트워크상의 유해 프로그램을 검출하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법에 대한 것으로, (a) 패킷 미러링 방식으로 네트워크의 모든 데이터를 분석하는 단계; (b) 불필요한 패킷을 필터링 엔진(120)으로 필터링하여 차단하는 단계; (c) 패킷 송수신이 일어나는 각 IP별 통계 데이터를 생성하는 단계; 및 (d) 필터링 엔진(120)을 통과하여 수집된 파일을 데이터베이스(170)에 기록한 후 의심 파일을 가상 머신 컨트롤러(150)로 전달하고, 상기 가상 머신 컨트롤러(150)는 전달받은 의심 파일을 대기 중인 복수의 가상 머신(160) 중 하나에 전달하여 가상 머신(160)의 분석기(162)에서 분석하게 하는 단계; 를 포함하여 구성되는 것을 특징으로 한다.The present invention relates to a network-based malicious program detection method using a virtual machine 160 to monitor the network and the entire individual user terminal 50 at the same time to detect malicious programs on the network. Analyzing the data; (b) filtering and blocking unnecessary packets by the filtering engine 120; (c) generating statistical data for each IP at which packet transmission and reception occurs; And (d) records the collected file through the filtering engine 120 in the database 170 and then transfers the suspicious file to the virtual machine controller 150, and the virtual machine controller 150 waits for the received suspicious file. Passing the data to one of the plurality of virtual machines 160 being analyzed so that the analyzer 162 of the virtual machine 160 analyzes the virtual machine 160; Characterized in that comprises a.
본 발명은 패킷 미러링 방식으로 네트워크의 모든 데이터를 분석하는 단계로 시작된다((a) 단계).The present invention begins with analyzing all data of the network in a packet mirroring manner (step (a)).
본 발명은 인라인(INLINE) 모드가 아니라, 네트워크 상단에 탭(40) 장비를 설치하여 네트워크에 흐르는 모든 데이터를 실시간 캡처하여 분석용으로 사용하는 미러링 개념을 사용한다. 따라서 네트워크 망에 부하를 주지 않고 작동하며, 장애가 발생해도 네트워크 망에 전혀 문제를 주지 않는다.The present invention uses a mirroring concept in which the tap 40 equipment is installed on the top of the network instead of the inline mode to capture all data flowing through the network in real time and use it for analysis. Therefore, it operates without overloading the network and does not cause any problem to the network even if a failure occurs.
본 발명에서는 네트워크 디바이스 드라이버를 수정하여 드라이버와 어플리케이션 사이에 통신을 수행하여 최고 속도를 낼 수 있는 기법을 사용함으로써, 미러링이 충분한 캡처 성능을 낼 수 있도록 할 수 있다. 또한, 양방향 캡처를 동시에 진행할 수 있어 양방향의 트래픽을 모두 감시할 수 있다.In the present invention, by modifying the network device driver by using a technique capable of performing the communication between the driver and the application to achieve the highest speed, it is possible to allow the mirroring to achieve a sufficient capture performance. In addition, bidirectional capture can occur simultaneously, allowing both traffic to be monitored.
상기 미러링 단계가 완료된 다음에는 불필요한 패킷을 필터링 엔진(120)으로 필터링하여 차단하는 단계가 실시된다((b) 단계).After the mirroring step is completed, an unnecessary packet is filtered and blocked by the filtering engine 120 (step (b)).
상기 필터링 엔진(120)은 불필요한 감시대상과 감시영역 이외의 데이터는 모두 스킵하며, 감시 IP/PORT와 비감시 IP/PORT 대상 정보를 갖는다.The filtering engine 120 skips all unnecessary surveillance targets and data other than the surveillance region, and has surveillance IP / PORT and unmonitored IP / PORT target information.
필터링 엔진(120)은 시그니쳐에 의한 패턴 분석을 진행하여 침입 시도를 하는 악성패킷을 밝혀낸다. 해당 패킷의 주소 정보와 매칭 시그니쳐 정보는 데이터베이스(170) 로그에 기록된다.The filtering engine 120 proceeds with pattern analysis by signatures to discover malicious packets that attempt to invade. The address information and matching signature information of the packet are recorded in the database 170 log.
도 3의 순서도에 도시된 바와 같이, 상기 (b) 단계에서는 화이트 리스트(white list)를 이용하여 상기 리스트에 있는 불필요한 검사대상은 검사에서 제외하는 단계가 개시된다.As shown in the flowchart of FIG. 3, in step (b), an unnecessary inspection object in the list is excluded from the inspection by using a white list.
그리고 처리하며 가지고 있는 트래픽의 패턴 시그니쳐와 비교하여 이미 알려진 유해 트래픽을 검출하고, 유해 파일 송수신이 발생되고 있는 것을 검출시, 유해 파일 송수신 대상에게 거부신호를 전달하여 송수신의 차단을 유발한다. 이때 유해 트래픽 검출 내역은 데이터베이스(170)에 별도로 저장 가능하다.In addition, it detects known harmful traffic in comparison with the pattern signature of the traffic, and detects that harmful file transmission and reception occurs, and transmits a rejection signal to the harmful file transmission / reception target to cause transmission and reception blocking. At this time, the harmful traffic detection history can be stored separately in the database (170).
다음으로, 유해 파일 송수신 차단 여부를 사용자에게 경고 웹페이지 등으로 전달하여 알리는데, 이 단계 이전에는 유해 트래픽 발생 PC의 차단 전용 에이전트에게 상기 유해 트래픽을 발생시키는 프로세스의 차단을 명령하여 프로세스를 차단시키는 단계를 사용자에 의하여 선택적으로 실시할 수 있다. 에이전트는 차단을 수행하기 위한 최소 모듈이며 선택적으로 설치될 수 있다.Next, the user is notified of whether harmful file transmission or reception is blocked by a warning web page, and the like. Before this step, the blocking dedicated process of the harmful traffic generating PC is instructed to block the process generating the harmful traffic. Steps may be selectively performed by the user. Agents are the minimum modules for performing blocking and can optionally be installed.
다음으로, 패킷 송수신이 일어나는 각 IP별 통계 데이터를 생성한다((c) 단계).Next, statistical data for each IP where packet transmission and reception occur is generated (step (c)).
상기 (c) 단계에서는 패킷 송수신이 일어나는 모든 IP, PORT, PROTOCOL 정보를 실시간 분석하여 통계 정보를 생성한다. In the step (c), statistical information is generated by analyzing all IP, PORT, and PROTOCOL information in which packet transmission and reception occur.
이러한 통계 데이터는 데이터베이스(170)에 별도로 저장 가능하며, 데이터베이스(170)에 기록된 데이터는 웹 매니저(230)로 실시간 트래픽 현황을 볼 수 있다. 상기 패킷 송수신 내용을 보고 트래픽을 증가시키는 특정 PC를 구분할 수 있으며, 유해 트래픽이나 의심 파일의 전송 경로를 파악할 수 있다.Such statistical data may be stored separately in the database 170, and the data recorded in the database 170 may view the real-time traffic status by the web manager 230. By viewing the packet transmission and reception contents, it is possible to identify specific PCs that increase traffic, and identify transmission paths of harmful traffic or suspicious files.
따라서 원하는 하부 IP나 그룹을 집중 모니터링할 수 있는 정보가 생성된다.Therefore, information can be generated to centrally monitor the desired sub IP or group.
상기 (c) 단계 이후에는 (d) 필터링 엔진(120)을 통과하여 수집된 파일을 데이터베이스(170)에 기록한 후 의심 파일을 가상 머신 컨트롤러(150)로 전달하고, 상기 가상 머신 컨트롤러(150)는 전달받은 의심 파일을 대기 중인 복수의 가상 머신(160) 중 하나에 전달하여 가상 머신(160)의 분석기(162)에서 분석한다.After the step (c), after (d) the file collected through the filtering engine 120 is recorded in the database 170, the suspect file is transferred to the virtual machine controller 150, and the virtual machine controller 150 The received suspicious file is delivered to one of the plurality of waiting virtual machines 160 and analyzed by the analyzer 162 of the virtual machine 160.
상기 (d) 단계에서는 필터링 엔진(120)을 통과한 파일 중, 실행파일이나 원하는 포맷의 파일들은 파일 수집 엔진(140)으로 수집된다. 이때, 패턴 시그니쳐 같은 것을 비교하여 악성코드 파일을 추출할 수 있다.In the step (d), among the files passing through the filtering engine 120, executable files or files of a desired format are collected by the file collection engine 140. At this time, the malware signature file can be extracted by comparing the pattern signature.
즉, 필터링 엔진(120)을 통과한 패킷 정보에서 파일을 수집하며, 수집된 파일의 이름과 상세 정보는 로그로 계속하여 데이터베이스(170)에 기록된다.That is, a file is collected from the packet information passing through the filtering engine 120, and the name and detailed information of the collected file are continuously recorded in the database 170 as a log.
이중 수집된 의심 파일은 가상 머신 컨트롤러(150)로 전달되며, 가상 머신 컨트롤러(150)는 가상 머신(160)에 의심 파일을 전달한다. The collected suspicious file is transferred to the virtual machine controller 150, and the virtual machine controller 150 delivers the suspicious file to the virtual machine 160.
그리고 의심 파일은 가상 머신 컨트롤러(150)에 의하여 의심 파일이 악성코드인지 여부를 분석하는 프로그램인 분석기(162)에 전달되어 분석되며, 분석이 완료되면 분석 결과는 가상 머신 컨트롤러(150)에 수신되어 다시 데이터베이스(170)에 전달 및 저장된다.The suspicious file is transmitted to the analyzer 162 which is a program for analyzing whether the suspicious file is malicious code by the virtual machine controller 150 and analyzed. When the analysis is completed, the analysis result is received by the virtual machine controller 150. It is delivered and stored in the database 170 again.
이때, 네트워크 망에서 수집되는 파일은 동일한 파일일 수 있다. 이 경우 한번 분석한 파일은 고유 정보를 추출하여, 동일한 파일은 더 이상 분석하지 않고 스킵하여 불필요한 성능을 감소시킬 수 있다. In this case, the files collected from the network may be the same file. In this case, the file analyzed once can extract unique information, and the same file can be skipped without further analysis, thereby reducing unnecessary performance.
여기에서 데이터베이스(170)는 파일 기반 데이터베이스(170)로서 일반적인 데이터베이스(170)보다 고속으로 작동 가능하며, 각종 데이터를 보관 및 검색하는 기능을 제공한다. 본 발명에서 데이터베이스(170)에는 파일 수집 내역 뿐만 아니라, 유해 트래픽 검출 내역, IP별 통계 데이터 내역, 악성프로그램 분석 내역 등이 저장되며, 이는 웹 매니저(230)를 통하여 볼 수 있다.Here, the database 170 is a file-based database 170 that can operate at a higher speed than the general database 170, and provides a function of storing and retrieving various data. In the present invention, the database 170 stores not only file collection details, but also harmful traffic detection details, statistical data details by IP, and malware analysis details, which can be viewed through the web manager 230.
한편, 본 발명에서 가상 머신 컨트롤러(150)는 수집된 의심 파일을 가상 머신에서 검사할 수 있도록 가상 머신(160)을 복제, 파괴 및 가동시키는 역할을 한다.Meanwhile, in the present invention, the virtual machine controller 150 copies, destroys, and operates the virtual machine 160 so that the collected suspect files can be inspected in the virtual machine.
본 발명에서는 의심 파일을 분석하여 가상 머신 컨트롤러(150)에 분석 결과를 전달한 가상 머신(160)은 파괴되는 것을 특징으로 한다. In the present invention, the virtual machine 160 which analyzes the suspicious file and delivers the analysis result to the virtual machine controller 150 is destroyed.
이때, 가상 머신 컨트롤러(150)는 파괴된 가상 머신(160)의 수만큼 가상 머신(160)을 새로 복제하여 가상 머신(160)의 수가 동일하게 유지되도록 한다.At this time, the virtual machine controller 150 duplicates the virtual machine 160 as many times as the number of the destroyed virtual machine 160 so that the number of the virtual machine 160 remains the same.
대기하고 있는 가상 머신(160)은 n개가 되도록 유지되며, 수집 파일을 대기 큐에 추가하여 분석 가능한 가상 머신(160)이 생기면 여러 개의 의심 파일을 전달하여 동시에 n개까지 분석할 수 있다. The number of virtual machines 160 waiting is maintained to n, and when a collection file is added to a waiting queue to generate a virtual machine 160 that can be analyzed, several suspicious files may be delivered and analyzed up to n at the same time.
가상 머신(160)은 설정된 개수만큼 가동되는데, 가상 머신(160) 손상시에는 자동으로 원본 클론을 생성하여 가상 머신(160)이 추가 가동되도록 유지된다. 그리고 분석기(162)가 테스트를 완료한 후 자동으로 가상 머신(160)을 리셋하고, 클론을 재생성하여 의심 파일을 검사할 수 있도록 항상 대기한다.The virtual machine 160 is operated by a set number. When the virtual machine 160 is damaged, the virtual machine 160 is automatically generated and the virtual machine 160 is further operated. The analyzer 162 automatically resets the virtual machine 160 after completing the test, and always waits to recreate the clone to check the suspicious file.
한편, 가상 머신(160) 내부에 존재하는 분석기(162)는 전달된 의심 파일이 악성코드인지 분석하기 위한 에이전트 프로그램으로, 가상 머신(160) 실행시 자동으로 가동된다.On the other hand, the analyzer 162 existing in the virtual machine 160 is an agent program for analyzing whether the transferred suspicious file is malicious code, and is automatically operated when the virtual machine 160 is executed.
상기 분석기(162)는 의심 파일을 실행 및 분석한 후, 의심 파일의 유해 여부와 상세 정보를 가상 머신 컨트롤러(150)로 전달한다.The analyzer 162 executes and analyzes the suspicious file and transmits the suspect file to the virtual machine controller 150.
분석기(162)에는 행동기반에 의한 OS의 네이티브 함수 사용을 감시 및 동적 휴리스틱(heuristic) 기법에 의한 유해 프로그램을 분석하는 엔진이 있다.The analyzer 162 includes an engine that monitors the use of native functions of the OS based on behavior and analyzes harmful programs by dynamic heuristic techniques.
따라서 동적 휴리스틱 판단 정책에 의하여 일치되는 의심 파일은 분석을 종료하며, 의심 파일을 검출한 정책 내용과 의심 파일 정보를 가상 머신 컨트롤러(150)로 전달한다. Therefore, the suspicious file matched by the dynamic heuristic decision policy terminates the analysis, and transmits the policy content and suspicious file information that detects the suspicious file to the virtual machine controller 150.
반면, 정책으로 검출되지 않는 의심 파일은 행동기반 네이티브 함수 사용 감시에 의한 세부 행동 내역과 프로세스 정보를 가상 머신 컨트롤러(150)로 전송하고 분석을 마친다.On the other hand, the suspicious file which is not detected by the policy transmits the detailed behavior history and process information by the behavior-based native function usage monitoring to the virtual machine controller 150 and finishes the analysis.
가상 머신 컨트롤러(150)와 가상 머신 분석기(162)와의 통신은 기존의 악성코드가 활동하는 방식의 통로가 아닌 OS와 직접 연결되는 통로로서, 이 통로로는 악성코드가 움직일 수 없다. 따라서 가상 머신(160) 외부로 바이러스가 전파될 수 없어 안전하다.The communication between the virtual machine controller 150 and the virtual machine analyzer 162 is a path directly connected to the OS, not a path of the existing malicious code, and the malware cannot move through this path. Therefore, the virus cannot be spread to the outside of the virtual machine 160, so it is safe.
본 발명은 PC환경과 같은 가상 머신(160)에서 악성코드가 실행되기 때문에 실행시의 악성코드의 행동과 특성을 분석해 낼 수 있다.In the present invention, since the malicious code is executed in the virtual machine 160 such as a PC environment, the behavior and characteristics of the malicious code at the time of execution can be analyzed.
도 4는 동적 휴리스틱을 통한 감시 가능 행동 목록과 그 하부 데이터를 나타내는 표이다. 4 is a table showing a list of monitorable behaviors and their underlying data through dynamic heuristics.
동적 휴리스틱 엔진은 도 4에 나타난 일련의 행위를 감시하며, 이러한 행위의 조합으로 정책이 생성된다. 이러한 행위의 일련의 조합을 수행하는 프로세스가 검출시 정책에 매칭되는데, 단일 행위뿐만 아니라 행동이 조합되는 시나리오의 성격으로 매칭을 수행한다.The dynamic heuristic engine monitors the series of actions shown in FIG. 4, and a combination of these actions creates a policy. The process of performing a combination of these actions is matched to the policy upon detection, matching not only a single action but also the nature of the scenario in which the actions are combined.
행동을 조합하여 정책을 만들 경우에는 단일 행동을 검출하는 것에 비해서 정상 프로세스가 탐지되는 오탐을 줄일 수 있고, 악성코드가 행하는 행동 패턴을 상세하게 반영할 수 있다.In combination with actions, policies can be used to reduce false positives that are detected by normal processes as compared to detecting single actions, and to reflect in detail the behavior patterns of malware.
행동 감시 정책 작동시 설정된 동적 휴리스틱 정책과 매칭되는 프로세스를 검출하는데, 이때 각 행위별 추가 정보인 경로 등을 획득하여 악성코드의 상세분석 자료로 사용한다. Detects processes matching with the dynamic heuristic policy set when the behavior monitoring policy is operated. At this time, the path, which is additional information for each behavior, is acquired and used as detailed analysis data of malicious code.
도 5는 동적 휴리스틱 엔진이 프로세스 행동을 기반으로 정책과 매칭하는 개념도이다.5 is a conceptual diagram of a dynamic heuristic engine matching a policy based on process behavior.
우선 [행동 A, 행동 B, 행동 C]는 동적 휴리스틱 엔진에 설정된 정책이다. 수집된 파일이 가상 머신(160)의 분석기(162)에 도착하면 해당 파일이 실행되고, 이때부터 해당 프로세스의 행동을 실시간 비교하여 매칭한다.First, [action A, action B, action C] is the policy set in the dynamic heuristic engine. When the collected file arrives at the analyzer 162 of the virtual machine 160, the file is executed, from which the behavior of the process is compared in real time.
도 5에서 유해 프로그램 1, 변종 1-1, 변종 1-2, 신종 1은 서로 어느 정도 행동이 다르지만 위 정책의 행동을 모두 포함하고 있다. 따라서 모두 매칭에 성공한다.In FIG. 5, the harmful program 1, variant 1-1, variant 1-2, and new species 1 differ in some degree from each other, but include all of the above policies. Therefore, they all match.
이러한 행동기반 탐지/매칭 기법은 악성코드의 단순 패턴 시그니쳐가 바뀌거나 변종이 등장하더라도 그 행동은 잘 변하지 않기 때문에, 한가지 정책으로 새로 등장하는 악성코드를 탐지할 수 있다.This behavior-based detection / matching technique can detect newly emerging malware with one policy because its behavior does not change well even if the simple pattern signature of malicious code changes or variants appear.
앞서 설명한 바와 같이, 이러한 정책은 기본적으로 조합의 개념이므로, 그 조합에 맞지 않는 정상 프로그램들은 탐지하지 않는다. 따라서 오탐률을 줄일 수 있다.As mentioned earlier, this policy is basically a concept of combination, so normal programs that don't match the combination are not detected. Therefore, the false positive rate can be reduced.
이어서 상기 (d) 단계의 가상 머신(160)에서의 분석 결과는 상기 가상 머신 컨트롤러(150)에 전달된 다음, 데이터베이스(170)에 저장 가능하다((e) 단계).Subsequently, the analysis result of the virtual machine 160 of step (d) may be transmitted to the virtual machine controller 150 and then stored in the database 170 (step (e)).
본 발명의 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법은 상기 (e) 단계 후에 상기 가상 머신(160)에서 추출된 의심 파일의 패턴 시그니쳐로 필터링 엔진(120)과 가상 머신(160)의 분석기(162)를 자동으로 업데이트 하는 단계가 수행되는 것을 특징으로 한다((f) 단계).Network-based malicious program detection method using the virtual machine 160 of the present invention is the pattern signature of the suspect file extracted from the virtual machine 160 after the step (e) of the filtering engine 120 and the virtual machine 160 And automatically updating the analyzer 162 (step (f)).
즉, 유해 프로그램으로 분석된 의심 파일은 파일에서 패턴 시그니쳐를 자동으로 생성하며, 트래픽 검출용 시그니쳐와 분석기용 동적 휴리스틱 기법에 의한 행동 감시 및 행동조합을 통한 탐지용 시그니쳐가 자동으로 추출되어 필터링 엔진(120)과 분석기(162)의 패턴으로 업데이트 한다.In other words, suspicious files analyzed as malicious programs automatically generate pattern signatures from the files, and signatures for traffic monitoring and dynamic heuristics for analyzers and signatures for detection through behavior combinations are automatically extracted and filtered. 120 and update the pattern of analyzer 162.
여기에서 필터링 엔진(120)에 업데이트 되는 패턴은 악성코드 시그니쳐나 유해 트래픽 시그니쳐이며, 악성코드 자체의 시그니쳐의 경우 분석기(162)에서 다시 검사할 필요 없이 즉시 악성코드 탐지가 완료되도록 설정된다. 트래픽 패턴 시그니쳐가 검출되면 그 파일은 분석기(162)에 의하여 분석되지 않고 트래픽 검출로 탐지가 완결된다.Here, the pattern updated in the filtering engine 120 is a malicious code signature or a harmful traffic signature, and the signature of the malicious code itself is set so that the malicious code detection is completed immediately without having to check again in the analyzer 162. If a traffic pattern signature is detected, the file is not analyzed by analyzer 162 and detection is completed with traffic detection.
한편, 도 6은 가상 머신 분석기(162)의 시그니쳐 자동 갱신 과정에 대한 실시예를 보여주는 순서도이다.6 is a flowchart illustrating an embodiment of a signature automatic update process of the virtual machine analyzer 162.
여기에서 파일 수집 엔진(140)은 설정된 포맷 형식의 파일을 수집할 수 있으며, 파일 수집이 완료된 후 가상 머신(160)에서 분석해야 악성 유무를 알 수 있다.Here, the file collection engine 140 may collect a file having a set format. After file collection is completed, the file collection engine 140 may analyze the virtual machine 160 to know whether the file is malicious.
즉, 악성파일을 가상 머신(160)에서 가동시켜 동적 휴리스틱 시그니쳐와 비교하여 악성 행위를 분석하고, 악성파일로 판정될 경우 악성파일에 대한 시그니쳐를 구하여 데이터베이스(170)에 자동으로 등록하여 다음번에 다시 검출될 경우 즉시 탐지되도록 하며, 가상 머신 클론을 삭제한 다음 다시 복구한다.That is, the malicious file is operated in the virtual machine 160 to analyze the malicious behavior by comparing with the dynamic heuristic signature, and when it is determined to be a malicious file, the signature for the malicious file is automatically obtained and automatically registered in the database 170 next time. If detected, it is detected immediately, and the virtual machine clone is deleted and then restored.
만일 동일한 악성파일이 수집되면 그 파일에 대한 시그니쳐를 구한 다음, 데이터베이스(170)에서 같은 시그니쳐가 존재하면 가상 머신(160)에서 행위 검출 없이 바로 악성 프로그램으로 검출을 완료한다. If the same malicious file is collected, the signature for the file is obtained. If the same signature exists in the database 170, the virtual machine 160 immediately detects the malicious program without detecting an action.
도 7은 가상 머신 분석기(162)의 시그니쳐 추가, 변경, 삭제에 대한 실시예를 보여주는 순서도이다.7 is a flowchart illustrating an embodiment of adding, changing, and deleting signatures of the virtual machine analyzer 162.
본 발명에서 분석기(162)의 시그니쳐 갱신은 동적 휴리스틱 시그니쳐에 대해서만 가능하게 할 수 있으며, 분석기 엔진에 장착한 이미 검증된 시그니쳐 값 및 정적 휴리스틱 시그니쳐는 예외로 할 수 있다.In the present invention, the signature update of the analyzer 162 may be enabled only for the dynamic heuristic signature, except for the already verified signature value and the static heuristic signature attached to the analyzer engine.
이때, 사용자의 요구에 따라 동적 휴리스틱 시그니쳐인 시나리오를 수동으로 추가, 변경, 삭제할 수 있다.At this time, a scenario that is a dynamic heuristic signature may be manually added, changed, or deleted according to a user's request.
즉, 의심되는 파일에 대하여 미탐이 발생하는 경우에는 새로운 시나리오(동적 휴리스틱 시그니쳐)를 추가할 수 있고, 이미 존재하는 시나리오를 이용하여 검출을 진행할 때 오탐이 발생하는 경우에는 시나리오를 변경 또는 삭제할 수 있다.That is, a new scenario (dynamic heuristic signature) can be added if there is a misdetection of a suspected file, and a scenario can be changed or deleted if a misdetection occurs when detecting using an existing scenario. .
여기에서 시나리오는 여러 형태의 액션으로 구성되며, 액션에는 파라미터를 추가할 수 있어 시나리오의 상세화가 가능하다.Here, the scenario is composed of various types of actions, and the action can be added with parameters to further refine the scenario.
도 8은 패킷 필터링 엔진(120)의 시그니쳐 자동 갱신에 대한 실시예를 보여주는 순서도이다.8 is a flowchart illustrating an embodiment of signature automatic update of the packet filtering engine 120.
패킷 필터링 엔진(120)의 내장 시그니쳐는 파일로 암호화되어 보관되며, 초기 작동시 파싱(parsing)하여 악성패킷의 실시간 검출에 이용된다. 이 시그니쳐는 DDos, Exploit 공격을 탐지할 수 있다.The built-in signature of the packet filtering engine 120 is encrypted and stored as a file, and is used for real-time detection of malicious packets by parsing during initial operation. This signature can detect DDos and Exploit attacks.
가상 머신(160)에서 검출된 공격 패킷은 모의 공격에 성공하면 데이터베이스(170)에 시그니쳐를 자동 갱신하고, 모의 공격으로 인한 피해를 원래 상태로 복구한 다음, 다른 악성패킷의 모의 공격을 대기한다.The attack packet detected by the virtual machine 160 automatically updates the signature in the database 170 when the simulation attack succeeds, recovers the damage caused by the simulation attack to its original state, and waits for the simulation attack of another malicious packet.
가상 머신(160)에서 검출된 시그니쳐와 같은 공격 패킷이 수집되는 경우에는 가상 머신(160)에서 재검사를 하지 않고 바로 악성패킷이 검출된 것으로 보고된다.When attack packets such as signatures detected in the virtual machine 160 are collected, the malicious packet is reported to be detected immediately without rescanning in the virtual machine 160.
본 발명의 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법은 (c) 단계와 (d) 단계 사이에 웹 매니저(230)로 트래픽 현황을 실시간으로 감시하여 유해 트래픽의 송수신 위치를 파악하는 단계 및/또는 Taint 검사를 주기적으로 수행하여 시스템 파일의 손상 여부를 확인하고, 손상된 시스템 파일이 발견될 경우 시스템 백업 및 복구 모듈(220)을 이용하여 백업 파일로 시스템을 복구하는 단계가 수행되는 것을 특징으로 한다.Network based malicious program detection method using the virtual machine 160 of the present invention to determine the location of the transmission and reception of harmful traffic by monitoring the traffic status in real time between the step (c) and (d) And / or periodically performing a Taint check to determine whether a system file is damaged, and if a damaged system file is found, recovering the system to a backup file using the system backup and recovery module 220. It is done.
Taint 검사에서는 운영체제 모듈들의 체크섬(checksum)과 같은 데이터를 보관하고 주기적으로 본 시스템의 파일이 손상되거나 작동할 수 없는 상태에 이르렀는지 검사를 수행하여 확인한다. Taint test keeps data such as checksum of OS modules and periodically checks whether the file of the system is damaged or inoperable.
Taint 검사를 통하여 파일이 깨지거나 변경되는 등 손상된 시스템 파일이 발견 되면, 시스템 전체의 작동에 문제가 생긴 경우에 해당하므로, 시스템 백업 및 복구 모듈(220)을 이용하여 원본의 백업 버전으로 전체 시스템을 복구한 후 재부팅 하여 정상으로 환원한다.If a damaged system file such as a file is broken or changed through a Taint scan is found, it is a case of a problem with the operation of the entire system. Therefore, the system backup and recovery module 220 is used to backup the entire system to the original backup version. After recovery, reboot and return to normal.
이를 위하여 최초 가동시에 시스템 전체의 정보를 백업해 놓은 후 주기적으로 확인하며, 주요 모듈 파일들이 손상되거나 작동불능 상태가 되었는지 여부를 점검한다.To do this, back up system-wide information at initial startup and periodically check it to see if major module files are corrupted or inoperable.
백업 파일은 시스템 가동시 현재의 상태를 백업하여, 최신 버전을 항상 유지한다. 그리고 백업 파일 원본은 압축 형식으로 보관 가능하며, 백업 주기에 따라서 작동하도록 설정 가능하다.The backup file backs up the current state when the system is running, always keeping the latest version. The original backup file can be stored in a compressed format and can be configured to operate according to the backup cycle.
본 발명은 상기 각 단계를 관리자가 웹 매니저(230)를 통해 확인할 수 있는 것을 특징으로 한다.The present invention is characterized in that the administrator can check each step through the web manager (230).
웹 매니저(230)는 미러링에서 파일 분석 및 조치 결과까지 본 발명의 내용을 한눈에 볼 수 있도록 해주는 관리툴이다. Web manager 230 is a management tool that allows you to see the contents of the present invention from mirroring to file analysis and action results at a glance.
웹 매니저(230)는 미러링으로 감시하고 있는 패킷에 대한 IP/PORT/PROTOCOL 별로 네트워크 통계현황을 제공하여 각 PC를 분별할 수 있도록 하며, 실시간 파일 수집 내역과 분석 결과를 화면에 출력한다.The web manager 230 provides network statistics for IP / PORT / PROTOCOL for the packets monitored by mirroring to distinguish each PC, and outputs real-time file collection details and analysis results on the screen.
또한, 가상 머신(160)에서 분석되어 추가된 시그니쳐 내역 및 트래픽 레벨에서 감지한 유해 트래픽 검출 내역과 해당 트래픽을 송수신한 대상정보도 같이 제공한다.In addition, the signature analysis and analysis added by the virtual machine 160 and harmful traffic detection history detected at the traffic level and the target information for transmitting and receiving the traffic is also provided.
분석된 파일은 국가기관 및 사이버 관제센터에서 추가분석 및 조치를 위하여 웹 매니저(230)를 통하여 관리자에게 제공되며, 과거부터 현재까지 전체 시스템의 상세 데이터에 대한 리포트를 화면이나 프린터로 출력하거나 파일로 저장하는 기능을 제공한다.The analyzed file is provided to the administrator through the web manager 230 for further analysis and action at national agencies and cyber control centers. The report on the detailed data of the entire system from the past to the present can be output to a screen or a printer, or as a file. Provides the ability to save.
도 9는 본 발명을 이용하여 악성파일 수집시 파일 다운로드가 차단되는 순서를 나타내는 순서도이다.9 is a flowchart showing the order in which file downloads are blocked when collecting malicious files using the present invention.
본 발명에서는 악성파일로 검출된 파일들을 다시 다운로드하는 것을 차단하여 악성파일이 전파되는 것을 막는다.In the present invention, by downloading again the files detected as malicious files to prevent the spread of malicious files.
도 9에서는 이를 위하여 악성파일로 검출된 실행파일들의 PE 헤더(header)를 보관하였다가 이 PE 헤더와 일치하는 파일들이 다운로드 되는 경우, 서버 측에 TCP RST 신호를 보내어 파일 전송을 차단하는 상황을 나타낸다.FIG. 9 shows a situation in which a PE header of executable files detected as a malicious file is stored for this purpose, and when a file matching the PE header is downloaded, a TCP RST signal is sent to the server to block the file transfer. .
다음으로, 본 발명은 네트워크와 개별 사용자 단말(50) 전체를 동시에 감시하여 네트워크상의 유해 프로그램을 검출하는 시스템에 대한 것으로, 네트워크상의 데이터를 미러링하는 미러링 모듈(100); 상기 미러링 모듈(100)을 통과한 패킷에서 불필요한 패킷을 필터링 엔진(120)으로 필터링하여 차단하는 필터링 모듈; 네트워크상에서 패킷 송수신이 일어나는 각 IP별로 통계 데이터를 형성하는 데이터 생성 모듈(130); 상기 필터링 엔진(120)을 통과한 데이터를 수집하는 파일 수집 엔진(140); 가상 머신(160)의 복사, 파괴, 가동을 제어하고, 수집된 파일 중 의심 파일을 가상 머신(160)에 전달하는 한편, 가상 머신(160)의 의심 파일 분석 결과를 데이터베이스(170)에 전달하는 가상 머신 컨트롤러(150); 가상 머신 컨트롤러(150)부터 전달받은 의심 파일을 분석하는 분석기(162)를 내부에 구비하되, 의심 파일 분석 결과를 가상 머신 컨트롤러(150)에 전달하는 복수의 가상 머신(160); 및 IP별 통계 데이터, 파일 수집 엔진(140)을 통하여 수집된 파일, 가상 머신(160)의 파일 분석 결과를 저장하는 데이터베이스(170); 를 포함하는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 시스템을 포함한다(도 1 및 도 10 참조).Next, the present invention relates to a system for detecting harmful programs on a network by simultaneously monitoring the entire network and individual user terminals 50, the mirroring module 100 for mirroring data on the network; A filtering module for filtering out unnecessary packets from the packets passing through the mirroring module 100 by the filtering engine 120; A data generation module 130 for forming statistical data for each IP in which packet transmission and reception occur in a network; A file collection engine 140 for collecting data passing through the filtering engine 120; It controls the copying, destruction, and operation of the virtual machine 160, and transfers suspicious files among the collected files to the virtual machine 160, while transferring suspicious file analysis results of the virtual machine 160 to the database 170. Virtual machine controller 150; A plurality of virtual machines 160 having an analyzer 162 therein that analyzes the suspicious file received from the virtual machine controller 150, and transmits the suspicious file analysis result to the virtual machine controller 150; And a database 170 storing statistical data for each IP, a file collected through the file collection engine 140, and a file analysis result of the virtual machine 160. It includes a network-based harmful program detection system using a virtual machine 160, characterized in that it comprises (see Figs. 1 and 10).
여기에서 상기 필터링 모듈은 트래픽의 패턴 시그니쳐와 비교하여 유해 트래픽을 추출하는 한편, 유해 파일 송수신 대상에 거부 신호를 전달하여 송수신을 차단하는 검출 및 차단 모듈(180); 및 사용자에게 유해 파일의 송수신 차단을 알리는 알림 모듈(190); 로 이루어지되, 상기 데이터베이스(170)는 유해 트래픽 검출 내역을 더 저장하는 것을 특징으로 한다.Here, the filtering module extracts harmful traffic in comparison with the pattern signature of the traffic, and detects and blocks a module 180 which transmits a reject signal to a harmful file transmission / reception target and blocks transmission and reception; And a notification module 190 for notifying a user of blocking transmission and reception of harmful files. Although consisting of, the database 170 is characterized in that further stores the harmful traffic detection history.
아울러 상기 필터링 모듈은 유해 트래픽 발생 PC의 차단 전용 에이전트에게 유해 트래픽을 발생시키는 프로세스의 차단을 명령하는 프로세스 차단 모듈(200); 을 사용자의 선택에 의하여 설치할 수 있다.In addition, the filtering module is a process blocking module 200 for instructing the blocking of the process of generating harmful traffic to the agent dedicated to blocking of harmful traffic generating PC; Can be installed by user's choice.
또한, 본 발명은 Taint 검사를 통하여 시스템 파일의 손상 여부를 확인하는 검사 모듈(210); 백업 파일을 이용하여 손상된 시스템 파일을 복구하는 백업 및 복구 모듈(220); 및 시스템상의 모든 데이터 및 동작을 실시간으로 감시하는 웹 매니저(230); 를 포함하는 것을 특징으로 하며, 상기 가상 머신(160)에서 추출된 의심 파일의 패턴 시그니쳐로 필터링 엔진(120)과 가상 머신(160)의 분석기(162)를 자동으로 업데이트 하는 업데이트 모듈; 을 더 포함하는 것을 특징으로 한다.In addition, the present invention provides a check module 210 for checking whether a system file is damaged by Taint test; A backup and recovery module 220 for recovering a damaged system file using the backup file; And a web manager 230 that monitors all data and operations on the system in real time. An update module for automatically updating the filtering engine 120 and the analyzer 162 of the virtual machine 160 with the pattern signature of the suspect file extracted from the virtual machine 160; It characterized in that it further comprises.
웹 매니저(230)는 시스템을 로그인, 로그오프 하는 기능, 각 모듈의 온/오프 상태나 가동 상태 및 전체 시스템 작동 로그를 볼 수 있는 기능, 관리자가 원하는 데이터를 저장 및 출력하는 기능 등도 수행한다.The web manager 230 performs a function of logging in and logging off a system, a function of viewing an on / off state or operating state of each module, and an entire system operation log, and storing and outputting data desired by an administrator.
본 발명의 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 시스템에서 각 모듈에 대한 설명은 앞서 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법의 각 단계에서 상술한 내용을 포함한다.Description of each module in the network-based malicious program detection system using the virtual machine 160 of the present invention includes the above-described information in each step of the network-based malicious program detection method using the virtual machine 160.
본 발명은 상기에서 언급한 바와 같이 바람직한 실시예와 관련하여 설명되었으나, 본 발명의 요지를 벗어남이 없는 범위 내에서 다양한 수정 및 변형이 가능하다. 따라서 본 발명의 청구범위는 이건 발명의 진정한 범위 내에 속하는 수정 및 변형을 포함한다. While the invention has been described in connection with the preferred embodiment as mentioned above, various modifications and variations are possible without departing from the spirit of the invention. Therefore, the claims of the present invention include modifications and variations that fall within the true scope of the invention.

Claims (14)

  1. 네트워크와 개별 사용자 단말(50) 전체를 동시에 감시하여 네트워크상의 유해 프로그램을 검출하는 방법에 대한 것으로,The present invention relates to a method of detecting harmful programs on a network by simultaneously monitoring a network and an entire user terminal 50.
    (a) 패킷 미러링 방식으로 네트워크의 모든 데이터를 분석하는 단계;(a) analyzing all data of the network in a packet mirroring manner;
    (b) 불필요한 패킷을 필터링 엔진(120)으로 필터링하여 차단하는 단계;(b) filtering and blocking unnecessary packets by the filtering engine 120;
    (c) 패킷 송수신이 일어나는 각 IP별 통계 데이터를 생성하는 단계; 및(c) generating statistical data for each IP at which packet transmission and reception occurs; And
    (d) 필터링 엔진(120)을 통과하여 수집된 파일을 데이터베이스(170)에 기록한 후 의심 파일을 가상 머신 컨트롤러(150)로 전달하고, 상기 가상 머신 컨트롤러(150)는 전달받은 의심 파일을 대기 중인 복수의 가상 머신(160) 중 하나에 전달하여 가상 머신(160)의 분석기(162)에서 분석하게 하는 단계; 를 포함하여 구성되는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.(d) records the collected file through the filtering engine 120 in the database 170 and then transfers the suspicious file to the virtual machine controller 150, and the virtual machine controller 150 is waiting for the received suspicious file. Delivering to one of the plurality of virtual machines 160 for analysis by the analyzer 162 of the virtual machine 160; Network-based harmful program detection method using a virtual machine 160, characterized in that comprises a.
  2. 제1항에서,In claim 1,
    상기 (b) 단계는Step (b) is
    화이트 리스트를 이용하여 상기 리스트에 있는 대상은 검사에서 제외하는 단계; Using the white list to exclude objects in the list from the inspection;
    트래픽의 패턴 시그니쳐와 비교하여 유해 트래픽을 검출하고 유해 파일 송수신 대상에게 거부신호를 전달하여 송수신을 차단하는 한편, 유해 트래픽 검출 내역을 데이터베이스(170)에 저장하는 단계; 및Detecting harmful traffic in comparison with the pattern signature of the traffic and transmitting a rejection signal to the harmful file transmission / reception target to block transmission and reception, and storing the harmful traffic detection history in the database 170; And
    유해 파일 송수신 차단을 사용자에게 알리는 단계; 로 구성되는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.Notifying the user of blocking harmful files; Network based harmful program detection method using a virtual machine, characterized in that consisting of.
  3. 제2항에서,In claim 2,
    상기 사용자 알림 단계 이전에 유해 트래픽 발생 PC의 차단 전용 에이전트에게 상기 유해 트래픽을 발생시키는 프로세스의 차단을 명령하는 단계; 가 추가되는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.Instructing the blocking dedicated agent of the malicious traffic generating PC to block the harmful traffic before the user notification step; Network-based harmful program detection method using a virtual machine, characterized in that the addition.
  4. 제1항에서,In claim 1,
    상기 (c) 단계와 (d) 단계 사이에는Between step (c) and step (d)
    웹 매니저(230)로 트래픽 현황을 실시간으로 감시하여 유해 트래픽의 송수신 위치를 파악하는 단계; 및/또는Monitoring the traffic status in real time with the web manager 230 to determine a location for transmitting and receiving harmful traffic; And / or
    Taint 검사를 주기적으로 수행하여 시스템 파일의 손상 여부를 확인하고, 손상된 시스템 파일이 발견될 경우 시스템 백업 및 복구 모듈(220)을 이용하여 백업 파일로 시스템을 복구하는 단계; 가 수행되는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.Periodically performing a Taint check to determine whether a system file is damaged, and recovering the system to a backup file using the system backup and recovery module 220 when a damaged system file is found; Network based malicious program detection method using a virtual machine, characterized in that is performed.
  5. 제4항에서,In claim 4,
    상기 백업 파일은 시스템 가동시 현재의 상태를 백업한 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.The backup file is a network-based malicious program detection method using a virtual machine (160), characterized in that for backing up the current state when the system is running.
  6. 제1항에서In claim 1
    상기 (d) 단계 후에After step (d)
    (e) 상기 가상 머신(160)에서의 분석 결과를 가상 머신 컨트롤러(150)를 통하여 데이터베이스(170)에 저장하는 단계; 및(e) storing the analysis result of the virtual machine 160 in the database 170 through the virtual machine controller 150; And
    (f) 상기 가상 머신(160)에서 추출된 의심 파일의 패턴 시그니쳐로 필터링 엔진(120)과 가상 머신(160)의 분석기(162)를 자동으로 업데이트 하는 단계; 가 수행되는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.(f) automatically updating the filtering engine 120 and the analyzer 162 of the virtual machine 160 with the pattern signature of the suspicious file extracted from the virtual machine 160; Network based malicious program detection method using a virtual machine, characterized in that is performed.
  7. 제6항에서,In claim 6,
    상기 의심 파일을 분석하여 가상 머신 컨트롤러(150)에 분석 결과를 전달한 가상 머신(160)은 파괴되는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.And analyzing the suspicious file and transmitting the analysis result to the virtual machine controller (150). The virtual machine (160) using the virtual machine (160) is characterized in that it is destroyed.
  8. 제7항에서,In claim 7,
    상기 가상 머신 컨트롤러(150)는 파괴된 가상 머신(160)의 수만큼 가상 머신(160)을 새로 복제하여 가상 머신(160)의 수가 동일하게 유지되도록 하는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.The virtual machine controller 150 replicates the virtual machine 160 as many times as the number of the destroyed virtual machine 160 to maintain the same number of the virtual machine 160 using the virtual machine 160. Network based malicious program detection method.
  9. 제1항 내지 제8항 중 어느 한 항에서,The compound according to any one of claims 1 to 8,
    상기 각 단계는 관리자가 웹 매니저(230)를 통해 확인할 수 있는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 방법.Each step is a network-based malicious program detection method using a virtual machine 160, characterized in that the administrator can check through the web manager (230).
  10. 네트워크와 개별 사용자 단말(50) 전체를 동시에 감시하여 네트워크상의 유해 프로그램을 검출하는 시스템에 대한 것으로,The present invention relates to a system for detecting harmful programs on a network by simultaneously monitoring a network and an entire user terminal 50.
    네트워크상의 데이터를 미러링하는 미러링 모듈(100);A mirroring module 100 for mirroring data on a network;
    상기 미러링 모듈(100)을 통과한 패킷에서 불필요한 패킷을 필터링 엔진(120)으로 필터링하여 차단하는 필터링 모듈;A filtering module for filtering out unnecessary packets from the packets passing through the mirroring module 100 by the filtering engine 120;
    네트워크상에서 패킷 송수신이 일어나는 각 IP별로 통계 데이터를 형성하는 데이터 생성 모듈(130);A data generation module 130 for forming statistical data for each IP in which packet transmission and reception occur in a network;
    상기 필터링 엔진(120)을 통과한 데이터를 수집하는 파일 수집 엔진(140);A file collection engine 140 for collecting data passing through the filtering engine 120;
    가상 머신(160)의 복사, 파괴, 가동을 제어하고, 수집된 파일 중 의심 파일을 가상 머신(160)에 전달하는 한편, 가상 머신(160)의 의심 파일 분석 결과를 데이터베이스(170)에 전달하는 가상 머신 컨트롤러(150); It controls the copying, destruction, and operation of the virtual machine 160, and transfers suspicious files among the collected files to the virtual machine 160, while transferring suspicious file analysis results of the virtual machine 160 to the database 170. Virtual machine controller 150;
    가상 머신 컨트롤러(150)로부터 전달받은 의심 파일을 분석하는 분석기(162)를 내부에 구비하되, 의심 파일 분석 결과를 가상 머신 컨트롤러(150)에 전달하는 복수의 가상 머신(160); 및A plurality of virtual machines 160 having an analyzer 162 therein that analyzes the suspicious file received from the virtual machine controller 150, and transmits the suspicious file analysis result to the virtual machine controller 150; And
    IP별 통계 데이터, 파일 수집 엔진(140)을 통하여 수집된 파일, 가상 머신(160)의 파일 분석 결과를 저장하는 데이터베이스(170); 를 포함하는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 시스템.A database 170 storing statistical data for each IP, a file collected through the file collection engine 140, and a file analysis result of the virtual machine 160; Network-based harmful program detection system using a virtual machine 160, characterized in that it comprises a.
  11. 제10항에서,In claim 10,
    상기 필터링 모듈은 The filtering module
    트래픽의 패턴 시그니쳐와 비교하여 유해 트래픽을 추출하는 한편, 유해 파일 송수신 대상에게 거부 신호를 전달하여 송수신을 차단하는 검출 및 차단 모듈(180); 및A detection and blocking module 180 for extracting harmful traffic compared to the pattern signature of the traffic and transmitting a reject signal to the harmful file transmission / reception target to block transmission and reception; And
    사용자에게 유해 파일의 송수신 차단을 알리는 알림 모듈(190); 로 이루어지되, 상기 데이터베이스(170)는 유해 트래픽 검출 내역을 더 저장하는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 시스템.Notification module 190 for notifying the transmission and reception of harmful files to the user; Although, the database 170 is a network-based harmful program detection system using a virtual machine 160, characterized in that further stores the harmful traffic detection history.
  12. 제11항에서,In claim 11,
    상기 필터링 모듈은 유해 트래픽 발생 PC의 차단 전용 에이전트에게 유해 트래픽을 발생시키는 프로세스의 차단을 명령하는 프로세스 차단 모듈(200); 을 더 포함하는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 시스템.The filtering module may include a process blocking module 200 for instructing a blocking dedicated agent of a malicious traffic generating PC to block a process of generating harmful traffic; Network-based malicious program detection system using a virtual machine 160, characterized in that it further comprises.
  13. 제10항에서,In claim 10,
    Taint 검사를 통하여 시스템 파일의 손상 여부를 확인하는 검사 모듈(210); A inspection module 210 for checking whether a system file is damaged through a Taint test;
    백업 파일을 이용하여 손상된 시스템 파일을 복구하는 백업 및 복구 모듈(220); 및A backup and recovery module 220 for recovering a damaged system file using the backup file; And
    시스템상의 모든 데이터 및 동작을 실시간으로 감시하는 웹 매니저(230); 를 포함하는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 시스템.A web manager 230 that monitors all data and operations on the system in real time; Network-based harmful program detection system using a virtual machine 160, characterized in that it comprises a.
  14. 제10항에서,In claim 10,
    상기 가상 머신(160)에서 추출된 의심 파일의 패턴 시그니쳐로 필터링 엔진(120)과 가상 머신(160)의 분석기(162)를 자동으로 업데이트 하는 업데이트 모듈; 을 더 포함하는 것을 특징으로 하는 가상 머신(160)을 이용한 네트워크 기반 유해 프로그램 검출 시스템.An update module for automatically updating the filtering engine 120 and the analyzer 162 of the virtual machine 160 with the pattern signature of the suspect file extracted from the virtual machine 160; Network-based malicious program detection system using a virtual machine 160, characterized in that it further comprises.
PCT/KR2010/007133 2010-08-16 2010-10-18 Network-based harmful-program detection method using a virtual machine, and a system comprising the same WO2012023657A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20100078593 2010-08-16
KR10-2010-0078593 2010-08-16

Publications (1)

Publication Number Publication Date
WO2012023657A1 true WO2012023657A1 (en) 2012-02-23

Family

ID=45605305

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2010/007133 WO2012023657A1 (en) 2010-08-16 2010-10-18 Network-based harmful-program detection method using a virtual machine, and a system comprising the same

Country Status (1)

Country Link
WO (1) WO2012023657A1 (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015006110A1 (en) * 2013-07-11 2015-01-15 Symantec Corporation Identifying misuse of legitimate objects
WO2016018852A1 (en) * 2014-07-31 2016-02-04 Intuit Inc. Method and system for correlating self-reporting virtual asset data with external events to generate an external event identification database
US20160162685A1 (en) * 2014-12-08 2016-06-09 Vmware, Inc. Monitoring application execution in a clone of a virtual computing instance for application whitelisting
US9742794B2 (en) 2014-05-27 2017-08-22 Intuit Inc. Method and apparatus for automating threat model generation and pattern identification
US9888025B2 (en) 2014-02-27 2018-02-06 Intuit Inc. Method and system for providing an efficient asset management and verification service
US9923909B2 (en) 2014-02-03 2018-03-20 Intuit Inc. System and method for providing a self-monitoring, self-reporting, and self-repairing virtual asset configured for extrusion and intrusion detection and threat scoring in a cloud computing environment
US10102082B2 (en) 2014-07-31 2018-10-16 Intuit Inc. Method and system for providing automated self-healing virtual assets
US10121007B2 (en) 2014-02-21 2018-11-06 Intuit Inc. Method and system for providing a robust and efficient virtual asset vulnerability management and verification service
KR101953824B1 (en) * 2017-10-27 2019-03-05 아토리서치(주) Apparatus for network function virtualization using software defined networking and operation method thereof
US10757133B2 (en) 2014-02-21 2020-08-25 Intuit Inc. Method and system for creating and deploying virtual assets
US11294700B2 (en) 2014-04-18 2022-04-05 Intuit Inc. Method and system for enabling self-monitoring virtual assets to correlate external events with characteristic patterns associated with the virtual assets

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100870871B1 (en) * 2008-05-29 2008-11-27 (주)한드림넷 Access level network securing device and securing system thereof
KR20100046523A (en) * 2008-10-27 2010-05-07 (주)소만사 Apparatus and method to shut harmful sites

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100870871B1 (en) * 2008-05-29 2008-11-27 (주)한드림넷 Access level network securing device and securing system thereof
KR20100046523A (en) * 2008-10-27 2010-05-07 (주)소만사 Apparatus and method to shut harmful sites

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHAN KYOU HWANG ET AL.: "Design of Implementation on real-time Anomaly Traffic Lookup & Analysis System", KNOM REVIEW, vol. 10, no. 1, August 2007 (2007-08-01) *
JUNG TAEK SEO: "Detecting Scheme of malicious Codes using virtual environments", JOURNAL OF KOREA INSTITUTE OF INFORMATION SECURITY & CRYPTOLOGY, vol. 17, no. 4, August 2007 (2007-08-01) *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9276947B2 (en) 2013-07-11 2016-03-01 Symantec Corporation Identifying misuse of legitimate objects
US9075989B2 (en) 2013-07-11 2015-07-07 Symantec Corporation Identifying misuse of legitimate objects
WO2015006110A1 (en) * 2013-07-11 2015-01-15 Symantec Corporation Identifying misuse of legitimate objects
US9923909B2 (en) 2014-02-03 2018-03-20 Intuit Inc. System and method for providing a self-monitoring, self-reporting, and self-repairing virtual asset configured for extrusion and intrusion detection and threat scoring in a cloud computing environment
US10360062B2 (en) 2014-02-03 2019-07-23 Intuit Inc. System and method for providing a self-monitoring, self-reporting, and self-repairing virtual asset configured for extrusion and intrusion detection and threat scoring in a cloud computing environment
US10757133B2 (en) 2014-02-21 2020-08-25 Intuit Inc. Method and system for creating and deploying virtual assets
US10121007B2 (en) 2014-02-21 2018-11-06 Intuit Inc. Method and system for providing a robust and efficient virtual asset vulnerability management and verification service
US11411984B2 (en) 2014-02-21 2022-08-09 Intuit Inc. Replacing a potentially threatening virtual asset
US9888025B2 (en) 2014-02-27 2018-02-06 Intuit Inc. Method and system for providing an efficient asset management and verification service
US10055247B2 (en) 2014-04-18 2018-08-21 Intuit Inc. Method and system for enabling self-monitoring virtual assets to correlate external events with characteristic patterns associated with the virtual assets
US11294700B2 (en) 2014-04-18 2022-04-05 Intuit Inc. Method and system for enabling self-monitoring virtual assets to correlate external events with characteristic patterns associated with the virtual assets
US9742794B2 (en) 2014-05-27 2017-08-22 Intuit Inc. Method and apparatus for automating threat model generation and pattern identification
WO2016018852A1 (en) * 2014-07-31 2016-02-04 Intuit Inc. Method and system for correlating self-reporting virtual asset data with external events to generate an external event identification database
US9516044B2 (en) 2014-07-31 2016-12-06 Intuit Inc. Method and system for correlating self-reporting virtual asset data with external events to generate an external event identification database
US10102082B2 (en) 2014-07-31 2018-10-16 Intuit Inc. Method and system for providing automated self-healing virtual assets
AU2015296801B2 (en) * 2014-07-31 2020-06-25 Intuit Inc. Method and system for correlating self-reporting virtual asset data with external events to generate an external event identification database
US20160162685A1 (en) * 2014-12-08 2016-06-09 Vmware, Inc. Monitoring application execution in a clone of a virtual computing instance for application whitelisting
US10726119B2 (en) * 2014-12-08 2020-07-28 Vmware, Inc. Monitoring application execution in a clone of a virtual computing instance for application whitelisting
KR101953824B1 (en) * 2017-10-27 2019-03-05 아토리서치(주) Apparatus for network function virtualization using software defined networking and operation method thereof

Similar Documents

Publication Publication Date Title
WO2012023657A1 (en) Network-based harmful-program detection method using a virtual machine, and a system comprising the same
WO2011105659A1 (en) System, method, program, and recording medium for real-time detection and blocking of harmful programs through behavioral analysis of a process
CN106411562B (en) Electric power information network safety linkage defense method and system
US7197762B2 (en) Method, computer readable medium, and node for a three-layered intrusion prevention system for detecting network exploits
EP1495616B1 (en) Detecting and countering malicious code in enterprise networks
US7444679B2 (en) Network, method and computer readable medium for distributing security updates to select nodes on a network
WO2011010823A2 (en) Method for detecting and preventing a ddos attack using cloud computing, and server
US7200866B2 (en) System and method for defending against distributed denial-of-service attack on active network
WO2012015171A2 (en) Hacker virus security-integrated control device
US6895432B2 (en) IP network system having unauthorized intrusion safeguard function
WO2017069348A1 (en) Method and device for automatically verifying security event
WO2018107811A1 (en) Joint defence method and apparatus for network security, and server and storage medium
US20100031093A1 (en) Internal tracing method for network attack detection
JPH09214493A (en) Network system
WO2012108687A2 (en) Method of detecting arp spoofing attacks using arp locking and computer-readable recording medium storing program for executing the method
CA2533853A1 (en) Method and system for detecting unauthorised use of a communication network
WO2019231135A1 (en) Vehicle intrusion detection and protection system
WO2015129934A1 (en) Command control channel detection device and method
WO2017171188A1 (en) Security device using transaction information collected from web application server or web server
Hegazy et al. A multi-agent based system for intrusion detection
WO2003021402A2 (en) Network security
KR101871406B1 (en) Method for securiting control system using whitelist and system for the same
WO2013125867A1 (en) Computer system and system for compound rule creation on basis of file and behavior
CN112073371A (en) Malicious behavior detection method for weak supervision routing equipment
CN113794590B (en) Method, device and system for processing network security situation awareness information

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10856199

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10856199

Country of ref document: EP

Kind code of ref document: A1