KR101421631B1 - 멀웨어 치료스크립트 생성 시스템 및 방법 - Google Patents

멀웨어 치료스크립트 생성 시스템 및 방법 Download PDF

Info

Publication number
KR101421631B1
KR101421631B1 KR1020130028964A KR20130028964A KR101421631B1 KR 101421631 B1 KR101421631 B1 KR 101421631B1 KR 1020130028964 A KR1020130028964 A KR 1020130028964A KR 20130028964 A KR20130028964 A KR 20130028964A KR 101421631 B1 KR101421631 B1 KR 101421631B1
Authority
KR
South Korea
Prior art keywords
treatment
malware
script
modules
api
Prior art date
Application number
KR1020130028964A
Other languages
English (en)
Inventor
김정걸
Original Assignee
주식회사 잉카인터넷
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 잉카인터넷 filed Critical 주식회사 잉카인터넷
Priority to KR1020130028964A priority Critical patent/KR101421631B1/ko
Application granted granted Critical
Publication of KR101421631B1 publication Critical patent/KR101421631B1/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/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Stored Programmes (AREA)

Abstract

이 발명은 신규로 수집된 멀웨어를 가상머신에서 실행하고 해당 신규 멀웨어가 수행하는 악의적인 활동들을 분석하여, 그 악의적인 활동을 복구하기 위한 치료스크립트를 생성하는 시스템 및 방법에 관한 것이다.
이 발명에 따른 멀웨어 치료스크립트 생성 시스템은, 멀웨어를 실행하는 가상머신과, 상기 가상머신에서 실행되는 상기 멀웨어가 호출하는 악의적 행위 관련 API들을 수집하는 API수집기와, 상기 수집된 악의적 행위 관련 API들 중 치료대상 API를 추출하는 치료대상추출기와, 상기 치료대상추출기에서 추출된 치료대상 API를 치료하는 적어도 둘 이상의 치료모듈들을 포함하는 치료모듈블록과, 상기 둘 이상의 치료모듈들 중 상기 추출된 치료대상 API를 치료할 제1치료모듈을 선택하여 제1치료스크립트를 생성하는 치료모듈선택기와, 상기 치료모듈선택기에서 생성된 제1치료스크립트가 상기 멀웨어를 치료하는지를 검증하는 검증부를 포함한다.

Description

