WO2011105659A1 - 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체 - Google Patents

프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체 Download PDF

Info

Publication number
WO2011105659A1
WO2011105659A1 PCT/KR2010/002642 KR2010002642W WO2011105659A1 WO 2011105659 A1 WO2011105659 A1 WO 2011105659A1 KR 2010002642 W KR2010002642 W KR 2010002642W WO 2011105659 A1 WO2011105659 A1 WO 2011105659A1
Authority
WO
WIPO (PCT)
Prior art keywords
behavior
blocking
harmful
program
real time
Prior art date
Application number
PCT/KR2010/002642
Other languages
English (en)
French (fr)
Inventor
최병호
임철수
Original Assignee
주식회사 이세정보
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 이세정보 filed Critical 주식회사 이세정보
Priority to US13/580,958 priority Critical patent/US20120324575A1/en
Publication of WO2011105659A1 publication Critical patent/WO2011105659A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow

Definitions

  • the present invention relates to a system, a method, a program, and a recording medium for detecting and blocking a harmful program in real time by analyzing the behavior of a process to detect and block a malicious program operating in various forms in the system.
  • DDos Distributed Denial of Service
  • the SQL Slammerworm attack on January 25, 2003 the SQL Slammerworm attack on January 25, 2003
  • Threats are increasing, such as large-scale DDoS attacks caused by 25,000 zombie pcs on the 7th.
  • the malicious program was a tool for expressing simple curiosity or self-examination. Recently, such a malicious program shows a problem of inducing money acquisition and malicious damage.
  • the heuristic technology which is intended to prevent the inflow and behavior of the program, can cope with harmful programs with similar code patterns, but there is a problem that it cannot cope with new harmful programs and intelligently transforming harmful programs in real time. .
  • the technical problem to be solved by the present invention is to protect the system from a variety of malicious programs unknown or variants by analyzing various behaviors to detect and block harmful programs operating in various forms.
  • the technical problem to be solved by the present invention is that administrators and users can easily set a policy on malicious programs and their actions to detect and block the behavior of harmful programs in real time to prevent harm to themselves and others. will be.
  • the malicious program scenario of the method for detecting and blocking malicious programs in real time through the behavior analysis of the process includes session generation, packet transmission to multiple ips, spoofing occurrence, packet transmission, file opening, File Creation, IDT HOOK Detection, Service Creation, Service Open, Physical Memory Access, Process Creation, Other Process Access, Operating System Key Function Table Violation, Hiding Your Own Behavior, Registering Program Startup, Keyboard hacking Abnormalities such as attempts, concealing the registry, accessing other processes, invading other process address spaces, unnamed processes, parentless processes, creating executables, writing executable files, loading device drivers, and forcing other processes to exit It is characterized by including a defrost list.
  • the harmful program scenario of the method of detecting and blocking the harmful program in real time through the analysis of the behavior of the process according to the above characteristics may be combined to form a single scenario by combining one or more action lists, and the combination of one or more single scenarios may be used to create a complex scenario. It is characterized by forming.
  • the abnormal behavior list of the method of detecting and blocking a harmful program in real time by analyzing the behavior of the process according to the above characteristics may further include a dummy abnormal behavior that ignores any behavior.
  • the user terminal of the method for detecting and blocking a harmful program in real time by analyzing the behavior of the process according to the above feature is characterized in that connected to the security server and connected to the network until the Agent is terminated.
  • the method of detecting the harmful process in the method of detecting and blocking the harmful program in real time through the analysis of the behavior of the process according to the above characteristics may include detecting the harmful process in a process operating under the same name as the operating system when the harmful program operates.
  • the malicious process When the malicious process operates, it simultaneously tracks the network and process behaviors to detect the behaviors in a combination of scenarios, and checksums to detect harmful processes that are parasitic in normal processes.
  • the first harmful process is removed and the child process generated is detected by the operating system under the name of another process, and the code is inserted into the normal process using the hook detection and restoration technique. It is characterized by detecting the harmful process.
  • the method of blocking the harmful process in the method of detecting and blocking the harmful program in real time by analyzing the behavior of the process according to the above characteristics is to block all packets of the process in the case of a network packet, and forcibly terminate the process in the case of a process. Process packet blocking for a period of time, and a simple alert.
  • the security server of the method for detecting and blocking harmful programs in real time by analyzing the behavior of the process according to the above characteristics further comprises setting a detection and blocking scenario policy for abnormal behavior and analyzing the types and distributing them to user terminals.
  • the user terminal may further include applying a detection and blocking scenario policy for abnormal behavior received from the security server to the kernel.
  • a system for detecting and blocking harmful programs in real time by analyzing the behavior of a process is provided by analyzing the behavior of a process consisting of a plurality of user terminals and a security server connected to the network with the user terminals, respectively.
  • the user terminal is a behavior monitoring module for monitoring the behavior of the process, the behavior tracking of the process in which the abnormal behavior is detected and the process tracking for detecting the PID of the process
  • a PID detection module a scenario blocking module that blocks a complex scenario by combining a list of actions performed by a process at a given time, a checksum blocking module that blocks when a checksum of an executing program matches.
  • a hooking detection and restoration module that detects and restores the code when it operates by inserting the code
  • an exception process DB that checks the behavior monitoring exception process and handles the behavior monitoring as an exception.
  • the security server is an analysis module for analyzing the statistical information received from the user terminal, a security action module for performing security measures by collecting abnormal behavior and harmful program blocking information occurring in a plurality of user terminals, and blocking condition information, each Characterized in that the overall DB for storing abnormal behavior occurrence information and harmful program information of the user terminal.
  • An exception process DB for the security server of the system for detecting and blocking harmful programs in real time through the behavior analysis of the process according to the feature is delivered to the user terminal for use in behavior-based monitoring exceptions, and
  • a program for detecting and blocking a harmful program through a behavioral analysis of a process in real time may be detected and blocked in real time through a behavioral analysis of the above-described process.
  • a program recording medium which detects and blocks a harmful program in real time by analyzing the behavior of a process according to another aspect of the present invention is characterized in that the program described above is stored in a computer readable manner.
  • the present invention has the effect of protecting the user terminal from various harmful programs unknown and variants by analyzing and applying the abnormal behavior performed by the harmful program in real time.
  • the present invention can easily set the security policy suitable for the user's environment has the effect that can flexibly cope with changes in the user environment or the appearance of new harmful programs.
  • the present invention can detect and block a zero-day attack has the effect of reducing the damage that takes time to generate and distribute the treatment signature in the existing vaccine program.
  • FIG. 1 is a block diagram illustrating a system for detecting and blocking a harmful program in real time through analysis of a process's behavior according to an exemplary embodiment of the present invention.
  • FIGS. 2 and 3 are flowcharts illustrating a method of detecting and blocking harmful programs in real time by analyzing the behavior of processes according to an embodiment of the present invention.
  • checksum blocking module 150 hooking monitoring and recovery module
  • analysis module 220 security measures module
  • FIG. 1 is a block diagram illustrating a system for detecting and blocking a harmful program in real time through analysis of a process's behavior according to an exemplary embodiment of the present invention.
  • an embodiment of the present invention comprises a user terminal and a security server.
  • the user terminal 100 is the behavior monitoring module 110, process tracking and PID detection module 120, scenario blocking module 130, checksum blocking module 140, hooking monitoring and recovery module 150, exception Process module 160,
  • the security server 200 includes an analysis module 210, a security measure module 220, a blocking scenario DB 230, an exception process DB 240, and a general DB 250.
  • the behavior monitoring module 110 of the user terminal 100 monitors the behavior of the process, and the process tracking and PID detection module 120 detects the behavior of the process in which the abnormal behavior is detected and the PID of the process. Detect.
  • the scenario blocking module 130 compares the action sequence list performed by the process at a given time with the blocking scenario, and blocks the case.
  • the checksum blocking module 140 blocks when the checksums of the executing programs match.
  • the hooking detection and restoration module 150 detects and restores the harmful program when it is operated by inserting code into another process to hide itself.
  • the exception process module 160 processes a process matching the exception process DB 240 received from the security server 200 as a monitoring / blocking exception.
  • the analysis module 210 of the security server 200 analyzes the statistical information received from the user terminal 100 and determines the attack by the attack trend or the plurality.
  • the security measure module 220 performs an action such as registering an additional blocking scenario or spreading the blocking scenario based on the result analyzed by the analysis module 210.
  • the overall DB 250 stores blocking condition information, abnormal behavior occurrence information of each user terminal 100, and harmful program information.
  • the exception process DB 240 is delivered to each user terminal 100 and used for behavior-based monitoring exceptions.
  • the blocking scenario DB 230 is delivered to each user terminal 100 and used for matching / blocking process behavior.
  • a list of harmful program scenarios is previously defined in the security server.
  • the malicious program scenario includes a session, a packet transmission to multiple ips, a spoofing, a packet transmission, a file open, a file generation, an IDT HOOK detection, a service creation, a service open, and a physical Accessing memory, creating processes, accessing other processes, violating operating system key function tables, hiding one's own behavior, registering programs for automatic startup, attempting keyboard hacking, registry concealment, accessing other processes, and invading other process addresses, names Include anomaly list, such as no process, no parent process, executable file creation, executable file write mode, device driver load, forcibly terminating another process.
  • the abnormal behavior list further includes a dummy abnormal behavior that ignores any behavior.
  • the dummy abnormal behavior will be described again in a method of detecting a harmful process by matching the abnormal behavior list.
  • the program executed in the user terminal is matched with the harmful program scenario to detect and block the harmful process.
  • a method of detecting a harmful process by matching the abnormal behavior list is as follows.
  • Table 1 describes examples of detecting variants and new processes according to scenarios.
  • the blocking engine for which Harmful Program 1 has "Action A” records that Harmful Program 1 has performed “Action A” and examines all scenarios. If the driver has a scenario of blocking even if only “A” occurs, blocking / warning data will be generated immediately.
  • the blocking engine blocks the harmful program 1 because there is a matching scenario.
  • the blocking log contains basic information (process id, name) of the harmful program that occurred, the scenario id and the blocking value that blocked the harmful program.
  • the blocking value is the detailed value of the abnormal behavior element of the process.
  • the scenario combines ⁇ [external network connection, once], [execution file creation, once], [autorun registration, once], [process execution, once] ⁇ .
  • the system that detects and blocks harmful programs in real time by analyzing the behavior of the process detects new / variant malicious programs because it only sees the behavior of malicious programs without referring to the information such as the appearance, file size, and checksum of the process. And it can block, and can cope with malicious programs whose appearance is constantly changing.
  • the third dummy action of the scenario 2 is irrelevant to any action, and the fourth action of the process is selected as a scenario in which scenario 2 is matched when [abnormal action K] occurs to detect the process.
  • the operation behavior is detected by scenario combination.
  • checksum detection detects harmful processes that are parasitic and operate in normal processes.
  • a checksum of an executable program is obtained in advance from a normal state and compared with each other obtained from a kernel in real time, thereby detecting that malicious code is inserted or changed in the normal program.
  • process name is referred to as a full path.
  • the process ID (PID) of the child process generated by the process is tracked and detected.
  • a malicious program is parasitic / inserted into an operating system to detect operation.
  • the method of blocking the harmful process by matching the abnormal behavior list may be any one of blocking all packets of the process in the network, forcibly terminating the process in the case of the network, blocking the packet / process execution for a specific time, and a simple alert.
  • a program for detecting and blocking a harmful program in real time through analysis of the behavior of a process and a recording medium storing the program in a computer-readable manner.
  • FIGS. 2 and 3 are flowcharts illustrating a method of detecting and blocking harmful programs in real time by analyzing the behavior of processes according to an embodiment of the present invention.
  • the harmful program real-time detection / blocking system through the process behavior analysis is a system that simultaneously performs the detection and blocking of harmful programs for a group of user terminals in the organization to perform behavior-based monitoring individually It is configured to include a security server connected to the network with a plurality of user terminals to receive the event information generated from each user terminal to perform a group-level blocking policy.
  • the user terminal compares whether the executing program is a priority blocking target by a process checksum when executing, and immediately blocks when matching.
  • the process that does not belong to the exception process continues to monitor the behavior and if any abnormal behavior occurs and accumulates the behavioral statistics immediately and compares to match the blocking scenario.
  • the process that matches the blocking scenario successfully performs blocking and generates alert information according to the blocking condition of the scenario.
  • the statistical information of the corresponding process is transmitted to the agent and waits until the next action occurs.
  • the Agent belongs to the inside of the user terminal and receives the complex scenario information for blocking from the security server, and transmits the complex scenario policy to the device driver performing the behavior monitoring / blocking operating at the kernel level. Perform real-time compound scenario matching upon the occurrence of all process actions.
  • agent and the device driver are regarded as one program by controlling such as starting and stopping the device driver by the agent.
  • the process is regarded as a harmful program and generates a blocking policy.
  • the security server when the security server receives the process behavior statistics, process network statistics, process file access statistics and process blocking alert information from the agent, the data is immediately delivered to the analysis module to analyze the process network trends and process actions. Perform trend analysis.
  • process network trend analysis is not a single process but an analysis of multiple user terminals, it can detect attacks such as distributed denial of service attacks (DDoS) or social engineering network attacks that are difficult to detect.
  • DDoS distributed denial of service attacks
  • social engineering network attacks that are difficult to detect.
  • the information analyzed and determined by the new or modified malicious program unknown by the above methods is represented as a report data, and a blocking scenario is established based on the action history of the corresponding process to other user terminals that are not yet infected.
  • Proliferation prevention policy registration is carried out to propagate the policy in advance and immediately block when the process is found.
  • Agent is installed on the user terminal and always works while the user terminal is running and monitors the behavior of all processes operating on the user terminal in real time.
  • Agent is connected to security server through TCP / IP network, and connection is maintained until Agent is terminated.
  • Security server manages Agent installed in many user terminals to keep connection in real time.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체에 관한 것으로, 더욱 상세하게는 보안 서버에서 프로세스의 유해성 이상 행동 목록을 미리 정의하고, 발생한 이상 행동 개수를 검출하여 수집하고, 사용자 단말에서 실행하는 프로그램을 상기 이상 행동 목록과 매칭하여 유해 프로세스를 탐지하고 차단하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체에 관한 것이다.