멀웨어 치료스크립트 생성 시스템 및 방법 {Malware Treatment Script Generator}
이 발명은 멀웨어 치료스크립트를 생성하는 시스템 및 방법에 관한 것으로서, 보다 상세하게는 신규로 수집된 멀웨어를 가상머신에서 실행하고 해당 신규 멀웨어가 수행하는 악의적인 활동(API 기반)들을 분석하여, 그 악의적인 활동을 복구하기 위한 치료스크립트를 생성하는 시스템 및 방법에 관한 것이다.
광범위한 인터넷의 보급이 이루어지면서, 통신망을 통한 악성 소프트웨어(Malicious Software) 또는 악성 코드(Malicious Code)의 전염 경로도 다양해지고 있으며, 이로 인한 피해 정도가 매년 증가하고 있다. 악성 코드란 사용자의 의사와 이익에 반하여 시스템을 파괴하거나 정보를 유출하는 등 악의적 활동을 수행하도록 의도적으로 제작된 소프트웨어를 말한다.
이러한 악성 코드의 종류로는 바이러스(virus), 웜(worm), 트로이얀(trojan), 백도어(backdoor), 논리폭탄(Logic Bomb), 트랩도어(Trap Door) 등의 해킹툴 및 악의적인 스파이웨어(spyware), 애드웨어(ad-ware) 등이 있다. 이들은 자기복제나 자동번식 기능을 통하여, 사용자 ID와 암호 등의 개인정보 유출, 대상 시스템 통제, 파일 삭제변경/시스템 파괴, 응용프로그램/시스템의 서비스 거부, 핵심 자료 유출, 타 해킹 프로그램 설치 등의 문제를 일으키고 있으며, 그 피해도 매우 다양하고 심각하다.
이러한, 악성 코드를 차단하기 위해 클라이언트 시스템에는 안티 바이러스 프로그램이 설치된다. 전통적인 안티 바이러스 프로그램은, 서버로부터 악성 코드 파일에 관련된 시그너쳐 패턴과 그 치료법을 다운로드받아 데이터베이스에 저장하고, 검사 대상 파일의 코드 패턴과 악성 시그너쳐 패턴을 비교하여 검사 대상 파일이 악성 코드인지 여부를 검출하며, 치료 가능한 악성 코드이면 데이터베이스에 저장된 치료법으로 치료한다.
통상적으로 악성 코드에 따른 치료법은 안티 바이러스 보안 회사의 개발자들에 의해 제작되어 클라이언트 시스템에 제공된다.
오늘날 신종 또는 변종의 바이러스가 끊임없이 개발되어 배포됨에 따라 신종/변종의 바이러스를 검출하기 위한 악성 시그너쳐 패턴이 점차 증가하고 있으며, 이로 인해 악성 시그너쳐 패턴 데이터베이스의 크기가 점차 커지고 있다. 이 때문에, 클라이언트 사용자가 주기적으로 악성 시그너쳐 패턴 데이터베이스를 업데이트하지 않으면 신변종 바이러스를 검진하거나 치료할 수 없는 문제점이 있다. 또한, 클라이언트 시스템에 악성 시그너쳐 패턴을 업데이트하는데 많은 시간이 소요되고, 클라이언트 시스템에서는 이 악성 시그너쳐 패턴 데이터베이스를 저장하기 위해 많은 메모리 공간이 소모되며, 검사 대상 파일의 코드 패턴과 동일한 악성 시그너쳐 패턴을 검진하는 데에도 많은 시간이 소요되는 문제점이 있다.
일부 악성코드는 특정 프로그램을 제한적으로 감염시키는데, 종래의 안티 바이러스 프로그램은 동일한 버전의 악성 시그너쳐 패턴이 모든 클라이언트 컴퓨터에 동일하게 다운로드되어 설치된다. 이 때문에 클라이언트 컴퓨터에 설치되지 않은 프로그램을 감염시키는 악성코드를 검출하기 위한 시그너쳐 패턴과 그 치료법까지 데이터베이스에 저장되기 때문에 메모리 공간이 불필요하게 소모되고, 불필요한 시그너쳐 패턴 때문에 검사 대상 파일을 검진하는데에도 많은 시간이 소요되는 문제점이 있다.
이러한 문제점을 해결하기 위한 방안으로서, 이 발명의 출원인은 대한민국 특허출원 제2013-0015291호, "스크립트를 이용한 멀웨어 치료 시스템 및 방법"을 출원한 바 있다. 이 선행 출원에서는 서버-클라이언트 구조를 기반으로 클라이언트를 감염시킨 멀웨어를 검진하고 치료스크립트를 이용하여 멀웨어에 감염된 클라이언트를 치료하는 기술이 개시된다.
이 발명의 목적은, 대한민국 특허출원 제2013-0015291호와 연계된 기술로서 클라이언트를 감염시키는 멀웨어를 치료하기 위한 멀웨어 치료스크립트를 생성하는 시스템 및 방법을 제공하기 위한 것이다.
상술한 목적을 달성하기 위한 이 발명에 따른 멀웨어 치료스크립트 생성 시스템은, 멀웨어를 실행하는 가상머신과, 상기 가상머신에서 실행되는 상기 멀웨어가 호출하는 악의적 행위 관련 API들을 수집하는 API수집기와, 상기 수집된 악의적 행위 관련 API들 중 치료대상 API를 추출하는 치료대상추출기와, 상기 치료대상추출기에서 추출된 치료대상 API를 치료하는 적어도 둘 이상의 치료모듈들을 포함하는 치료모듈블록과, 상기 둘 이상의 치료모듈들 중 상기 추출된 치료대상 API를 치료할 제1치료모듈을 선택하여 제1치료스크립트를 생성하는 치료모듈선택기와, 상기 치료모듈선택기에서 생성된 제1치료스크립트가 상기 멀웨어를 치료하는지를 검증하는 검증부를 포함한 것을 특징으로 한다.
이 발명에 따른 멀웨어 치료스크립트 생성 방법은, 멀웨어를 실행하는 가상머신과, 악의적 행위 관련 API를 치료하는 적어도 둘 이상의 치료모듈들을 포함하는 멀웨어 치료스크립트 생성 시스템에서의 멀웨어 치료스크립트 생성 방법에 있어서, 상기 멀웨어 치료스크립트 생성 시스템이 상기 가상머신에서 실행되는 상기 멀웨어가 호출하는 상기 악의적 행위 관련 API들을 수집하는 제1단계와, 상기 멀웨어 치료스크립트 생성 시스템이 상기 수집된 악의적 행위 관련 API들 중 치료대상 API를 추출하는 제2단계와, 상기 멀웨어 치료스크립트 생성 시스템이 상기 둘 이상의 치료모듈들 중 제1치료모듈을 선택하여 제1치료스크립트를 생성하는 제3단계와, 상기 멀웨어 치료스크립트 생성 시스템이 상기 제1치료스크립트가 상기 멀웨어를 치료하는지를 검증하는 제4단계를 포함한 것을 특징으로 한다.
이상과 같이 이 발명에 따르면, 신규 멀웨어를 가상머신에서 실행하여 해당 신규 멀웨어가 수행하는 악의적인 활동들을 수집하고 그 악의적인 활동을 복구하기 위한 치료스크립트를 자동으로 생성할 수 있는 잇점이 있다.
도 1은 이 발명에 따른 멀웨어 치료스크립트 생성 시스템을 도시한 구성 블록도이다.
도 2는 이 발명에 따른 치료모듈블록의 내부 구성 블록도이다.
도 3은 이 발명에 따른 멀웨어 치료스크립트 생성 방법을 도시한 동작 흐름도이다.
이하, 첨부된 도면을 참조하여 이 발명에 따른 멀웨어 치료스크립트 생성 시스템 및 방법에 대해 상세하게 설명한다.
도 1은 이 발명에 따른 멀웨어 치료스크립트 생성 시스템을 도시한 구성 블록도이다.
이 발명의 멀웨어 치료스크립트 생성 시스템은 신규로 수집되는 멀웨어의 치료스크립트를 생성한다. 이렇게 생성된 치료스크립트는 서버 시스템에 저장되어 있다가 클라이언트 컴퓨터에 제공되어, 해당 멀웨어에 감염된 클라이언트 컴퓨터를 치료하는데 사용된다.
이 발명의 멀웨어 치료스크립트 생성 시스템은, 멀웨어를 실행하는 가상머신(11)과, 상기 가상머신(11)에서 실행되는 상기 멀웨어가 호출하는 악의적 행위 관련 API들을 수집하는 API수집기(12)와, 상기 수집된 악의적 행위 관련 API들 중 치료대상 API를 추출하는 치료대상추출기(13)와, 상기 치료대상추출기(13)에서 추출된 치료대상 API를 치료하는 적어도 둘 이상의 치료모듈들을 포함하는 치료모듈블록(14)과, 상기 둘 이상의 치료모듈들 중 상기 추출된 치료대상 API를 치료할 제1치료모듈을 선택하여 제1치료스크립트를 생성하는 치료모듈선택기(15)와, 상기 치료모듈선택기(15)에서 생성된 제1치료스크립트가 상기 멀웨어를 치료하는지를 검증하는 검증부(16)를 포함한다.
검증부(16)의 검증결과 상기 치료모듈선택기(15)에서 선택된 제1치료모듈이 상기 멀웨어를 치료하지 못한 경우, 상기 치료모듈선택기(15)는 상기 적어도 둘 이상의 치료모듈들에서 상기 제1치료모듈을 제외한 치료모듈들 중 제2치료모듈을 선택하여 제2치료스크립트를 생성하여 상기 검증부(16)에게 제공하고, 상기 검증부(16)는 상기 제2치료스크립트가 상기 멀웨어를 치료하는지를 검증한다.
상기 API수집기(12)는 상기 멀웨어가 호출하는 악의적 행위 관련 API들을 수집하는데, 여기에는 파일의 추가, 변경 또는 삭제에 관련된 API와, 프로세스의 추가, 변경 또는 삭제에 관련된 API와, 시스템 서비스의 추가, 변경 또는 삭제에 관련된 API와, 레지스트리의 추가, 변경 또는 삭제에 관련된 API가 포함된다. API수집기(12)는 악의적 행위 관련 API들만을 선별적으로 후킹하여 수집할 수도 있고, 가상머신(11)에서 실행되는 멀웨어가 호출하는 모든 API들을 후킹하여 수집한 후 악의적 행위 관련 API들만을 필터링(추출)할 수도 있다.
치료대상추출기(13)는 API수집기(12)에서 수집된 악의적 행위 관련 API들 중 중복제거를 하여 치료대상 API를 추출한다. 중복제거는 동일한 파일 또는 프로세스 또는 레지스트리 또는 시스템 서비스를 대상으로 동일한 악의적 행위 관련 API가 여러 번 호출되는 경우 유용하다. 즉, 동일한 대상으로 동일한 악의적 행위 관련 API가 여러 번 호출되더라도 악의적 행위는 오직 한 번밖에 실행되지 않는다. 예컨대 멀웨어에 의해 임의의 악성 파일을 생성하는 API가 여러 번 호출되는 경우, 첫 번째 호출에 의해 악성 파일이 생성되지만 그 후 동일 API가 호출되더라도 동일 경로 동일 이름의 악성 파일은 생성되지 않는다. 따라서, 치료대상추출기(13)는 악의적 행위 관련 API들을 각 API별로 분류하고, 분류된 동일 API에 대해 대상(오브젝트)의 경로 정보(디렉토리와 이름)가 동일한 API들을 하나만 남기고 나머지를 삭제함으로써 중복제거를 수행한다.
치료모듈블록(14)은 도 2에 도시된 바와 같이 치료대상 API의 악의적 행위별로 다수의 치료모듈들로 이루어진다. 즉, 치료대상 API는, 파일을 대상으로 악의적 행위(파일의 추가, 변경 또는 삭제)를 수행하는 API와, 프로세스를 대상으로 악의적 행위(프로세스의 추가, 변경 또는 삭제)를 수행하는 API와, 레지스트리를 대상으로 악의적 행위(레지스트리의 추가, 변경 또는 삭제)를 수행하는 API와, 시스템 서비스를 대상으로 악의적 행위(서비스의 추가, 변경 또는 삭제)를 수행하는 API가 포함된다. 이 발명의 치료모듈블록(14)은 파일을 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 파일 관련 치료모듈들(21)과, 프로세스를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 프로세스 관련 치료모듈들(22)과, 레지스트리를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 레지스트리 관련 치료모듈들(23)과, 시스템 서비스를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 서비스 관련 치료모듈들(24)을 포함한다.
각 치료모듈들(21, 22, 23, 24)에는 각각 파일, 프로세스, 레지스트리, 시스템 서비스를 대상으로 악의적 행위를 수행하는 API들의 다양한 치료방법들이 포함된다. 이 다양한 치료방법들은 각각 치료강도가 다른데, 치료강도가 높으면 악의적 행위 API를 치료할 가능성이 높은 장점이 있으나 시스템 부하가 커지고 치료시간도 길어지는 단점이 있고, 치료강도가 낮으면 해당 악의적 행위 API를 치료할 가능성이 낮은 반면 시스템 부하가 작고 치료시간이 짧다. 치료모듈선택기가 제1치료모듈과 제2치료모듈을 순차적으로 선택할 경우, 제1치료모듈의 치료강도보다 높은 치료강도를 가지는 제2치료모듈를 선택한다. 치료스크립트는 치료모듈 식별자와 치료대상 API의 대상(오브젝트)의 경로 정보(디렉토리 및 이름)가 포함된다. 즉, 치료대상 API의 대상의 경로가 'A'일 경우, 상기 치료대상 API를 치료하기 위한 치료스크립트는 치료모듈 식별자와 'A'를 포함하여 이루어진다.
파일 관련 치료대상 API를 치료하는 파일 관련 치료모듈들(21)을 치료강도순으로 나열하면, 멀웨어에 의해 생성된 파일을 삭제하는 파일삭제치료모듈, EPO(Entry Point)를 정상적으로 복구하는 EPO복구치료모듈, 파일을 정상적인 위치로 이동하는 파일이동치료모듈, 파일의 일부분을 삭제하는 파일부분삭제치료모듈, 파일의 일부분을 수정하는 파일부분수정치료모듈, 재부팅 후 삭제하는 재부팅후삭제치료모듈, 드라이버를 이용하여 재부팅 후 삭제하는 드라이버이용재부팅후삭제치료모듈이 포함된다. 이 발명에서는 파일 관련 치료대상 API가 추출되면, 파일 관련 치료모듈들 중 치료강도가 가장 낮은 치료모듈을 선택하여 해당 파일 관련 치료대상 API를 치료해 보고, 치료가 되지 않으면 그 다음으로 치료강도가 낮은 치료모듈을 선택하여 해당 파일 관련 치료대상 API를 치료해 본다. 이렇게 파일 관련 치료대상 API에 대해 치료강도가 가장 낮은 치료모듈(파일삭제치료모듈)부터 치료강도가 가장 높은 치료모듈(드라이버이용재부팅후삭제치료모듈)을 순차적으로 선택하면서 선택된 치료모듈이 해당 파일 관련 치료대상 API를 치료할 수 있는지 검증함으로써, 해당 파일 관련 치료대상 API를 치료할 수 있으면서 치료강도가 가장 낮은 치료모듈을 선택하여 치료스크립트를 생성한다.
프로세스 관련 치료대상 API를 치료하는 프로세스 관련 치료모듈들(22)을 치료강도순으로 나열하면, 프로세스를 강제로 종료하는 프로세스종료치료모듈, 프로세스에 삽입된 동적연결라이브러리(DLL)를 해제하는 DLL삽입해제치료모듈, 드라이버를 이용하여 상생 프로세스를 치료하는 상생프로세스치료모듈, 자식 프로세스를 종료하는 자식프로세스종료치료모듈이 포함된다. 이 발명에서는 프로세스 관련 치료대상 API가 추출되면, 프로세스 관련 치료모듈들 중 치료강도가 가장 낮은 치료모듈을 선택하여 해당 프로세스 관련 치료대상 API를 치료해 보고, 치료가 되지 않으면 그 다음으로 치료강도가 낮은 치료모듈을 선택하여 해당 프로세스 관련 치료대상 API를 치료해 본다. 이렇게 프로세스 관련 치료대상 API에 대해 치료강도가 가장 낮은 치료모듈(프로세스종료치료모듈)부터 치료강도가 가장 높은 치료모듈(자식프로세스종료치료모듈)을 순차적으로 선택하면서 선택된 치료모듈이 해당 프로세스 관련 치료대상 API를 치료할 수 있는지 검증함으로써, 해당 프로세스 관련 치료대상 API를 치료할 수 있으면서 치료강도가 가장 낮은 치료모듈을 선택하여 치료스크립트를 생성한다.
레지스트리 관련 치료대상 API를 치료하는 레지스트리 관련 치료모듈들(23)을 치료강도순으로 나열하면, 레지스트리를 변경하는 레지스트리변경치료모듈, 레지스트리를 삭제하는 레지스트리삭제치료모듈, 레지스트리를 추가하는 레지스트리추가치료모듈, 드라이버를 이용하여 레지스트리를 변경하는 드라이버이용레지스트리변경치료모듈, 드라이버를 이용하여 레지스트리를 삭제하는 드라이버이용레지스트리삭제치료모듈이 포함된다. 이 발명에서는 레지스트리 관련 치료대상 API가 추출되면, 레지스트리 관련 치료모듈들 중 치료강도가 가장 낮은 치료모듈을 선택하여 해당 레지스트리 관련 치료대상 API를 치료해 보고, 치료가 되지 않으면 그 다음으로 치료강도가 낮은 치료모듈을 선택하여 해당 레지스트리 관련 치료대상 API를 치료해 본다. 이렇게 레지스트리 관련 치료대상 API에 대해 치료강도가 가장 낮은 치료모듈(레지스트리변경치료모듈)부터 치료강도가 가장 높은 치료모듈(드라이버이용레지스트리삭제치료모듈)을 순차적으로 선택하면서 선택된 치료모듈이 해당 레지스트리 관련 치료대상 API를 치료할 수 있는지 검증함으로써, 해당 레지스트리 관련 치료대상 API를 치료할 수 있으면서 치료강도가 가장 낮은 치료모듈을 선택하여 치료스크립트를 생성한다.
서비스 관련 치료대상 API를 치료하는 서비스 관련 치료모듈들(24)을 치료강도순으로 나열하면, 서비스를 종료하는 서비스종료치료모듈, 서비스를 추가하는 서비스추가치료모듈, 서비스를 수정하는 서비스수정치료모듈이 포함된다. 이 발명에서는 서비스 관련 치료대상 API가 추출되면, 서비스 관련 치료모듈들 중 치료강도가 가장 낮은 치료모듈을 선택하여 해당 서비스 관련 치료대상 API를 치료해 보고, 치료가 되지 않으면 그 다음으로 치료강도가 낮은 치료모듈을 선택하여 해당 서비스 관련 치료대상 API를 치료해 본다. 이렇게 서비스 관련 치료대상 API에 대해 치료강도가 가장 낮은 치료모듈(서비스종료치료모듈)부터 치료강도가 가장 높은 치료모듈(서비스수정치료모듈)을 순차적으로 선택하면서 선택된 치료모듈이 해당 서비스 관련 치료대상 API를 치료할 수 있는지 검증함으로써, 해당 서비스 관련 치료대상 API를 치료할 수 있으면서 치료강도가 가장 낮은 치료모듈을 선택하여 치료스크립트를 생성한다.
검증부(16)는 멀웨어와 치료스크립트를 실행하는 가상머신으로서, 치료모듈블록(14) 중 입력된 치료스크립트에 대응하는 치료모듈을 선택하여 멀웨어를 치료하고 그 결과(치료성공 또는 실패)를 치료모듈선택기(15)에게 피드백한다.
도 3은 이 발명에 따른 멀웨어 치료스크립트 생성방법을 도시한 동작 흐름도이다.
멀웨어 치료스크립트 생성시스템이 가상머신에서 멀웨어를 실행한다(S31).
멀웨어 치료스크립트 생성시스템이 상기 가상머신에서 실행되는 상기 멀웨어가 호출하는 악의적 행위 관련 API들을 수집한다(S32).
멀웨어 치료스크립트 생성시스템이 상기 수집된 악의적 행위 관련 API들 중 치료대상 API를 추출한다(S33).
상기 추출된 치료대상 API별로 치료모듈을 순차적으로 선택하고, 선택된 치료모듈을 이용하여 치료스크립트를 생성하며, 그 생성한 치료스크립트가 멀웨어 치료를 성공하는지를 검증한다(S34). 이러한 치료모듈 선택, 치료스크립트 생성 및 검증단계는 생성된 치료스크립트가 멀웨어 치료에 성공할 때까지 반복하여(S35), 치료대상 API를 치료할 수 있으면서 치료강도가 가장 낮은 치료모듈을 선택하여 치료스크립트를 생성하도록 한다.
이상에서 본 발명에 대한 기술사상을 첨부도면과 함께 서술하였지만, 이는 본 발명의 가장 양호한 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술분야의 통상의 지식을 가진 자라면 누구나 본 발명의 기술사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.
110 : 안티 멀웨어 엔진 111 : 패턴추출기
112 : 치료스크립트획득부 113 : 치료모듈블록
114 : 스크립트해석기 115 : 치료부
116 : 치료스크립트저장부 120 : 안티 멀웨어 서버
121 : 진단명데이터베이스 122 : 진단명추출부
123 : 치료스크립트데이터베이스 124 : 치료스크립트추출부
125 : 치료스크립트생성부