Description

프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체
본 발명은 시스템 내에서 다양한 형태로 동작하는 악의적인 프로그램을 탐지하고 차단하도록 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체에 관한 것이다.
인터넷 인프라의 급속한 발전과 인터넷 보급율의 확대에 따라 사용자 PC의 보안을 위협하는 악성 프로그램이 갈수록 지능화, 다양화되고 있고, 악성 프로그램에 의한 피해는 나날이 커지고 있다.
이러한, 인터넷 인프라 기술의 발전이 오히려 보안 및 개인 정보 보호에 큰 피해를 줄 수 있다. 즉, 고성능 컴퓨터가 봇넷의 특정 좀비 컴퓨터로 이용되거나 웜에 감염되어 또 다른 전염 대상 컴퓨터를 찾을 때 컴퓨터 성능의 발전 속도가 빨라짐에 따라 피해 상황도 빨라지게 될 것이다.
이런 위협요소의 문제는 정보전으로까지 활용되어 사이버범죄, 전쟁, 테러에 이용될 수 있는 잠재적 위협을 안고 있는 것이다.
특히, 교통, 금융, 에너지, 국가 시스템 망에 대한 보안이 더욱 중요해지고 있다.
왜냐하면 이러한 국가 정보 인프라는 경제 및 사회 전반적으로 근간이 되는 기반 망이기 때문에 어떤 위협으로부터도 안전하게 보호되고 운영되어야 한다. 만일 국가의 인프라가 위협을 받아 흔들리는 경우 사회, 경제뿐 아니라 국방에 까지 큰 혼란을 가져오게 될 것이다.
그 예로 인터넷 보안 사고로써 2002년 10월 21일 발생한 루트 네임 서버의 분산 서비스 거부(DDos) 공격, 2003년 1월 25일 발생한 SQL 슬래머웜의 공격, 2004년에 발생한 MyDoom 바이러스 공격, 2009년 7월 7일에 25,000대의 좀비pc에 의하여 발생한 대규모 DDoS공격과 같이 위협이 증가하고 있다.
이는 인터넷 인프라의 취약성을 공격한 대표적인 사건으로 인해 인터넷 전체가 공격에 영향을 받을 수 있음을 보여주었다.
이러한 악성 프로그램은 사용자 PC에 침투하여 사용자의 의도와는 무관한 작업을 처리하거나 비정상적인 기능을 수행하는 프로그램으로써, 바이러스, 웜, 트로이목마, 백도어, 스파이 웨어 등의 프로그램을 통칭한다.
악성 프로그램은 그 종류에 따라서 다양한 형태가 존재하지만, 다른 프로그램 또는 운영 체제에 접근하여 코드를 변경시키거나 정보를 추출하는 동작, 비정상적인 네트워크 패킷을 송수신하는 동작 또는 보안 프로그램으로부터 자신의 존재를 숨기기 위한 은닉 행위와 같은 일반적인 프로그램과는 다른 이상 행동을 수행한다는 공통적인 특성을 가지고 있다.
이러한 악성 프로그램은 초창기에는 단순 호기심이나 자기 과시를 나타내기 위한 도구였다면 최근에 와서는 금전의 취득 및 악의적인 피해를 유도하는 문제점을 나타내고 있다.
또한, 바이러스, 백도어, 루트킷, 트로이 목마와 같은 악성 코드가 초창기에는 각각 개별적으로 움직이는 반면 최근에는 이들이 복합적으로 발생하여 이를 제어하는데 많은 어려움이 있다.
특히 인터넷에 돌아다니는 악성코드는 대부분이 오픈 소스 코드로 공개되어 있어 누구라도 악성 코드 조작하여 변종 악성 코드를 배포할 수 있다. 이로 인해 보안 취약점이 발생한 이후 채 하루가 되기 전에 악성코드에 의한 공격이 들어오는 제로 데이 공격이 현실화 되는 문제점이 있다.
그러나, 종래의 악의적인 프로그램을 취득하여 코드를 분석하여 악의적인 프로그램을 제거할 수 있는 패턴 시그니쳐를 만들어야 악의적인 행동을 막을 수 있는 시그니쳐 방식과, 기존 유해 프로그램의 코드를 분석하여 향후 발생할 수 있는 유해 프로그램의 유입 및 행동을 막고자 나온 heuristic기술은 유사 코드패턴을 가진 유해프로그램에 대해서는 대처가 가능하나 신규로 발생하는 유해 프로그램 및 지능적으로 변모하는 변종 유해 프로그램에 대해 실시간으로 대응 할 수 없다는 문제점이 있다.
본 발명이 해결하고자 하는 기술적 과제는 다양한 형태로 동작하는 유해 프로그램을 탐지하고 차단하기 위해 다양한 행위 분석이 이루어져 변종 또는 알려지지 않은 다양한 악의적 프로그램으로부터 시스템을 보호하는 것이다.
또한, 본 발명이 해결하고자 하는 기술적 과제는 관리자 및 사용자가 용이하게 악의적 프로그램과 그 프로그램이 행하는 행위에 대해서 정책을 설정하여 자신 및 타인에게 피해가 가지 않도록 유해 프로그램의 행위를 실시간으로 탐지하고 차단하는 것이다.
본 발명의 한 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법은 보안 서버에서 유해 프로그램 시나리오 목록을 미리 정의하는 단계; 및
Agent프로그램에 의한 사용자 단말에서 실행하는 프로그램을 상기 유해 프로그램 시나리오와 매칭하여 유해 프로세스를 탐지하고 차단하는 단계;로 이루어지는 것을 특징으로 한다.
상기 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법의 상기 유해 프로그램 시나리오는 세션(session)발생, 다중ip에 패킷전송, 스푸핑(spoofing)발생, 패킷 송수신, 파일 오픈, 파일 생성, 아이디티 후크(IDT HOOK)탐지, 서비스 생성, 서비스 오픈, 물리 메모리 접근, 프로세스 생성, 다른 프로세스 접근, 운영체계 주요 함수 테이블 침범, 자신의 행동을 감추는 행위, 프로그램 자동 시작 등록, 키보드 해킹 시도, 레지스트리 은닉, 타 프로세스 접근, 타 프로세스 주소 공간을 침범하는 행위, 이름 없는 프로세스, 부모 없는 프로세스, 실행파일 생성, 실행파일 쓰기 모드, 디바이스 드라이버 로드, 타 프로세스를 강제로 종료하는 행위와 같은 이상 해동 목록을 포함하는 것을 특징으로 한다.
상기 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법의 상기 유해 프로그램 시나리오는 하나 이상의 이상 행동 목록을 조합하여 단일 시나리오를 형성하고, 하나 이상의 단일 시나리오를 조합하여 복합 시나리오를 형성하는 것을 특징으로 한다.
상기 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법의 상기 이상 행동 목록은 어떠한 행동도 무시하는 더미 이상행동을 더 포함하는 것을 특징으로 한다.
상기 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법의 상기 사용자 단말기는 Agent가 종료되기 전까지 보안서버와 네트워크로 접속되어 연결하는 것을 특징으로 한다.
상기 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법의 상기 유해 프로세스를 탐지하는 방법은 유해 프로그램이 동작할 때 운영체계와 동일한 이름으로 동작하는 프로세스에서 유해 프로세스를 탐지, 유해 프로세스 동작 시 네트워크와 프로세스 행위를 동시에 추적함으로써 그 동작 행위를 시나리오 조합으로 탐지, 체크섬(checksum) 탐지로 정상 프로세스에 기생하여 동작하는 유해 프로세스를 탐지, 프로세스 추적을 통해서 부모 프로세스와 생성한 자식 프로세스를 실시간으로 추적함으로써, 처음 발생하는 유해 프로세스가 제거되고 생성되는 자식 프로세스가 운영체계 타 프로세스의 이름으로 동작하는 프로세스를 탐지, 및 후킹 검출 및 복원 기법을 사용하여 정상 프로세스에 코드 삽입을 해서 동작하는 유해 프로세스를 탐지하는 것을 특징으로 한다.
상기 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법의 상기 유해 프로세스를 차단하는 방법은 네트웍 패킷의 경우 그 프로세스의 모든 패킷 차단, 프로세스의 경우 그 프로세스를 강제종료, 특정시간 동안 프로세스 패킷 차단, 및 단순한 alert 중 어느 하나로 이루어지는 것을 특징으로 한다.
상기 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법의 상기 보안 서버는 비정상적인 행위에 대한 탐지 및 차단 시나리오 정책을 설정하여 유형별로 분석하고 사용자 단말에 배포하는 단계를 더 포함하고,
상기 사용자 단말은 상기 보안 서버로부터 받은 비정상적인 행위에 대한 탐지 및 차단 시나리오 정책을 커널단에 적용하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템은 다수의 사용자 단말과, 상기 사용자 단말과 각각 네트워크로 연결되는 보안서버로 이루어진 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템에 있어서, 상기 사용자 단말은 프로세스의 행동를 감시하는 행동감시모듈과, 이상 행동이 감지된 프로세스의 행위 추적과 그 프로세스의 피아이디(PID)를 검출하는 프로세스 추적 및 피아이디(PID)검출 모듈과, 주어진 시간에서 프로세스가 행한 행동 목록을 조합하여 복합 시나리오가 일치할 경우 차단하는 시나리오차단모듈과, 실행프로그램의 체크섬이 일치 할 경우 차단하는 체크섬차단모듈과, 유해 프로그램이 자신을 숨기기 위하여 다른 프로세스에 코드를 삽입하여 동작하는 경우 이를 감지하고 복원하는 후킹감지 및 복원모듈과, 및 행동감시 예외프로세스인지 검사하여 행동감시를 예외로 처리하는 예외프로세스 DB로 구성하고,
상기 보안 서버는 상기 사용자 단말에서 수신된 통계정보로 분석하는 분석모듈, 다수의 사용자 단말에서 발생하는 이상 행위 및 유해 프로그램 차단 정보를 수집하여 보안 조치를 실시하는 보안조치모듈, 및 차단 조건 정보, 각 사용자 단말의 이상 행동 발생 정보 및 유해 프로그램 정보를 저장하는 총괄DB로 구성하는 것을 특징으로 한다.
상기 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템의 상기 보안 서버는 사용자 단말로 전달되어 행동기반 감시 예외에 사용하는 예외 프로세스 DB, 및
상기 사용자 단말로 전달되어 프로세스 행동기반 매칭 및 차단에 사용하는 차단 시나리오 DB를 더 포함하는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 프로그램은 상기 기재된 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 것을 특징으로 한다.
본 발명의 또 다른 특징에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 프로그램 기록 매체는 상기 기재된 프로그램을 컴퓨터 판독 가능하게 기억하는 것을 특징으로 한다.
이러한 본 발명의 특징에 따르면,
본 발명은 유해 프로그램이 수행하는 이상 행위를 실시간으로 분석하여 적용함으로써, 변종 및 알려지지 않은 다양한 유해 프로그램으로부터 사용자 단말을 보호할 수 있는 효과가 있다.
또한, 본 발명은 사용자가 자신의 환경에 적합한 보안 정책을 용이하게 설정할 수 있어 사용자 환경의 변화나 새로운 유해 프로그램의 출현에 대하여 유연하게 대처할 수 있는 효과가 있다.
또한, 본 발명은 제로 데이 공격을 탐지 및 차단할 수 있어 기존 백신 프로그램에서 치료 시그니쳐를 생성하고 배포하기까지 시간이 걸려 발생하던 피해를 줄이는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템을 나타낸 블록도이다.
도 2 및 도 3은 본 발명의 실시 예에 따른 프로세스의 행위 분석을 통한 유해 프로그램 실시간으로 탐지하고 차단하는 방법의 흐름을 나타낸 순서도이다.
<부호의 설명>
100 : 사용자 단말 110 : 행동 감시 모듈
120 : 프로세스 추적 및 PID 검출 모듈 130 : 시나리오 차단 모듈
140 : 체크섬 차단 모듈 150 : 후킹감시 및 복원 모듈
160 : 예외 프로세스 모듈 200 : 보안 서버
210 : 분석모듈 220 : 보안조치 모듈
230 : 차단 시나리오 DB 240 : 예외 프로세스 DB
250 : 총괄 DB
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참고로 하여 상세하게 설명한다.
도 1은 본 발명의 실시 예에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템을 나타낸 블록도이다.
도 1에 도시한 바와 같이, 본 발명의 실시 예는 사용자 단말 및 보안서버로 구성한다.
여기서, 상기 사용자 단말(100)은 행동 감시 모듈(110), 프로세스 추적 및 PID 검출 모듈(120), 시나리오 차단 모듈(130), 체크섬 차단 모듈(140), 후킹감시 및 복원 모듈(150), 예외 프로세스 모듈(160),
보안 서버(200)는 분석모듈(210), 보안조치 모듈(220), 차단 시나리오 DB(230), 예외 프로세스 DB(240), 및 총괄 DB(250)로 구성한다.
사용자 단말(100)의 행동 감시 모듈(110)은 프로세스의 행동을 감시하고, 프로세스 추적 및 피아이디 검출모듈(120)은 이상 행동이 감지된 프로세스의 행동 추적과 그 프로세스의 피아이디(PID)를 검출한다.
시나리오 차단 모듈(130)은 주어진 시간에서 프로세스가 행한 행동 순서목록과 차단 시나리오와 비교하여 일치할 경우에 차단한다.
체크섬 차단 모듈(140)은 실행 프로그램의 체크섬이 일치할 경우에 차단한다.
후킹감지 및 복원 모듈(150)은 유해 프로그램이 자신을 숨기기 위하여 다른 프로세스에 코드를 삽입하여 동작하는 경우 이를 감지하고 복원한다.
예외 프로세스 모듈(160)은 보안서버로(200)부터 받은 예외 프로세스 DB(240)와 매칭되는 프로세스를 감시/차단 예외로 처리한다.
보안 서버(200)의 분석 모듈(210)은 상기 사용자 단말(100)에서 수신된 통계정보를 분석하고, 공격동향이나 다수에 의한 공격을 판별한다.
보안조치모듈(220)은 분석 모듈(210)에 의하여 분석된 결과를 바탕으로 추가적인 차단 시나리오 등록이나 차단 시나리오 확산 등의 조치를 수행한다.
총괄DB(250)는 차단 조건 정보, 각 사용자 단말(100)의 이상 행동 발생 정보, 및 유해 프로그램 정보를 저장한다.
예외 프로세스 DB(240)는 각 사용자 단말(100)로 전달되어 행동기반 감시예외에 사용한다.
차단 시나리오 DB(230)는 각 사용자 단말(100)로 전달되어 프로세스 행동기반 매칭/차단에 사용한다.
상기와 같은 구성을 이용하여 프로세스의 행위 분석을 통한 유해 프로그램 실시간으로 탐지하는 방법은 먼저, 보안 서버에서 유해 프로그램 시나리오 목록을 미리 정의한다.
이때, 상기 유해 프로그램 시나리오는 세션(session)발생, 다중ip에 패킷전송, 스푸핑(spoofing)발생, 패킷 송수신, 파일 오픈, 파일 생성, 아이디티 후크(IDT HOOK)탐지, 서비스 생성, 서비스 오픈, 물리 메모리 접근, 프로세스 생성, 다른 프로세스 접근, 운영체계 주요 함수 테이블 침범, 자신의 행동을 감추는 행위, 프로그램 자동 시작 등록, 키보드 해킹 시도, 레지스트리 은닉, 타 프로세스 접근, 타 프로세스 주소 공간을 침범하는 행위, 이름 없는 프로세스, 부모 없는 프로세스, 실행파일 생성, 실행파일 쓰기 모드, 디바이스 드라이버 로드, 타 프로세스를 강제로 종료하는 행위와 같은 이상 해동 목록을 포함한다.
또한, 상기 이상 행동 목록은 어떠한 행동도 무시하는 더미 이상행동을 더 포함한다. 상기 더미 이상 행동은 이상 행동 목록과 매칭하여 유해 프로세스를 탐지하는 방법에서 다시 설명하기로 한다.
다음으로, 사용자 단말에서 실행하는 프로그램을 상기 유해 프로그램 시나리오와 매칭하여 유해 프로세스를 탐지하고 차단한다.
상기 이상 행동 목록과 매칭하여 유해 프로세스를 탐지하는 방법은 다음과 같다.
첫째, 유해 프로그램이 동작할 때 운영체계와 동일한 이름으로 위장하여 동작하는 프로세스에서 행동을 분석하여 유해여부를 탐지한다.
이때, 모든 프로세스는 동작 시 상기 행동 목록 중 일부를 반드시 행하는데 임의의 시간주기 동안 행한 행동과 행동 개수를 조합하여 순서적인 행동을 갖는 시나리오를 생성하고 그 시나리오에는 포함되지 않았지만 시나리오의 행동 사이에서 발생할 수 있는 임의의 행동도 포함한다는 의미의 더미 이상 행동이 존재하며, 각각의 시나리오를 조합하여 n개의 단일 시나리오를 가지는 복합 시나리오를 만들고 그 복합 시나리오로 순차적으로 모두 매칭이 될 때 유해프로그램으로 결정한다.
이하, [표1]은 시나리오에 따른 변종과 신종 프로세스 탐지의 예를 설명한다.
표 1
Figure PCTKR2010002642-appb-T000001
상기 [표1]에 도시한 바와 같이, 유해 프로그램이 실행된 후 자신의 시나리오대로 작동하게 될 때 실제로 해당 프로세스가 유해 프로그램으로 판명되는 순간을 보여주며, 상기 “행동A, 행동B, 행동C"에 의해서 현재 시스템에서 작동되는 4개의 프로세스가 유해 프로그램으로 검출되는 상세한 부분을 보여준다.
4개의 프로세스는 변종의 관계에 있으며 전체 행동은 조금씩 다르지만, 동일한 패턴의 행동을 모두 포함하고 있으며, 변종은 기존의 것과 완전히 다르지는 않지만 약간 다른 곳을 포함하고 있다.
유해 프로그램1이 “행동A"를 하는 차단엔진은 유해 프로그램1이 “행동A"를 행하였다고 기록하고 모든 시나리오들을 검사한다. 만일 “행동A"만 발생해도 차단하는 시나리오를 드라이버가 가지고 있다면 바로 차단/경고 데이터가 발생 한다.
그렇지 않다면 이어서 “행동C”가 발생할 때까지 차단엔진은 유해 프로그램1을 계속 주목하게 된다.
상기“행동C"가 발생되는 순간 차단엔진은 매칭되는 시나리오가 존재하기 때문에 해당 유해 프로그램1을 차단하게 된다.
차단로그는 현재 차단이 발생한 유해 프로그램의 기본정보(프로세스 id, 이름)와 그 유해 프로그램을 차단한 시나리오 id, 차단수치들이 있으며, 차단수치는 해당 프로세스의 이상행동 요소의 세부적인 수치를 이야기 한다.
만약 단일 행동을 시나리오로 설정한다면 대부분의 프로세스가 차단될 수 있기 때문에 이상행동을 조합한 조합 개념을 통하여 정상 프로그램을 뺀 악성 프로그램만이 해당 시나리오에 검출 및 차단 할 수 있도록 한다.
예를 들어, 시나리오는 {[외부네트워크 접속, 1회], [실행파일생성, 1회], [자동실행등록, 1회], [프로세스 실행, 1회]}같이 조합하며, 이 시나리오는 해커가 접속하여 실행파일을 다운로드 받아서 파일을 생성하고 그것을 항상 실행될 수 있도록 자동실행을 등록함과 동시에 현재 실행될 수 있도록 가동하는 행동조합을 의미한다.
본 발명에 따른 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템은 프로세스의 외형이나 파일크기, 체크섬 등의 정보를 참조하지 않고 악성 프로그램의 행동만을 보기 때문에 신종/ 변종 악성 프로그램을 탐지 및 차단할 수 있으며, 외형이 계속 변하는 악성 프로그램에 대처할 수 있다.
이하, [표 2]는 더미 이상 행동을 설명하기 위한 예시이다.
표 2
Figure PCTKR2010002642-appb-T000002
상기 [표 2]와 같이 더미 행동이 들어 있는 시나리오가 존재할 때, 프로세스 [이상행동A], [이상행동C], [이상행동 J], [이상행동 K] 가 존재한다고 할 때, 상기 시나리오2에 가장 근접한 매칭이 발생한다.
상기 시나리오 2의 3번째의 더미 행동은 어떠한 행동이 와도 상관이 없으며, 프로세스 의 4번째 행동이 [이상행동 K]이 발생시 시나리오 2가 매칭되는 시나리오로 선택되어 프로세스를 탐지한다.
둘째, 유해 프로세스 동작시 네트워크와 프로세스 행위를 동시에 추적함으로써 그 동작 행위를 시나리오 조합으로 탐지한다.
이때, 모든 프로세스는 동작 시 자신의 고유아이디(PID)를 생성하여 동작함으로, 그 고유아이디(PID)를 통해 유해 행위를 하는 프로세스를 탐지하되 운영체제의 비동기성으로 인하여 고유아이디를 알아낼 수 없을 때 운영체제의 low-level 모듈들을 분석/추적하여 고유아이디를 알아낸다.
셋째, 체크섬(checksum) 탐지로 정상 프로세스에 기생하여 동작하는 유해 프로세스를 탐지한다.
이때, 실행 프로그램의 체크섬(checksum)을 정상상태에서 미리 구하여 놓은 것과 실시간으로 커널에서 각각 구해 비교하는 방식으로, 정상적인 프로그램에 악의적인 코드가 삽입되었거나 변경된 것을 탐지한다.
또한, 체크섬이 설정된 프로세스는 체크섬으로 예외를 검사하고 체크섬이 설정되지 않은 프로세스는 이름으로 예외 프로세스를 허용한다.
만약 프로세스 이름과 체크섬(프로세스 이름 + Checksum)이 같이 있다면 체크섬으로 예외를 허용하고 프로세스 이름만 존재하는 경우 프로세스 이름만으로 예외를 허용한다. 여기서, 상기 프로세스 이름은 풀패스(Fullpath)로 한다.
넷째, 프로세스 추적을 통해서 부모 프로세스와 생성한 자식 프로세스를 실시간으로 추적함으로써, 처음 발생하는 유해 프로세스가 제거되고 생성되는 자식 프로세스가 운영체계 프로세스 이름으로 위장하여 동작하는 프로세스를 탐지한다.
이때, 처음 생성된 프로세스가 차단 시나리오에 의해 검출되면 그 프로세스가 생성한 자식프로세스의 프로세스아이디(PID)를 추적하여 탐지한다.
다섯쩨, 후킹 검출 및 복원 기법을 사용하여 정상 프로세스에 코드삽입을 해서 동작하는 유해 프로세스를 탐지한다.
이때, 드라이버 후킹 검출과 어플리케이션 후킹 검출기법을 이용하여 인젝션 시킨 프로세스와 인젝션된 프로세스 및 모듈들의 목록을 탐지하고 복원함으로써 유해프로그램이 운영체계에 기생/삽입되어 동작하는 것을 탐지한다.
상기 이상 행동 목록과 매칭하여 유해 프로세스를 차단하는 방법은 네트워크의 경우 그 프로세스의 모든 패킷 차단, 프로세스의 경우 그 프로세스를 강제종료, 특정시간 동안 패킷 차단/프로세스 실행금지, 및 단순한 alert 중 어느 하나이다.
프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 프로그램과 상기 프로그램을 컴퓨터 판독 가능하게 기억하는 기록 매체를 갖는다.
도 2 및 도 3은 본 발명의 실시 예에 따른 프로세스의 행위 분석을 통한 유해 프로그램 실시간으로 탐지하고 차단하는 방법의 흐름을 나타낸 순서도이다.
도 2 및 도 3에 도시한 바와 같이, 프로세스 행위분석을 통한 유해 프로그램 실시간 탐지/차단 시스템은 조직 내의 사용자단말 그룹에 대한 유해 프로그램 검출 및 차단을 동시에 수행하는 시스템으로서 개별적으로 행동기반 감시를 수행하는 다수의 사용자 단말과 네트워크로 연결되어 각 사용자 단말에서 발생하는 사건 정보를 수신하여 그룹차원의 차단정책을 수행하는 보안서버를 포함하여 구성한다.
사용자 단말에는 실행 프로그램이 실행시 프로세스 체크섬(checksum)에 의하여 우선차단대상인지 비교하며 매칭시는 즉시 차단을 수행한다,
이때, 매칭이 되지 않는다면 행동감시 예외 프로세스인지 검사하여 매칭시에는 행동감시에서 예외처리한다.
상기 예외 프로세스에 속하지 않는 프로세스는 행동감시가 계속 수행되며 임의의 이상행동이 발생시 즉시 행동통계를 누적한 후 차단 시나리오와 매칭이 되는지 비교한다.
차단 시나리오와 매칭에 성공한 프로세스는 해당 시나리오의 차단조건에 따라 차단을 수행하고 alert정보를 발생시키며,
매칭에 실패하면 API레벨의 Hooking검사를 하여 해킹행위가 발생하였는지를 검사하여 성공시 차단을 수행하고 alert을 발생한다.
상기 차단 시나리오와 매칭되지 않거나, API레벨의 Hooking에 매칭되지 않는다면 해당 프로세스의 통계 정보를 Agent에 전송하고 다음 행동이 발생시까지 대기한다.
이때, 상기 Agent는 사용자 단말 내부의 속하는 것으로써, 보안서버로부터 차단용 복합 시나리오 정보를 받아 커널(Kernel) 레벨에서 작동하는 행동감시/차단을 수행하는 Device Driver에 복합 시나리오 정책을 전송하여 해당 사용자 단말기의 모든 프로세스 행동의 발생시 실시간 복합 시나리오 매칭을 수행한다.
또한, 상기 Agent에 의해 Device Driver를 시작 및 중지와 같은 통제를 수행함으로써, 상기 Agent와 Device Driver는 하나의 프로그램으로 간주한다.
프로그램의 행동 추이 정보와 상기 차단 시나리오를 실시간으로 비교하여 매칭되는 시나리오가 발견되면 해당 프로세스는 유해한 프로그램으로 간주하여 차단정책을 발생한다.
또한, 도 3에 도시한 바와 같이, 보안 서버가 Agent로부터 프로세스 행동 통계, 프로세스 네트웍 통계, 프로세스 파일접근 통계 및 프로세스 차단 alert정보를 수신하면 즉시 분석모듈로 데이터를 전달하여 프로세스 네트웍 동향 분석과 프로세스 행동동향분석을 수행한다.
상기 두 가지를 모두 분석하면 네트웍 정보만으로는 알 수 없는 유해 프로세스 여부를 행동가지 분석하여 알아 낼 수 있는 이점이 있다.
프로세스 네트웍 동향분석은 단일 프로세스가 아닌 여러 개의 사용자 단말에 대한 분석이기 때문에 DDoS(분산 서비스 거부공격)같은 다수에 의한 공격 또는 검출하기 힘든 사회 공학적 네트웍 공격까지 검출해낼 수 있다.
프로세스 행동동향분석에 의하여 분석된 정보를 근간으로 유해성을 판별하며 상세 프로세스 정보를 산출해 낸다.
상기 와 같은 방법들로 알려지지 않은 신종 또는 변종 악성 프로그램으로 분석 및 판별된 정보는 리포트(Report)자료로 나타내어지며, 해당 프로세스의 행위 내역을 기반으로 차단 시나리오가 수립되어 아직 감염되지 않은 다른 사용자 단말로 정책을 미리 전파하여 해당 프로세스 발견시 즉시 차단하기 위한 확산방지 정책등록이 수행된다.
전체적인 내용을 간략히 요약하면 다음과 같다.
Agent는 사용자 단말기에 설치되어 사용자 단말기가 실행되는 동안 항상 작동하며 실시간으로 사용자 단말기에서 작동하는 모든 프로세스의 행동을 감시 한다.
이때, 새롭게 실행되는 프로세스가 있다면 그것도 역시 감시한다.
Agent는 보안서버에 TCP/IP 네트워크로 접속하여 Agent 가 종료되기 전에는 계속 접속이 유지되며, 보안 서버는 많은 사용자 단말기에 설치되어 있는 Agent가 실시간으로 접속을 계속 유지하도록 관리한다.
이상에서 설명한 바와 같이, 본 발명의 상세한 설명에서는 본 발명의 바람직한 실시 예에 관하여 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 본 발명의 범주에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 따라서 본 발명의 권리 범위는 설명된 실시 예에 국한되어 정해져서는 안되며, 후술하는 청구범위뿐만 아니라, 이와 균등한 것들에 의해 정해져야 한다.