Claims (9)

  1. 멀웨어를 실행하는 가상머신과,
    상기 가상머신에서 실행되는 상기 멀웨어가 호출하는 악의적 행위 관련 API들을 수집하는 API수집기와,
    상기 수집된 악의적 행위 관련 API들 중 치료대상 API를 추출하는 치료대상추출기와,
    상기 치료대상추출기에서 추출된 치료대상 API를 치료하는 적어도 둘 이상의 치료모듈들을 포함하는 치료모듈블록과,
    상기 둘 이상의 치료모듈들 중 상기 추출된 치료대상 API를 치료할 제1치료모듈을 선택하여 제1치료스크립트를 생성하는 치료모듈선택기와,
    상기 치료모듈선택기에서 생성된 제1치료스크립트가 상기 멀웨어를 치료하는지를 검증하는 검증부를 포함하고,
    상기 검증부의 검증결과 상기 제1치료스크립트가 상기 멀웨어를 치료하지 못하면, 상기 치료모듈선택기는 상기 적어도 둘 이상의 치료모듈들에서 상기 제1치료모듈을 제외한 치료모듈들 중 제2치료모듈을 선택하여 제2치료스크립트를 생성하여 상기 검증부에게 제공하고, 상기 검증부는 상기 제2치료스크립트가 상기 멀웨어를 치료하는지를 검증하는 것을 특징으로 하는 멀웨어 치료스크립트 생성 시스템.
  2. 삭제
  3. 제 1 항에 있어서, 상기 제2치료모듈의 치료강도는 상기 제1치료모듈의 치료강도 보다 높은 것을 특징으로 하는 멀웨어 치료스크립트 생성 시스템.
  4. 제 1 항에 있어서, 상기 치료대상추출기는 상기 API수집기에서 수집된 악의적 행위 관련 API들 중 중복제거를 하여 치료대상 API를 추출하는 것을 특징으로 하는 멀웨어 치료스크립트 생성 시스템.
  5. 제 1 항에 있어서, 상기 치료모듈블록은, 파일을 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 파일 관련 치료모듈들과, 프로세스를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 프로세스 관련 치료모듈들과, 레지스트리를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 레지스트리 관련 치료모듈들과, 시스템 서비스를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 서비스 관련 치료모듈들 중 적어도 하나를 포함한 것을 특징으로 하는 멀웨어 치료스크립트 생성 시스템.
  6. 멀웨어를 실행하는 가상머신과, 악의적 행위 관련 API를 치료하는 적어도 둘 이상의 치료모듈들을 포함하는 멀웨어 치료스크립트 생성 시스템에서의 멀웨어 치료스크립트 생성 방법에 있어서,
    상기 멀웨어 치료스크립트 생성 시스템이 상기 가상머신에서 실행되는 상기 멀웨어가 호출하는 상기 악의적 행위 관련 API들을 수집하는 제1단계와,
    상기 멀웨어 치료스크립트 생성 시스템이 상기 수집된 악의적 행위 관련 API들 중 치료대상 API를 추출하는 제2단계와,
    상기 멀웨어 치료스크립트 생성 시스템이 상기 둘 이상의 치료모듈들 중 제1치료모듈을 선택하여 제1치료스크립트를 생성하는 제3단계와,
    상기 멀웨어 치료스크립트 생성 시스템이 상기 제1치료스크립트가 상기 멀웨어를 치료하는지를 검증하는 제4단계와,
    상기 멀웨어 치료스크립트 생성 시스템이 상기 제1치료스크립트가 상기 멀웨어를 치료하지 못하면, 상기 적어도 둘 이상의 치료모듈들에서 상기 제1치료모듈을 제외한 치료모듈들 중 제2치료모듈을 선택하여 제2치료스크립트를 생성하고, 상기 제2치료스크립트가 상기 멀웨어를 치료하는지를 검증하는 제5단계를 더 포함한 것을 특징으로 하는 멀웨어 치료스크립트 생성 방법.
  7. 제 6 항에 있어서, 상기 제2치료모듈의 치료강도는 상기 제1치료모듈의 치료강도 보다 높은 것을 특징으로 하는 멀웨어 치료스크립트 생성 방법.
  8. 제 6 항에 있어서, 상기 제2단계는 상기 수집된 악의적 행위 관련 API들 중 중복제거를 하여 치료대상 API를 추출하는 것을 특징으로 하는 멀웨어 치료스크립트 생성 방법.
  9. 제 6 항에 있어서, 상기 치료모듈들은, 파일을 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 파일 관련 치료모듈들과, 프로세스를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 프로세스 관련 치료모듈들과, 레지스트리를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 레지스트리 관련 치료모듈들과, 시스템 서비스를 대상으로 악의적 행위를 수행하는 API를 치료하기 위한 서비스 관련 치료모듈들 중 적어도 하나를 포함한 것을 특징으로 하는 멀웨어 치료스크립트 생성 방법.