Claims (12)

  1. 보안 서버에서 유해 프로그램 시나리오 목록을 미리 정의하는 단계; 및
    Agent프로그램에 의한 사용자 단말에서 실행하는 프로그램을 상기 유해 프로그램 시나리오와 매칭하여 유해 프로세스를 탐지하고 차단하는 단계;로 이루어지는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법.
  2. 제1항에 있어서,
    상기 유해 프로그램 시나리오는 세션(session)발생, 다중ip에 패킷전송, 스푸핑(spoofing)발생, 패킷 송수신, 파일 오픈, 파일 생성, 아이디티 후크(IDT HOOK)탐지, 서비스 생성, 서비스 오픈, 물리 메모리 접근, 프로세스 생성, 다른 프로세스 접근, 운영체계 주요 함수 테이블 침범, 자신의 행동을 감추는 행위, 프로그램 자동 시작 등록, 키보드 해킹 시도, 레지스트리 은닉, 타 프로세스 접근, 타 프로세스 주소 공간을 침범하는 행위, 이름 없는 프로세스, 부모 없는 프로세스, 실행파일 생성, 실행파일 쓰기 모드, 디바이스 드라이버 로드, 타 프로세스를 강제로 종료하는 행위와 같은 이상 해동 목록을 포함하는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법.
  3. 제2항에 있어서,
    상기 유해 프로그램 시나리오는 하나 이상의 이상 행동 목록을 조합하여 단일 시나리오를 형성하고, 하나 이상의 단일 시나리오를 조합하여 복합 시나리오를 형성하는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법.
  4. 제2항에 있어서,
    상기 이상 행동 목록은 어떠한 행동도 무시하는 더미 이상행동을 더 포함하는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법.
  5. 제1항에 있어서,
    상기 사용자 단말기는 Agent가 종료되기 전까지 보안서버와 네트워크로 접속되어 연결하는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법.
  6. 제1항에 있어서,
    상기 유해 프로세스를 탐지하는 방법은
    유해 프로그램이 동작할 때 운영체계와 동일한 이름으로 동작하는 프로세스에서 유해 프로세스를 탐지, 유해 프로세스 동작 시 네트워크와 프로세스 행위를 동시에 추적함으로써 그 동작 행위를 시나리오 조합으로 탐지, 체크섬(checksum) 탐지로 정상 프로세스에 기생하여 동작하는 유해 프로세스를 탐지, 프로세스 추적을 통해서 부모 프로세스와 생성한 자식 프로세스를 실시간으로 추적함으로써, 처음 발생하는 유해 프로세스가 제거되고 생성되는 자식 프로세스가 운영체계 타 프로세스의 이름으로 동작하는 프로세스를 탐지, 및 후킹 검출 및 복원 기법을 사용하여 정상 프로세스에 코드 삽입을 해서 동작하는 유해 프로세스를 탐지하는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법.
  7. 제1항에 있어서,
    상기 유해 프로세스를 차단하는 방법은
    네트웍 패킷의 경우 그 프로세스의 모든 패킷 차단, 프로세스의 경우 그 프로세스를 강제종료, 특정시간 동안 프로세스 패킷 차단, 및 단순한 alert 중 어느 하나로 이루어지는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법.
  8. 제1항에 있어서,
    상기 보안 서버는 비정상적인 행위에 대한 탐지 및 차단 시나리오 정책을 설정하여 유형별로 분석하고 사용자 단말에 배포하는 단계를 더 포함하고,
    상기 사용자 단말은 상기 보안 서버로부터 받은 비정상적인 행위에 대한 탐지 및 차단 시나리오 정책을 커널단에 적용하는 단계를 더 포함하는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 방법.
  9. 다수의 사용자 단말과, 상기 사용자 단말과 각각 네트워크로 연결되는 보안서버로 이루어진 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템에 있어서,
    상기 사용자 단말은 프로세스의 행동를 감시하는 행동감시모듈과, 이상 행동이 감지된 프로세스의 행위 추적과 그 프로세스의 피아이디(PID)를 검출하는 프로세스 추적 및 피아이디(PID)검출모듈과, 주어진 시간에서 프로세스가 행한 행동 목록을 조합하여 복합 시나리오가 일치할 경우 차단하는 시나리오차단모듈과, 실행프로그램의 체크섬이 일치 할 경우 차단하는 체크섬차단모듈과, 유해 프로그램이 자신을 숨기기 위하여 다른 프로세스에 코드를 삽입하여 동작하는 경우 이를 감지하고 복원하는 후킹감지 및 복원모듈과, 및 행동감시 예외프로세스인지 검사하여 행동감시를 예외로 처리하는 예외프로세스 DB로 구성하고,
    상기 보안 서버는 상기 사용자 단말에서 수신된 통계정보로 분석하는 분석모듈, 다수의 사용자 단말에서 발생하는 이상 행위 및 유해 프로그램 차단 정보를 수집하여 보안 조치를 실시하는 보안조치모듈, 및 차단 조건 정보, 각 사용자 단말의 이상 행동 발생 정보 및 유해 프로그램 정보를 저장하는 총괄DB로 구성하는 것을 특징으로 하는 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템.
  10. 제9항에 있어서,
    상기 보안 서버는 사용자 단말로 전달되어 행동기반 감시 예외에 사용하는 예외 프로세스 DB, 및
    상기 사용자 단말로 전달되어 프로세스 행동기반 매칭 및 차단에 사용하는 차단 시나리오 DB를 더 포함하는 것을 특징으로 하는 프로세스의 행동 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템.
  11. 제1항 내지 제8항 중 어느 한 항에 기재된 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 것을 특징으로 하는 프로그램.
  12. 제11항에 기재된 프로그램을 컴퓨터 판독 가능하게 기억하는 것을 특징으로 하는 기록 매체.
PCT/KR2010/002642 2010-02-23 2010-04-27 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체 WO2011105659A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/580,958 US20120324575A1 (en) 2010-02-23 2010-04-27 System, Method, Program, and Recording Medium for Detecting and Blocking Unwanted Programs in Real Time Based on Process Behavior Analysis and Recording Medium for Storing Program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020100016330A KR101057432B1 (ko) 2010-02-23 2010-02-23 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체
KR10-2010-0016330 2010-02-23

Publications (1)

Publication Number Publication Date
WO2011105659A1 true WO2011105659A1 (ko) 2011-09-01

Family

ID=44507045

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2010/002642 WO2011105659A1 (ko) 2010-02-23 2010-04-27 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체

Country Status (3)

Country Link
US (1) US20120324575A1 (ko)
KR (1) KR101057432B1 (ko)
WO (1) WO2011105659A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015043491A1 (zh) * 2013-09-30 2015-04-02 腾讯科技(深圳)有限公司 一种用于对互联网账号的登录进行安全验证的方法及系统
WO2016018289A1 (en) * 2014-07-30 2016-02-04 Hewlett-Packard Development Company, L.P. Security risk scoring of an application
WO2016190485A1 (ko) * 2015-05-28 2016-12-01 삼성에스디에스 주식회사 데이터 무단 엑세스 차단 방법 및 그 기능이 구비된 컴퓨팅 장치

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003058879A1 (en) 2002-01-08 2003-07-17 Seven Networks, Inc. Secure transport for mobile communication network
US8438633B1 (en) 2005-04-21 2013-05-07 Seven Networks, Inc. Flexible real-time inbox access
WO2006136660A1 (en) 2005-06-21 2006-12-28 Seven Networks International Oy Maintaining an ip connection in a mobile network
US8805425B2 (en) 2007-06-01 2014-08-12 Seven Networks, Inc. Integrated messaging
US9002828B2 (en) 2007-12-13 2015-04-07 Seven Networks, Inc. Predictive content delivery
US8862657B2 (en) 2008-01-25 2014-10-14 Seven Networks, Inc. Policy based content service
US20090193338A1 (en) 2008-01-28 2009-07-30 Trevor Fiatal Reducing network and battery consumption during content delivery and playback
US9098333B1 (en) * 2010-05-07 2015-08-04 Ziften Technologies, Inc. Monitoring computer process resource usage
US9043433B2 (en) 2010-07-26 2015-05-26 Seven Networks, Inc. Mobile network traffic coordination across multiple applications
US8838783B2 (en) 2010-07-26 2014-09-16 Seven Networks, Inc. Distributed caching for resource and mobile network traffic management
US8843153B2 (en) 2010-11-01 2014-09-23 Seven Networks, Inc. Mobile traffic categorization and policy for network use optimization while preserving user experience
WO2012060995A2 (en) 2010-11-01 2012-05-10 Michael Luna Distributed caching in a wireless network of content delivered for a mobile application over a long-held request
EP2737742A4 (en) * 2011-07-27 2015-01-28 Seven Networks Inc AUTOMATIC PRODUCTION AND DISTRIBUTION OF GUIDELINES INFORMATION ON MOBILE MOBILE TRANSPORT IN A WIRELESS NETWORK
US9538577B2 (en) * 2011-09-12 2017-01-03 Ca, Inc. Upper layer stateful network journaling
WO2013086214A1 (en) 2011-12-06 2013-06-13 Seven Networks, Inc. A system of redundantly clustered machines to provide failover mechanisms for mobile traffic management and network resource conservation
GB2498064A (en) 2011-12-07 2013-07-03 Seven Networks Inc Distributed content caching mechanism using a network operator proxy
US8812695B2 (en) 2012-04-09 2014-08-19 Seven Networks, Inc. Method and system for management of a virtual network connection without heartbeat messages
WO2013184108A1 (en) * 2012-06-06 2013-12-12 Empire Technology Development Llc Software protection mechanism
KR20140044970A (ko) * 2012-09-13 2014-04-16 한국전자통신연구원 접근 제어 목록을 이용한 공격 차단 제어 방법 및 그 장치
KR101383664B1 (ko) 2012-09-18 2014-04-09 이선희 단위 파일별 행위 분석 시스템
US8874761B2 (en) 2013-01-25 2014-10-28 Seven Networks, Inc. Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols
KR101421630B1 (ko) 2013-01-28 2014-07-22 주식회사 잉카인터넷 코드 인젝션된 악성코드 탐지 시스템 및 방법
US8750123B1 (en) 2013-03-11 2014-06-10 Seven Networks, Inc. Mobile device equipped with mobile network congestion recognition to make intelligent decisions regarding connecting to an operator network
US9330259B2 (en) * 2013-03-19 2016-05-03 Trusteer, Ltd. Malware discovery method and system
KR101446280B1 (ko) 2013-03-26 2014-10-01 건국대학교 산학협력단 인터미디어트 드라이버를 이용한 변종 악성코드 탐지 및 차단 시스템 및 그 방법
US9065765B2 (en) 2013-07-22 2015-06-23 Seven Networks, Inc. Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network
KR101494329B1 (ko) 2013-09-02 2015-02-23 주식회사 베일리테크 악성 프로세스 검출을 위한 시스템 및 방법
US9323931B2 (en) * 2013-10-04 2016-04-26 Bitdefender IPR Management Ltd. Complex scoring for malware detection
KR101519845B1 (ko) * 2013-11-14 2015-05-13 (주)잉카엔트웍스 안티디버깅 방법
CN103955645B (zh) * 2014-04-28 2017-03-08 百度在线网络技术(北京)有限公司 恶意进程行为的检测方法、装置及系统
US20150379268A1 (en) * 2014-06-27 2015-12-31 Prabhat Singh System and method for the tracing and detection of malware
WO2016009356A1 (en) * 2014-07-14 2016-01-21 Iota Security Inc. System, method and apparatus for detecting vulnerabilities in electronic devices
JP6025125B2 (ja) * 2014-08-07 2016-11-16 パナソニックIpマネジメント株式会社 決済処理装置
JP6282217B2 (ja) * 2014-11-25 2018-02-21 株式会社日立システムズ 不正プログラム対策システムおよび不正プログラム対策方法
KR101568872B1 (ko) * 2015-05-11 2015-11-12 주식회사 블랙포트시큐리티 프로그램 이상흐름 검출 장치 및 방법
US9852295B2 (en) 2015-07-14 2017-12-26 Bitdefender IPR Management Ltd. Computer security systems and methods using asynchronous introspection exceptions
US10089465B2 (en) 2015-07-24 2018-10-02 Bitdefender IPR Management Ltd. Systems and methods for tracking malicious behavior across multiple software entities
US11068580B2 (en) 2015-09-07 2021-07-20 Karamba Security Ltd. Context-based secure controller operation and malware prevention
US10152596B2 (en) * 2016-01-19 2018-12-11 International Business Machines Corporation Detecting anomalous events through runtime verification of software execution using a behavioral model
US10673878B2 (en) * 2016-05-19 2020-06-02 International Business Machines Corporation Computer security apparatus
US10140448B2 (en) 2016-07-01 2018-11-27 Bitdefender IPR Management Ltd. Systems and methods of asynchronous analysis of event notifications for computer security applications
CN106411937B (zh) * 2016-11-15 2017-12-29 中国人民解放军信息工程大学 基于拟态防御架构的零日攻击检测、分析和响应系统及其方法
CN108268365B (zh) * 2016-12-30 2020-12-18 腾讯科技(深圳)有限公司 异常任务注入方法、装置和系统
JP2018109910A (ja) * 2017-01-05 2018-07-12 富士通株式会社 類似度判定プログラム、類似度判定方法および情報処理装置
JP6866645B2 (ja) 2017-01-05 2021-04-28 富士通株式会社 類似度判定プログラム、類似度判定方法および情報処理装置
US11070573B1 (en) * 2018-11-30 2021-07-20 Capsule8, Inc. Process tree and tags
CN109729103A (zh) * 2019-03-13 2019-05-07 南昌百瑞杰信息技术有限公司 一种专用网络智能分析安全控制装置及方法
KR102080479B1 (ko) * 2019-06-20 2020-02-24 주식회사 쿼드마이너 시나리오 중심 실시간 공격 감지 시스템 및 이를 이용한 시나리오 중심 실시간 공격 감지 방법
WO2020256210A1 (ko) * 2019-06-20 2020-12-24 주식회사 쿼드마이너 네트워크 포렌식 시스템 및 이를 이용한 네트워크 포렌식 방법
CN110598410B (zh) * 2019-09-16 2021-11-16 腾讯科技(深圳)有限公司 一种恶意进程的确定方法、装置、电子设备及存储介质
CN110941537A (zh) * 2019-12-02 2020-03-31 成都安恒信息技术有限公司 一种基于行为状态的进程检测方法及检测装置
US11507664B2 (en) * 2019-12-03 2022-11-22 Sonicwall Inc. Early filtering of clean file using dynamic analysis
KR102393913B1 (ko) * 2020-04-27 2022-05-03 (주)세이퍼존 이상행위 탐지 장치, 방법 및 이를 포함하는 시스템
KR20210145935A (ko) * 2020-05-26 2021-12-03 라인플러스 주식회사 Api 정보 군집화를 통한 후킹 판단 방법 및 그 시스템
CN111625813B (zh) * 2020-05-27 2023-02-28 重庆夏软科技有限公司 一种通过修改进程保护程序的方法
CN111917764A (zh) * 2020-07-28 2020-11-10 成都卫士通信息产业股份有限公司 一种业务运行方法、装置、设备及存储介质
CN113556338B (zh) * 2021-07-20 2022-08-30 福建银数信息技术有限公司 一种计算机网络安全异常操作拦截方法
CN114629696A (zh) * 2022-02-28 2022-06-14 天翼安全科技有限公司 一种安全检测方法、装置、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07146788A (ja) * 1993-11-22 1995-06-06 Fujitsu Ltd ウイルス診断機構の作成システムと作成方法並びにウイルス診断機構と診断方法
KR20000065547A (ko) * 1999-04-07 2000-11-15 이종성 분산 침입 탐지 에이전트를 기반으로 한 지능형 침입탐지시스템
KR20050095147A (ko) * 2004-03-25 2005-09-29 주식회사 케이티 침해유형별 시나리오를 고려한 침입방어장치 및 그 방법
KR100684602B1 (ko) * 2006-05-16 2007-02-22 어울림정보기술주식회사 세션 상태전이를 이용한 시나리오 기반 침입대응 시스템 및그 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2400197B (en) * 2003-04-03 2006-04-12 Messagelabs Ltd System for and method of detecting malware in macros and executable scripts
US7617534B1 (en) * 2005-08-26 2009-11-10 Symantec Corporation Detection of SYSENTER/SYSCALL hijacking
US8201244B2 (en) * 2006-09-19 2012-06-12 Microsoft Corporation Automated malware signature generation
US20100031353A1 (en) * 2008-02-04 2010-02-04 Microsoft Corporation Malware Detection Using Code Analysis and Behavior Monitoring
US8370931B1 (en) * 2008-09-17 2013-02-05 Trend Micro Incorporated Multi-behavior policy matching for malware detection
US8079085B1 (en) * 2008-10-20 2011-12-13 Trend Micro Incorporated Reducing false positives during behavior monitoring
US8776218B2 (en) * 2009-07-21 2014-07-08 Sophos Limited Behavioral-based host intrusion prevention system
US8566943B2 (en) * 2009-10-01 2013-10-22 Kaspersky Lab, Zao Asynchronous processing of events for malware detection
US8443449B1 (en) * 2009-11-09 2013-05-14 Trend Micro, Inc. Silent detection of malware and feedback over a network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07146788A (ja) * 1993-11-22 1995-06-06 Fujitsu Ltd ウイルス診断機構の作成システムと作成方法並びにウイルス診断機構と診断方法
KR20000065547A (ko) * 1999-04-07 2000-11-15 이종성 분산 침입 탐지 에이전트를 기반으로 한 지능형 침입탐지시스템
KR20050095147A (ko) * 2004-03-25 2005-09-29 주식회사 케이티 침해유형별 시나리오를 고려한 침입방어장치 및 그 방법
KR100684602B1 (ko) * 2006-05-16 2007-02-22 어울림정보기술주식회사 세션 상태전이를 이용한 시나리오 기반 침입대응 시스템 및그 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PARK, JUN HONG ET AL., JOURNAL OF KOREAN INSTITUTE OF INFORMATION TECHNOLOGY, vol. 6, no. 6, 31 December 2008 (2008-12-31), pages 125 - 128 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015043491A1 (zh) * 2013-09-30 2015-04-02 腾讯科技(深圳)有限公司 一种用于对互联网账号的登录进行安全验证的方法及系统
WO2016018289A1 (en) * 2014-07-30 2016-02-04 Hewlett-Packard Development Company, L.P. Security risk scoring of an application
US10318740B2 (en) 2014-07-30 2019-06-11 Entit Software Llc Security risk scoring of an application
WO2016190485A1 (ko) * 2015-05-28 2016-12-01 삼성에스디에스 주식회사 데이터 무단 엑세스 차단 방법 및 그 기능이 구비된 컴퓨팅 장치
US10063558B2 (en) 2015-05-28 2018-08-28 Samsung Sds Co., Ltd. Method for blocking unauthorized data access and computing device with feature of blocking unauthorized data access