KR1020130028964A 2013-03-19 2013-03-19 멀웨어 치료스크립트 생성 시스템 및 방법 KR101421631B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130028964A KR101421631B1 (ko) 2013-03-19 2013-03-19 멀웨어 치료스크립트 생성 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130028964A KR101421631B1 (ko) 2013-03-19 2013-03-19 멀웨어 치료스크립트 생성 시스템 및 방법

Publications (1)

Publication Number Publication Date
KR101421631B1 true KR101421631B1 (ko) 2014-07-22

Family

ID=51742691

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130028964A KR101421631B1 (ko) 2013-03-19 2013-03-19 멀웨어 치료스크립트 생성 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101421631B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040041775A (ko) * 2002-11-11 2004-05-20 한국전자통신연구원 네트워크 바이러스 진단 및 치료 시스템과 방법
KR20090120717A (ko) * 2008-05-20 2009-11-25 주식회사 웰비아닷컴 마이크로소프트 윈도우 운영체제를 사용하는 컴퓨터시스템에서의 악성코드 탐지 및 처리 시스템 및 방법
KR20110087826A (ko) * 2010-01-27 2011-08-03 한남대학교 산학협력단 가상머신을 이용한 악성소프트웨어 탐지 방법
KR101159389B1 (ko) 2005-03-25 2012-07-09 마이크로소프트 코포레이션 컴퓨터 시스템 보호 시스템 및 그 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040041775A (ko) * 2002-11-11 2004-05-20 한국전자통신연구원 네트워크 바이러스 진단 및 치료 시스템과 방법
KR101159389B1 (ko) 2005-03-25 2012-07-09 마이크로소프트 코포레이션 컴퓨터 시스템 보호 시스템 및 그 방법
KR20090120717A (ko) * 2008-05-20 2009-11-25 주식회사 웰비아닷컴 마이크로소프트 윈도우 운영체제를 사용하는 컴퓨터시스템에서의 악성코드 탐지 및 처리 시스템 및 방법
KR20110087826A (ko) * 2010-01-27 2011-08-03 한남대학교 산학협력단 가상머신을 이용한 악성소프트웨어 탐지 방법