Also Published As

Publication number Publication date
US20120324575A1 (en) 2012-12-20
KR101057432B1 (ko) 2011-08-22

Similar Documents

Publication Publication Date Title
WO2011105659A1 (ko) 프로세스의 행위 분석을 통한 유해 프로그램을 실시간으로 탐지하고 차단하는 시스템, 방법, 프로그램 및 기록매체
US8656493B2 (en) Decoy network technology with automatic signature generation for intrusion detection and intrusion prevention systems
US7197762B2 (en) Method, computer readable medium, and node for a three-layered intrusion prevention system for detecting network exploits
JP5351883B2 (ja) コンピュータネットワークへの不正侵入を解析するシステムおよび方法
US20060026683A1 (en) Intrusion protection system and method
US20030084319A1 (en) Node, method and computer readable medium for inserting an intrusion prevention system into a network stack
Chen et al. Worm epidemics in high-speed networks
JP2005251189A (ja) ネットワークに接続されたコンピュータシステムを攻撃から保護するシステムおよび方法
WO2017034072A1 (ko) 네트워크 보안 시스템 및 보안 방법
WO2017171188A1 (ko) 웹 애플리케이션 서버 또는 웹 서버로부터 수집된 트랜잭션 정보를 이용한 보안장치
WO2021112494A1 (ko) 엔드포인트에 기반한 관리형 탐지 및 대응 시스템과 방법
US20030084344A1 (en) Method and computer readable medium for suppressing execution of signature file directives during a network exploit
CN112398829A (zh) 一种电力系统的网络攻击模拟方法及系统
KR20110131627A (ko) 악성 코드 진단 및 복구 장치, 그리고 이를 위한 단말 장치
US20050086512A1 (en) Worm blocking system and method using hardware-based pattern matching
Salah et al. Surviving cyber warfare with a hybrid multiagent-base intrusion prevention system
Ye et al. Research on network security protection strategy
Yoshioka et al. Malware sandbox analysis for secure observation of vulnerability exploitation
KR101518233B1 (ko) 기업 내부 전산환경의 위협탐지를 위한 보안 장치
Anitha Network Security using Linux Intrusion Detection System
Venkatraman Autonomic context-dependent architecture for malware detection
Liang et al. Automated, sub-second attack signature generation: A basis for building self-protecting servers
Shouman et al. Surviving cyber warfare with a hybrid multiagent-based intrusion prevention system
US11356471B2 (en) System and method for defending a network against cyber-threats
Chen et al. Extracting Ambiguous Sessions from Real Traffic with Intrusion Prevention Systems.

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: 10846686

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 13580958

Country of ref document: US

122 Ep: pct application non-entry in european phase

Ref document number: 10846686

Country of ref document: EP

Kind code of ref document: A1