Similar Documents

Publication Publication Date Title
RU2486588C1 (ru) Система и способ эффективного лечения компьютера от вредоносных программ и последствий их работы
KR102307534B1 (ko) 다수 소프트웨어 개체들에 걸쳐서 악성 행동을 트래킹하기 위한 시스템들 및 방법들
US9916447B2 (en) Active defense method on the basis of cloud security
RU2454705C1 (ru) Система и способ защиты компьютерного устройства от вредоносных объектов, использующих сложные схемы заражения
KR101122650B1 (ko) 정상 프로세스에 위장 삽입된 악성코드 탐지 장치, 시스템 및 방법
JP5326062B1 (ja) 非実行ファイル検査装置及び方法
CN100585609C (zh) 一种确保操作环境安全的系统和方法
WO2012022211A1 (zh) 一种清除恶意程序的方法和装置
US8549626B1 (en) Method and apparatus for securing a computer from malicious threats through generic remediation
CN104573515A (zh) 一种病毒处理方法、装置和系统
Lu et al. DiffSig: Resource differentiation based malware behavioral concise signature generation
US9251350B2 (en) Trusted operating environment for malware detection
Borana et al. An assistive tool for fileless malware detection
US10880316B2 (en) Method and system for determining initial execution of an attack
CN106203105B (zh) 文件管理方法和装置
RU2510530C1 (ru) Способ автоматического формирования эвристических алгоритмов поиска вредоносных объектов
Ding et al. Accurate and efficient exploit capture and classification
KR101421631B1 (ko) 멀웨어 치료스크립트 생성 시스템 및 방법
Kumar et al. The Recent Trends in Malware Evolution, Detection and Analysis for Android Devices.
Dai et al. Mapmon: A host-based malware detection tool
KR102170737B1 (ko) 악성 스레드를 추적하는 장치 및 방법
Garcia-Cervigon et al. Browser function calls modeling for banking malware detection
KR101421630B1 (ko) 코드 인젝션된 악성코드 탐지 시스템 및 방법
RU2665909C1 (ru) Способ избирательного использования шаблонов опасного поведения программ
Ham et al. Vulnerability monitoring mechanism in Android based smartphone with correlation analysis on event-driven activities

Legal Events

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

Payment date: 20180716

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190715

Year of fee payment: 6