KR101607951B1 - 클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝 - Google Patents

클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝 Download PDF

Info

Publication number
KR101607951B1
KR101607951B1 KR1020147007173A KR20147007173A KR101607951B1 KR 101607951 B1 KR101607951 B1 KR 101607951B1 KR 1020147007173 A KR1020147007173 A KR 1020147007173A KR 20147007173 A KR20147007173 A KR 20147007173A KR 101607951 B1 KR101607951 B1 KR 101607951B1
Authority
KR
South Korea
Prior art keywords
cleaning
malware
response
request
instructions
Prior art date
Application number
KR1020147007173A
Other languages
English (en)
Other versions
KR20140061459A (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 KR20140061459A publication Critical patent/KR20140061459A/ko
Application granted granted Critical
Publication of KR101607951B1 publication Critical patent/KR101607951B1/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
    • 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
    • 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)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

멀웨어 클리닝을 제공하기 위한 방법은 네트워크에 접속된 제1 디바이스 상에서 잠재적 멀웨어를 검출하는 것을 포함한다. 네트워크에 접속된 제2 디바이스로 하여금 적절한 클리닝 응답을 결정하게 하기 위한 정보를 포함하는 요청은 네트워크를 통해 제1 디바이스로부터 제2 디바이스로 전송된다. 요청을 수신할 시에, 제2 디바이스는 적절한 클리닝 응답을 식별하려고 시도하고, 응답이 식별되는 경우, 클리닝 응답을 네트워크를 통해 제1 디바이스에 전송한다. 클리닝 응답은 검출된 잠재적 멀웨어를 다루기 위해 제1 디바이스에 의해 사용가능하다

Description

클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝{DYNAMIC CLEANING FOR MALWARE USING CLOUD TECHNOLOGY}
관련 출원들에 대한 교차 참조
이 출원은 그 전체 내용이 본원에 인용에 의해 포함된, 2011년 9월 7일에 출원된 미국 출원 일련 번호 제13/227,407호에 대한 우선권을 주장한다.
이 개시내용은 일반적으로 컴퓨터 보안 분야에 관한 것이다. 더 구체적으로, 그러나 제한에 의한 것이 아니도록, 이는 디바이스 상에서 멀웨어(malware)의 검출에 대해 시간상으로 근접하여 멀웨어 및 그것의 영향들을 디바이스로부터 삭제하기 위한 클리닝 코드의 공급(provision)에 관한 것이다.
멀웨어는 컴퓨터 시스템들을 감염시키며 다양한 정도의 영향들을 가질 수 있는 악성 소프트웨어를 기술하는데 사용되는 광범위한 용어이다. 예를 들어, 멀웨어의 영향들은 성가시고 원치 않는 애드웨어 및 스파이웨어에서부터 컴퓨터 시스템을 사실상(virtually) 쓸모없게 만들 수 있는 컴퓨터 바이러스들, 웜, 및 트로이 목마들까지를 범위로 할 수 있다. 인터넷과 같은 네트워크들에 접속된 엄청난 수의 디바이스들 및 이들 네트워크들에 대한 고속 접속들의 확대로 인해, 멀웨어 위협들이 극도로 빨리 시스템에서 시스템으로 확산할 수 있다. 따라서, 디바이스 상에서 멀웨어를 검출하기 위해 이들 디바이스들 상에서 일부 유형의 안티바이러스 애플리케이션(용어 안티바이러스는 매우 다양한 멀웨어를 지칭함)을 사용하고, 필요한 경우 원하는 클리닝 기능들을 수행하여 멀웨어를 삭제하고 그것의 영향들을 리페어하는 것이 공통적으로 구현된다.
멀웨어 생성기가 새로운 그리고 고유한 형태들의 멀웨어를 계속 유입하므로, 안티바이러스 애플리케이션들은 가장 최근에 유입된 멀웨어 위협들을 검출하고 리페어할 수 있는 기법들을 포함하도록 정기적으로 업데이트되어야 한다. 따라서, 안티바이러스 소프트웨어 제공자들은 정의 파일들을 업데이트들로서 이들의 안티바이러스 애플리케이션들에 일상적으로 배포한다. 이들 정의 파일들은 통상적으로, 멀웨어의 검출을 위해 시스템 파일들이 비교될 수 있는 공지된 멀웨어를 나타내는 서명 파일들, 및 검출된 경우 공지된 멀웨어를 삭제하고 그것의 영향을 리페어시키기 위한 클리닝 코드로 구성된다. 그러나, 심지어 이들 업데이트들을 가지고서도, 새로운 정의 파일들이 업데이트의 일부분으로서 이용가능해지기 전에 멀웨어 위협들이 많은 수의 컴퓨터 시스템들을 감염시키는 것이 가능하다.
따라서, 안티바이러스 소프트웨어 제공자들은 멀웨어를 검출하기 위한 클라우드 기술을 사용해 왔다. 클라우드 기술은 원격 위치로부터 네트워크 접속을 통해 로컬 디바이스로의 서비스들 및 데이터의 공급을 허용한다. 안티바이러스 소프트웨어를 사용한 멀웨어 검출의 경우, 예를 들어, 디바이스 상에 설치된 정의 파일들에 기초하여 멀웨어로서 식별될 수 없는 의심스러운 시스템 파일에 관한 정보가 클라우드 기술을 이용하여 패키지화되어 추가적인 검사를 위해 인터넷 접속을 통해 안티바이러스 소프트웨어 제공자와 연관된 네트워크 디바이스에 전송될 수 있다. 네트워크 디바이스는 제공된 정보를 평가하고, 파일이 멀웨어인지 또는 멀웨어가 아닌지의 표시를 가지고 응답할 수 있다. 따라서, 심지어 멀웨어의 서명을 포함하는 업데이트된 정의 파일들이 소프트웨어 업데이트의 일부분으로서 제공되지 않은 경우라도, 클라우드 기술을 사용하여 멀웨어를 검출하는 것이 가능하다. 그러나, 클라우드 기술을 사용하는 멀웨어의 검출에 응답하여, 멀웨어를 다루기 위한 가장 범용의 치료 수단들만이 이용가능하다. 예를 들어, 특정 클리닝 코드가 존재하지 않는 검출된 멀웨어를 다루기 위한 디폴트 치료 수단은 단순히 의심 파일을 삭제하는 것일 수 있다. 이러한 수단들은 종종 위협을 완전히 다루는데 실패하며, 따라서, 안티바이러스 소프트웨어의 사용자는 검출된 멀웨어를 다루기 위한 적절한 클리닝 코드를 포함하는 다음 소프트웨어 업데이트를 기다리도록 남겨진다.
안티바이러스 애플리케이션은, 심지어 멀웨어가 로컬 디바이스에 설치된 안티바이러스 애플리케이션을 사용하여 검출된 경우라도, 적절한 클리닝 코드를 가지지 않을 수 있다. 예를 들어, 안티바이러스 애플리케이션은, 시스템 파일을 공지된 멀웨어 서명과 비교함에 의해서가 아니라 오히려 시스템 파일을 평가하여 멀웨어와 유사한 특징들을 검출함으로써 소프트웨어를 검출할 수 있는, 발견 검출 기법들을 포함할 수 있다. 이러한 유형의 검출을 사용하여, 안티바이러스 소프트웨어는 특정 멀웨어를 나타내는 서명의 사용 없이 멀웨어를 검출할 수 있다. 이러한 기법은, 파일을 특정한 공지된 멀웨어로서 인식함에 의해서가 아니라 오히려 파일을 멀웨어의 일반적 특징들과 일치하는 것으로서 인식함으로써 멀웨어를 검출하므로, 검출된 멀웨어를 다루기 위한 정의 파일들의 일부로서 어떠한 특정 클리닝 코드도 이용가능하지 않는 것이 가능하다. 여기서 다시, 사용자는 검출된 멀웨어를 다루기 위해 적절한 클리닝 코드를 포함하는 다음 소프트웨어 업데이트를 기다리도록 남겨질 수 있다.
따라서, 종래 기술과 연관된 이들 및 다른 이슈들을 다룰 필요성이 존재한다.
제1 실시예에서, 멀웨어 클리닝을 제공하기 위한 방법은 네트워크에 접속된 제1 디바이스 상에서 잠재적 멀웨어를 검출하는 단계, 네트워크를 통해 제1 디바이스로부터 제2 디바이스로 요청을 전송하는 단계 - 요청은 제2 디바이스로 하여금 적절한 클리닝 응답을 결정하게 하는 정보를 포함함 - , 및 제2 디바이스로부터의 클리닝 응답을 네트워크를 통해 제1 디바이스에서 수신하는 단계 - 클리닝 응답은 검출된 잠재적 멀웨어를 삭제하기 위해 제1 디바이스에 의해 사용가능함 - 를 포함한다.
제2 실시예에서, 컴퓨터 프로그램 제품은 제1 실시예의 방법을 수행하기 위한 컴퓨터 명령어들을 포함한다.
제3 실시예에서, 시스템은 클라이언트와 서버를 포함한다. 클라이언트는 저장 디바이스 및 저장 디바이스에 동작적으로 결합된 프로세서를 포함하고, 프로세서는, 잠재적 멀웨어를 검출하고 네트워크를 통해 검출된 잠재적 멀웨어에 관련된 정보를 포함하는 요청을 전송하기 위해, 저장 디바이스에 저장된 프로그램 코드를 실행하도록 구성된다. 서버는 저장 디바이스 및 저장 디바이스에 동작적으로 결합된 프로세서를 포함하고, 프로세서는 네트워크를 통해 클라이언트로부터 요청을 수신하고, 클리닝 응답을 결정하고, 클리닝 응답을 네트워크를 통해 클라이언트에 전송하기 위해, 저장 디바이스에 저장된 프로그램 코드를 실행하도록 구성되고, 클리닝 응답은 검출된 잠재적 멀웨어를 삭제하기 위해 클라이언트에 의해 사용가능하다.
제4 실시예에서, 멀웨어 클리닝을 제공하기 위한 방법은 제1 디바이스로부터의 멀웨어 클리닝 요청을 네트워크를 통해 제2 디바이스에서 수신하는 단계, 멀웨어 클리닝 요청의 멀웨어 정의 부분을 식별하는 단계, 식별된 멀웨어 정의 부분에 매칭하는 레코드에 대해 제2 디바이스의 데이터 스토어를 탐색하는 단계, 및 제2 디바이스로부터의 클리닝 응답을 네트워크를 통해 제1 디바이스에 전송하는 단계를 포함하고, 클리닝 응답은 레코드로부터 결정된다.
도 1은 일 실시예에 따른 네트워크 아키텍처를 예시하는 블록도이다.
도 2는 일 실시예에 따른 대표적인 하드웨어 환경을 예시하는 블록도이다.
도 3은 일 실시예에 따라 클라우드 기술을 사용하는 동적 멀웨어 클리닝을 제공하기 위한 프로세스를 예시하는 흐름도이다.
도 4는 일 실시예에 따라 클라우드 기술을 사용하는 동적 멀웨어 클리닝을 제공하기 위한 네트워크 아키텍처를 예시하는 블록도이다.
도 5는 일 실시예에 따라 클라우드 기술을 사용하는 동적 멀웨어 클리닝에 대한 요청을 수신 및 프로세싱하기 위한 프로세스를 예시하는 흐름도이다.
후속하는 기재에서, 설명의 목적으로 다수의 특정 세부사항들이 본 발명의 완전한 이해를 제공하기 위해 설명되어 있다. 그러나, 발명이 이들 특정 세부사항들 없이도 구현될 수 있다는 점이 당업자에게 명백할 것이다. 다른 경우들에서, 구조 및 디바이스들은 발명을 모호하게 하는 것을 회피하기 위해 블록도 형태로 도시된다. 첨자들 또는 접미사 없는 참조 부호들은 참조 부호에 대응하는 첨자들 및 접미사들의 모든 예시를 참조하는 것으로 이해된다. 또한, 이 개시물에서 사용된 언어는 원칙적으로 가독성 및 지시적 목적으로 선택되었으며, 청구항들이 발명의 대상을 결정하기 위해 필요함에 따라, 이러한 발명의 대상을 기술하거나 제한하도록 선택되지 않았을 수 있다. 명세서에서 "일 실시예" 또는 "실시예"에 대한 참조는 실시예들과 관련하여 기술된 특정한 특징, 구조 또는 특성이 발명의 적어도 하나의 실시예에 포함됨을 의미하며, "일 실시예" 또는 "실시예"에 대한 다수의 참조들은 반드시 모두 동일한 실시예를 지칭하는 것으로 이해되지는 않아야 한다.
일 실시예에 따르면, 도 1은 네트워크 아키텍처(100)를 예시한다. 도시된 바와 같이, 복수의 네트워크(102)들이 제공된다. 본 네트워크 아키텍처(100)의 맥락에서, 네트워크들(102)은 각각, 로컬 영역 네트워크(LAN), 무선 네트워크, 인터넷과 같은 광역 네트워크(WAN), 피어-투-피어(peer-to-peer) 네트워크 등을 포함하지만 이에 제한되지 않는 임의의 형태를 취할 수 있다.
네트워크들(102)을 통해 통신할 수 있는 서버들(104) 및 클라이언트들(106)이 네트워크들(102)에 결합된다. 이러한 서버들(104) 및/또는 클라이언트들(106)은 각각 데스크톱 컴퓨터, 랩톱 컴퓨터, 핸드헬드 컴퓨터, 모바일 폰, 개인용 디지털 보조기(PDA), 주변 장치(예를 들어, 프린터 등), 컴퓨터의 임의의 컴포넌트, 및/또는 네트워크(102)를 통해 통신할 수 있는 임의의 다른 유형의 디바이스를 포함할 수 있다. 적어도 하나의 게이트웨이(108)는, 특정 네트워크(102)에 접속된 서버들(104) 및/또는 클라이언트들(106) 각각이 다른 네트워크(102)와 접속된 서버(104) 및/또는 클라이언트(106)와 통신할 수 있도록 네트워크들(102) 사이에서 선택적으로 결합된다.
일 실시예에 따르면, 도 2는 도 1의 서버들(104) 및/또는 클라이언트들(106)와 연관될 수 있는 대표적인 하드웨어 환경을 도시한다. 이러한 도면은 마이크로프로세서와 같은 중앙 처리 유닛(210), 및 시스템 버스(212)를 통해 상호접속되는 다수의 다른 유닛들을 갖는 일 실시예에 따라 워크스테이션의 통상적인 하드웨어 구성을 예시한다.
도 2에 도시된 워크 스테이션은, 랜덤 액세스 메모리(RAM)(214), ROM(Read Only Memory)(216), 디스크 저장 유닛들(220)과 같은 주변 디바이스들을 버스(212)에 접속시키기 위한 I/O 어댑터(218), 키보드(224), 마우스(226), 스피커(228), 마이크로폰(232), 및/또는 터치 스크린(미도시)과 같은 다른 사용자 인터페이스 디바이스들을 버스(212)에 접속시키기 위한 사용자 인터페이스 어댑터(222), 예를 들어, 도 1의 네트워크들(102) 중 임의의 네트워크와 같은 통신 네트워크에 워크스테이션을 접속시키기 위한 통신 어댑터(234), 및 버스(212)를 디스플레이 디바이스(238)에 접속시키기 위한 디스플레이 어댑터(236)를 포함한다.
워크스테이션은 워크스테이션 상에 상주하는 임의의 원하는 운영 체제를 가질 수 있다. 실시예는 또한 언급된 것들과는 다른 플랫폼들 및 운영 체제들 상에서 구현될 수 있다. 일 실시예는 JAVA, C, 및/또는 C++ 언어, 또는 다른 프로그래밍 언어들을 사용하여, 객체 지향 프로그래밍 방법과 함께 기록될 수 있다. 객체 지향 프로그래밍(OOP)은 복잡한 애플리케이션들을 개발하기 위해 점점 더 많이 사용된다.
본원에 설명된 다양한 실시예들은 하드웨어, 소프트웨어, 또는 이들의 임의의 원하는 조합을 이용하여 구현될 수 있다. 본원에 설명된 다양한 기능성을 구현할 수 있는 임의의 유형의 로직이 이용될 수 있다.
도 3을 참조하면, 예시적인 실시예에서, 클라우드 기술을 사용하여 동적 멀웨어 클리닝을 제공하기 위한 프로세스가 도시되어 있다. 명료함의 목적으로, 멀웨어 클리닝의 동작은, 임의의 유형의 악성 소프트웨어의 영향들을 삭제하고, 무효화시키고, 격리하고(즉, 시스템의 다른 영역들에 대해 유해한 영향들의 확산을 방지하기 위해 시스템이 단일 영역에서 분리됨), 및/또는 리페어하려고 하는 것들을 포함하지만 이에 제한되지 않는 임의의 동작을 지칭한다. 예시된 실시예에서, 동적 멀웨어 클리닝을 제공하는 것은 디바이스 상에서의 멀웨어 검출의 프로세스로 시작한다. 디바이스는 예를 들어, 도 1에서 전술된 디바이스들 중 임의의 디바이스와 같은 멀웨어에 의해 영향을 받을 수 있는 임의의 디바이스일 수 있다. 멀웨어는 멀웨어를 검출할 수 있는 임의의 원하는 기법을 사용하여 디바이스 상에서 검출될 수 있다. 디바이스 상에서 멀웨어를 검출하는 프로세스는 디바이스의 파일을 디바이스 상에 저장된 공지된 멀웨어 서명들과 비교하는 것을 포함할 수 있다. 대안적으로, 멀웨어를 검출하는 프로세스는 파일이 멀웨어인지의 여부에 대한 결정을 위해 디바이스 상의 의심 파일에 관한 정보를 패키지화하여 네트워크 디바이스에 전송하는 것을 포함할 수 있다. 멀웨어는 또한 발견 또는 행동 기반 검출 기법들을 사용하여 디바이스 상에서 검출될 수 있다. 단계(302)에서 멀웨어가 검출되지 않는 경우, 디바이스 상에서 멀웨어를 검출하려고 시도하는 프로세스가 계속된다. 예를 들어, 멀웨어에 대한 탐색은 계속적으로, 또는 하기에 기술될 바와 같이 디바이스 상에서의 특정 발생들에 응답하여 수행될 수 있다.
그러나, 단계(302)에서 멀웨어가 검출되는 경우, 검출된 멀웨어에 대한 적절한 클리닝 절차들이 디바이스에서 이용가능한지의 여부는 단계(304)에서 결정된다. 일 실시예에서, 멀웨어의 검출을 담당하는 안티바이러스 애플리케이션은 클리닝 코드가 검출된 특정 멀웨어에 대한 안티바이러스 애플리케이션의 일부분으로서 이용가능한지의 여부를 결정할 수 있다. 일 실시예에서, 적절한 클리닝 절차들은 검출된 특정 멀웨어에 대한 클리닝 절차들이 이용가능하지 않거나, 구식이거나, 또는 만족스러운 결과들을 제공하지 않을 가능성이 있는 경우, 디바이스에서 이용가능하지 않을 수 있다. 적절한 클리닝 절차들이 디바이스에서 이용가능한 경우, 로컬로 이용가능한 클리닝 절차들은 306에서 검출된 멀웨어를 삭제하고 멀웨어의 영향들을 리페어하기 위해 이용된다. 일 실시예에서, 검출된 멀웨어를 삭제하고 그것의 영향들을 리페어하기 위해 로컬로 이용가능한 클리닝 절차들을 사용하는 것(306)은 디바이스 상에 설치된 안티바이러스 애플리케이션의 일부분인 프로그램 코드를 실행하는 것을 포함할 수 있다. 멀웨어를 리페어하고 그것의 영향들을 삭제하기 위해 로컬로 이용가능한 클리닝 절차들을 사용하는 것은 임의의 원하는 방식으로 수행될 수 있다.
적절한 클리닝 절차들이 디바이스에서 이용가능하지 않은 경우, 검출된 멀웨어에 관한 정보는 디바이스의 네트워크 접속을 사용하여 통신 네트워크를 통해 308에서 서버에 전송될 수 있다. 일 실시예에서, 서버는 인터넷 접속에 의해 디바이스에 대해 액세스가능할 수 있다. 그러나, 서버는 도 1에서 위에서 논의된 것과 같은 임의의 바람직한 네트워크 접속에 의해 디바이스에 대해 액세스가능할 수 있다. 일 실시예에서, 서버는 디바이스 상에 설치된 안티바이러스 애플리케이션의 제공자와 연계된 서버일 수 있다. 수신 디바이스가 서버로서 기술되지만, 수신 디바이스가 디바이스로부터 전송된 정보를 수신하고, 그에 따라 정보를 프로세싱할 수 있는 임의의 네트워크 디바이스일 수 있다는 점이 이해될 것이다. 일 실시예에서, 디바이스로부터 멀웨어의 검출에 관한 정보를 수신할 수 있는 복수의 서버들이 존재할 수 있다. 적절한 서버는 검출된 멀웨어의 유형, 디바이스의 위치 등에 따라 결정될 수 있다. 따라서, 서버는 정보를 수신하고 디바이스에 적절한 응답을 제공할 수 있는 임의의 네트워크 디바이스일 수 있다.
일 실시예에서, 서버에 전송된 정보는 검출된 멀웨어로서 식별되는 파일의 해시(hash)를 포함할 수 있다. 일 실시예에서, 서버에 전송된 정보는 암호화될 수 있다. 정보는 개인-키 암호법(즉, 대칭 암호법) 또는 공개-키 암호법(즉, 비대칭 암호법)을 사용하여 암호화될 수 있다. 그러나, 서버에 전송된 정보는 서버로 하여금 검출된 멀웨어와 연관된 적절한 클리닝 응답을 식별하게 할 수 있는 임의의 정보를 포함할 수 있다. 예를 들어, 일 실시예에서, 정보는 클리닝 응답들에 대응하는 특정 유형들의 멀웨어의 데이터베이스 룩업 교차-참조를 수행하기 위해 서버에 의해 사용될 수 있다.
검출된 멀웨어에 관한 정보의 수신에 응답하여, 서버는 310에서 적절한 클리닝 응답을 가지고 응답할 수 있다. 하기에 더 상세하게 기술될 바와 같이, 다양한 실시예들에서, 서버에 의해 제공되는 응답은, 예를 들어, 디바이스에 설치된 안티바이러스 애플리케이션의 일부분으로서 디바이스 상에 이미 존재하는 클리닝 코드를 참조하기 위한 명령어들, 디바이스에 의해 실행될 클리닝 루틴들, 디바이스 상의 기존 클리닝 코드를 참조하는 명령어들 및 디바이스에 의해 실행될 클리닝 루틴들의 조합, 또는 상이한 네트워크 디바이스로부터 클리닝 응답을 획득하기 위한 명령어들을 포함할 수 있다. 그러나, 응답은 디바이스로 하여금 검출된 멀웨어를 삭제하고 그것의 영향들을 리페어하도록 할 수 있는 임의의 컨텐츠를 포함할 수 있다. 단계(312)에서, 디바이스는 검출된 멀웨어를 삭제하고 그것의 영향들을 리페어하기 위해 응답을 이용할 수 있다.
도 4를 참조하면, 예시적인 실시예에서, 동적 멀웨어 클리닝을 제공하기 위한 네트워크 아키텍처는 안티바이러스 애플리케이션(408)이 설치된 워크스테이션(402)을 포함한다. 워크스테이션(402)은 네트워크 접속(403)에 의해 네트워크(426)에 접속된다. 워크스테이션(402)은 개인용 컴퓨터로서 도시되지만, 도 1에서 위에 논의된 디바이스들 중 임의의 디바이스와 같이 멀웨어에 의해 영향을 받을 수 있는 임의의 디바이스일 수 있다. 일 실시예에서, 워크스테이션(402)은 실제로 안티바이러스 애플리케이션(408)이 실행되고 있는 가상 머신(즉, 머신의 소프트웨어 구현예)일 수 있다.
일 실시예에서, 안티바이러스 애플리케이션(408)은 멀웨어 위협들로부터 워크스테이션(402)을 보호하기 위해 워크스테이션(402)에 의해 이용될 수 있다. 안티바이러스 애플리케이션(408)은 워크스테이션(402)의 정상적이며 의도된 동작을 중단하기 위해 생성된 임의의 유형의 악성 소프트웨어를 다루도록 구성될 수 있다. 이러한 멀웨어 위협들은 컴퓨터 바이러스, 웜, 트로이 목마, 스파이웨어, 애드웨어, 사기(scam) 소프트웨어 등을 포함할 수 있지만 이에 제한되지 않는다. 안티바이러스 애플리케이션(408)은, 예를 들어, 워크스테이션(402) 상에 존재하는 멀웨어를 검출하고, 검출된 멀웨어를 삭제하고, 무효화시키고, 격리시키는 것 등을 수행하기 위해 필요한 동작들을 수행할 수 있다.
일 실시예에서, 안티바이러스 애플리케이션(408)은 스캔 트리거(410) 및 정의 파일들(412)을 포함할 수 있다. 안티바이러스 애플리케이션(408)의 컨텐츠의 도시가 안티바이러스 애플리케이션(408)의 컨텐츠의 완전한 발명사항을 제공한다기 보다는 개시내용의 실시예를 기술하기 위한 특정 오브젝트들을 참조하기 위해 본원에서 이용될 수 있다는 점이 당업자에 의해 이해될 것이다.
스캔 트리거(410)는 안티바이러스 애플리케이션(408)으로 하여금 워크스테이션(402)의 특정 파일, 파일 디렉토리 등의 평가를 개시하게 하기 위한 컴퓨터 코드를 포함할 수 있다. 스캔 트리거(410)은 워크스테이션(402) 상에서의 다양한 이벤트들의 발생에 기초하여 활성화될 수 있다. 예를 들어, 일 실시예에서, 스캔 트리거(410)는 사용자가 파일에 액세스하려고 하는 것에 응답하여 파일의 평가를 개시할 수 있다. 또다른 실시예에서, 스캔 트리거(410)는 안티바이러스 애플리케이션(408)의 규칙적 스케줄에 따라 파일 또는 파일 디렉토리의 평가를 개시할 수 있다. 예를 들어, 스캔 트리거(410)는 규칙적으로 스케줄링된 구간에 기초하여 특정 파일 또는 파일 디렉토리의 평가를 트리거링할 수 있다.
정의 파일들(412)은 멀웨어 서명들(414), 클리닝 절차들(415), 및 클리닝 코드(416)를 포함할 수 있다. 멀웨어 서명들(414)은, 공지된 멀웨어의 코드의 대표적인 패턴들, 또는 멀웨어를 식별하는데 사용될 수 있는 다른 데이터를 포함할 수 있다. 스캔 트리거(410)의 개시에서, 특정 파일은 파일 내의 임의의 코드가 공지된 멀웨어의 멀웨어 서명들(414) 중 임의의 멀웨어 서명에 매칭되는지를 결정하기 위해 멀웨어 서명들(414)을 사용하여 스캔될 수 있다. 정의 파일들(412)은 검출된 멀웨어의 삭제 및 멀웨어의 임의의 영향들의 리페어를 용이하게 하는 클리닝 코드(416)를 추가적으로 포함할 수 있다. 일 실시예에서, 클리닝 코드(416)는 멀웨어를 삭제하고 및/또는 그것의 영향들을 완화하기 위해 이용되는 루틴들의 라이브러리를 포함할 수 있다. 안티바이러스 애플리케이션(408)은 클리닝 코드(416)의 적절한 루틴들을 개시하기 위해 클리닝 절차들(415)을 이용할 수 있다. 클리닝 절차들(415)은 멀웨어를 다루기 위해 실행될 클리닝 코드(416)의 적절한 클리닝 루틴들에 대해 특정 멀웨어를 관련시키는 레코드들을 포함할 수 있다. 예를 들어, 특정 멀웨어 위협의 식별 시에, 안티바이러스 애플리케이션(408)은 클리닝 절차들(415)을 참조(consult)하여, 검출된 특정 멀웨어 위협에 대응하도록 구체적으로 공지된 클리닝 코드(416)의 특정 루틴들의 실행을 개시할 수 있다. 상이한 멀웨어 위협이 검출된 경우, 클리닝 절차들(415)은 클리닝 코드(416)의 상이한 루틴들의 실행을 요청할 수 있다. 일 실시예에서, 소프트웨어 업데이트들은 멀웨어 서명들(414), 클리닝 절차들(415), 및 최근에 식별된 멀웨어 위협들에 대한 클리닝 코드(416)를 포함하도록 정의 파일들(412)을 업데이트하기 위해 안티바이러스 애플리케이션(408)의 제공자에 의해 일상적으로 이용가능해질 수 있다.
안티바이러스 애플리케이션(408)은 특정 검출된 멀웨어에 대한 클리닝 절차들(415)이 이용가능하지 않고, 구식이거나, 또는 만족스러운 결과를 제공하지 않을 가능성이 있다고 결정할 수 있다. 예를 들어, 일 실시예에서, 멀웨어 검출은 클라우드 기술을 사용한 검출의 결과였을 수 있다. 클라우드 기술을 사용하여, 멀웨어는 정의 파일들(412)의 멀웨어 서명들(414)의 일부분으로서라기 보다는 서버와 같은 원격 네트워크 위치에서 저장되는 서명들을 이용하여 검출될 수 있다. 일 실시예에서, 서버는 서버(404)일 수 있다. 이 검출 방법을 사용하여, 로컬 디바이스(402)는 평가를 위해 네트워크 접속을 통해 원격 위치에 의심 파일에 관한 정보를 제공할 수 있다. 그러나, 멀웨어가 클라우드 기술을 사용하여 검출될 때, 검출된 특정 멀웨어에 대한 정의 파일들(412) 내에 어떠한 멀웨어 서명(414)도 존재하지 않으므로, 특정 검출된 멀웨어에 대한 레코드는 검출된 멀웨어에 대응하기 위한 클리닝 코드(416)를 표시하기 위해 클리닝 절차들(415)에서 이용가능하지 않을 수 있다.
또다른 실시예에서, 멀웨어 검출은 특정 파일의 발견적 분석에 기초할 수 있다. 발견적 분석이 특정 유형의 멀웨어라기보다는 멀웨어의 일반적 패턴들을 검출하므로, 발견적 분석을 이용하여 검출된 특정 멀웨어에 대한 엔트리는, 검출된 멀웨어에 대응하기 위한 적절한 클리닝 코드(416)를 표시하기 위한 클리닝 절차들(415)에서 이용가능하지 않을 수 있다.
또다른 실시예에서, 검출된 멀웨어는 그것이 정의 파일(412)의 멀웨어 서명(414)을 이용하여 인식될 수 있도록 특정 멀웨어의 충분한 특성들을 보여주는 것으로서 인식될 수 있다. 그러나, 멀웨어 서명이 기초하는 공지된 멀웨어의 특성들을 가짐에도, 검출된 멀웨어가 공지된 멀웨어에서 관측되지 않은 고유한 특징들을 가진다고 결정될 수 있다. 따라서, 멀웨어 서명(414)이 기초하는 공지된 멀웨어와 연관된 클리닝 절차들(415)은 검출된 멀웨어에 적용될 때 만족스러운 결과들을 제공하지 않을 수 있다고 결정될 수 있다. 결과적으로, 검출된 멀웨어에 대한 부적절한 클리닝을 제공할 가능성은 본원에 개시된 클라우드 기술 기법들을 사용함으로써 감소될 수 있다.
또다른 실시예에서, 정의 파일(412)은 클리닝 절차들(415)이 구식임을 표시할 수 있다. 예를 들어, 정의 파일들(412)을 포함하는 소프트웨어 업데이트는, 멀웨어 서명(414)이 포함된 특정 멀웨어 위협이 매우 빨리 진전하여, 대응하는 클리닝 절차들(415)이 클라우드 기술을 사용하여 더욱 적절한 클리닝이 이용가능한지의 여부를 결정한 이후에만 사용되어야 한다는 점을 인지할 수 있다. 따라서, 신속히 진전하는 멀웨어 위협에 대응하는 클리닝 절차들(415)을 이용하기 이전에, 안티바이러스 애플리케이션(408)은, 클리닝 절차들(415)이 여전히 적절한지의 여부를 결정하기 위해 클라우드 기술을 사용할 수 있다. 당업자는 클리닝 절차들(415)이 이용가능하지 않고, 구식이거나 또는 만족스러운 결과들을 제공하지 않을 가능성이 있다고 결정하기 위한 추가적인 이유들이 존재할 수 있음을 인지할 것이다.
도 4에 도시된 실시예에 따라, 안티바이러스 애플리케이션(408)이 클리닝 절차들(415)이 이용가능하지 않고, 구식이거나, 만족스러운 결과들을 제공하지 않을 가능성이 있다고 결정할 때, 안티바이러스 애플리케이션(408)은 클라우드 기술을 사용하여 멀웨어 클리닝을 요청할 수 있다. 도시된 바와 같이, 워크스테이션(402)은 네트워크(426)에 대한 네트워크 접속에 의해 안티바이러스 애플리케이션(408)의 제공자와 연계된 서버(404)에 접속된다. 서버(404)는 네트워크 접속(405)에 의해 네트워크(426)에 접속된다. 서버(404)는 복수의 워크스테이션들(402)로부터의 네트워크 요청들에 응답하고 하기에 기술된 기능들을 수행할 수 있는 임의의 디바이스일 수 있다. 일 실시예에서, 네트워크(426)는 인터넷일 수 있다. 그러나, 네트워크(426)는 도 1에서 전술된 네트워크들 중 임의의 것일 수 있다. 도시된 바와 같이, 안티바이러스 애플리케이션(408)은 네트워크(426)를 사용하여 서버(404)로부터의 멀웨어 클리닝(418)에 대한 요청을 발행하도록 워크스테이션(402)을 재촉할 수 있다. 일 실시예에서, 워크스테이션(402)은 멀웨어 클리닝을 위한 도메인 명칭 시스템(DNS) 질의 또는 하이퍼텍스트 전송 프로토콜(HTTP) 요청과 같은 요청을 발행할 수 있다. 또다른 실시예에서, 워크스테이션(402)은 서버(404)에 데이터를 업로드하기 위해 파일 전송 프로토콜(FTP)을 이용할 수 있다. 다른 유형들의 요청들이 또한 원하는 경우 사용될 수 있다. 일 실시예에서, 요청(418)은 멀웨어로서 검출된 파일의 해시를 포함할 수 있다. 일 실시예에서, 요청(418)은 암호화된 정보를 포함할 수 있다. 일 실시예에서, 요청(418)은 서버(404)가 공지된 안티바이러스 애플리케이션(408)로부터 발생된 합법적 요청으로서 요청(418)을 인증할 수 있도록 키 또는 다른 데이터를 포함할 수 있다. 또다른 실시예에서, 요청(418)의 수신은 요청(418)을 인증하기 위해 워크스테이션(402)의 사용자가 패스워드를 입력하라는 요청을 발행하도록 서버를 재촉할 수 있다. 멀웨어 클리닝(418)에 대한 요청은 적절한 멀웨어 클리닝 응답이 제공될 수 있도록 서버(404)에 필요한 정보를 제공할 수 있는 임의의 형태를 취할 수 있다.
멀웨어 클리닝(418)에 대한 요청을 수신하는 것에 응답하여, 서버(404)는 요청의 컨텐츠를 평가하여 검출된 멀웨어를 식별하고, 적절한 응답을 결정할 수 있다. 일 실시예에서, 서버(404)는 데이터 스토어(428)(예를 들어, 라이브러리, 데이터 베이스, 또는 데이터 저장의 다른 수단)를 참조하여 특정한 멀웨어 위협들을 적절한 응답들과 연관시킬 수 있다. 일 실시예에서, 서버(404)는 워크스테이션(402)에 의해 제공된 암호화된 정보를 암호해독하고, 암호해독된 정보를 사용하여 검출된 멀웨어를 식별하고 데이터 스토어(428) 내의 관계 정보에 기초하여 적절한 응답을 결정할 수 있다. 일 실시예에서, 서버(404)는 요청(418)의 일부분으로서 전송된 의심 파일의 해시를 데이터 스토어(428) 내의 파일 해시들의 데이터 베이스와 비교하여 적절한 응답을 결정할 수 있다. 서버(404)는 임의의 적절한 방식으로 검출된 멀웨어를 식별하고 적절한 응답을 결정할 수 있다.
서버(404)가 검출된 멀웨어를 식별하고 적절한 응답을 결정한 이후에, 서버(404)는 워크스테이션(402)에 응답(420)을 발행할 수 있다. 일 실시예에서, 응답은 응답은 워크스테이션(402)으로부터의 DNS 질의 또는 HTTP 요청에 대한 응답일 수 있다. 또다른 실시예에서, 응답(420)은 파일 전송 프로토콜(예를 들어, FTP, TFTP, FTPS 등)을 이용하여 워크스테이션(402)에 데이터를 전송할 수 있다. 일 실시예에서, 응답(420)은 암호화될 수 있고 안티바이러스 애플리케이션(408)에 의해 암호해독되어야 한다. 응답(420)이 네트워크(426)를 사용하여 서버(404)로부터 워크스테이션(402)으로 적절한 정보를 통신하기 위해 임의의 바람직한 방식으로 만들어질 수 있다는 점이 당업자에 의해 이해될 것이다.
하기에 기술될 바와 같이, 클리닝 응답(420)은 다양한 형태들을 취할 수 있다. 특정 실시예들에서, 클리닝 응답(420)은 클리닝 명령어들 및/또는 클리닝 루틴들을 포함할 수 있다. 명료함의 목적으로, 클리닝 명령어들은 기존의 클리닝 코드(416)의 특정 루틴들을 참조한다. 반면, 클리닝 루틴들은 클리닝 코드(416)에 포함되는 것이 아니라 응답(420)의 일부로서 제공되는 실행가능한 루틴들이다.
일 실시예에서, 응답(420)은 클리닝 명령어들을 포함할 수 있다. 이러한 클리닝 명령어들은, 예를 들어, 정의 파일들(412)의 클리닝 코드(416)의 루틴들을 참조할 수 있다. 검출된 멀웨어와 연관된 클리닝 절차들(415)이 이용가능하지 않고, 구식이거나, 또는 만족스러운 결과들을 제공하지 않을 가능성이 있다고 결정되었을 수 있지만, 예를 들어, 클리닝 절차(415) 레코드가 검출된 멀웨어에 대해 존재하지 않으므로, 검출된 멀웨어를 다루기 위해 필요한 클리닝 루틴들이 클리닝 코드(416)에서 존재한다고 결정될 수 있다. 서버(404)는, 요청(418)에 응답하여, 검출된 멀웨어를 식별하고, 필요한 클리닝 코드(416)가 정의 파일들(412)에서 이미 이용가능하다고 결정할 수 있다. 예를 들어, 검출된 멀웨어에 대한 적절한 응답은 기존의 루틴들의 새로운 조합일 수 있다. 일 실시예에서, 워크스테이션(404)은 서버(404)가 적절하게 응답하게 하기 위해, 요청(418)의 일부분으로서 정의 파일들(412)의 현재 버전을 표시할 수 있다. 대안적으로, 서버(404)는 요청(418)을 수신한 이후에 그리고 응답(420)을 발행하기 이전에 워크스테이션(404)으로부터 정의 파일들(412)의 현재 버전을 요청할 수 있다. 따라서, 응답(420)은 명령어들에 표시된 클리닝 코드(416)의 특정 루틴들을 실행하여 검출된 멀웨어를 삭제하고 그것의 영향들을 리페어하도록 안티바이러스 애플리케이션(408)을 재촉할 수 있다.
또다른 실시예에서, 응답(420)은 안티바이러스 애플리케이션(408)에 의해 실행될 클리닝 루틴들을 포함할 수 있다. 이 실시예에 따라, 서버(404)는, 요청(418)에 응답하여, 검출된 멀웨어를 식별하고, 필요한 클리닝 루틴들이 클리닝 코드(416)에서 이용가능하지 않다고 결정할 수 있다. 따라서, 응답(420)은 필요한 클리닝 루틴들을, 예를 들어, 클리닝 코드(416)와는 관계 없이 안티바이러스 애플리케이션(408)에 의해 개시될 실행가능한 파일로서 제공할 수 있다. 일 실시예에서, 검출된 멀웨어에 대한 클리닝 루틴들이 클리닝 코드(416)의 가장 최근 버전에서 이용가능하지만 요청(418)이 워크스테이션(402)에 대한 정의 파일들(412)이 최신이 아니며 따라서 적절한 클리닝 루틴들을 포함하지 않음을 표시하는 경우, 응답(420)은 안티바이러스 애플리케이션(408)에 의해 개시될 적절한 클리닝 루틴들을 포함할 수 있다. 대안적으로, 응답(420)은 가장 최근의 정의 파일들(412)에서 클리닝 루틴들을 참조하는 클리닝 루틴들을 제공하고, 명령어들에 의해 참조되는 클리닝 루틴들이 실행될 수 있도록 가장 최근의 정의 파일들(412)을 획득하도록 워크스테이션(402)을 재촉할 수 있다.
또다른 실시예에서, 응답(420)은 정의 파일들(412)의 클리닝 코드(416)에서 클리닝 루틴들 및 클리닝 루틴들을 참조하기 위한 명령어들을 포함할 수 있다. 이 실시예에 따라, 서버(404)는, 요청(418)에 응답하여, 검출된 멀웨어를 식별하고, 필요한 클리닝 루틴들 중 일부가 클리닝 코드(416)에서 이용가능하지만 검출된 특정 멀웨어를 완전히 다루기 위해 추가적인 클리닝 루틴들이 요구된다고 결정할 수 있다. 따라서, 응답(420)은 클리닝 코드(416)의 클리닝 루틴들을 참조하는 명령어들에 추가하여, 클리닝 루틴들을, 예를 들어, 실행가능한 파일로서 제공할 수 있다.
또다른 실시예에서, 응답(420)은 서버(406)에 전술된 응답들 중 임의의 것을 선정할 수 있다. 그 문제에 대해서, 응답(420)은 서버(406)에 대한 임의의 바람직한 응답을 선정할 수 있다. 서버(406)는 네트워크 접속(407)에 의해 네트워크(426)에 접속된다. 응답(420)은 멀웨어 클리닝에 대한 요청(422)을 서버(406)에 발행하도록 워크스테이션(402)을 재촉할 수 있다. 일 실시예에서, 요청(422)은 DNS 요청일 수 있다. 원하는 경우 다른 유형들의 요청들이 사용될 수 있다. 일 실시예에서, 요청(420)은 요청(422)의 일부로서 제시될 정보를 서버(406)에 제공하여 원하는 특정 멀웨어 클리닝 응답을 식별할 수 있다. 이러한 방식으로, 서버(404)는 서버(406)로의 멀웨어 클리닝의 제공을 선정하는 동안, 진단 기능들(예를 들어, 검출된 멀웨어를 식별하고 적절한 멀웨어를 결정하는 것)을 제공할 수 있다. 따라서, 진단 및 제공 작업들은 클라우드 기술을 사용하여 멀웨어 클리닝을 가장 효율적으로 제공하기 위해 상이한 네트워크 디바이스들 사이에서 분리될 수 있다. 요청(422)이 원하는 특정 멀웨어 클리닝 응답을 식별하는 정보를 포함할 수 있으므로, 서버(406)는 요청된 멀웨어 클리닝 응답(424)을 이용하여 간단히 응답할 수 있다. 일 실시예에서, 응답(420)은 요청(422)의 일부로서 서버(406)에 제시될 키를 제공할 수 있다. 이러한 방식으로, 서버(406)는 요청(422)을 합법적 요청으로서 인증할 수 있다. 다른 인증 기법들이 또한 이용될 수 있다. 도 4가 오직 하나의 서버(404) 및 하나의 서버(406)만을 도시하지만, 복수의 서버들(404 및 406)이 네트워크(426)에 접속될 수 있다는 점이 주목되어야 한다. 일 실시예에서, 응답(420)은 워크스테이션(402)을, 네트워크(426)를 통해 워크스테이션(402)에 대해 가장 바람직한 접속을 갖도록 기대되는 특정 서버(406)로 지칭할 수 있다. 또다른 실시예에서, 서버들(406) 각각은, 일 유형의 멀웨어 응답(420)의 검출에 대해, 워크 스테이션(402)을 특정 서버(406)로 지칭하고, 그리고 상이한 유형의 멀웨어 응답(420)의 검출에 대해, 워크 스테이션(402)을 상이한 서버(406)로 지칭할 수 있도록, 하나 이상의 특정 위협들에 대한 멀웨어 클리닝을 제공하기 위해 이용될 수 있다.
도 4에 도시된 통신 네트워크들 각각(즉, 418, 420, 422, 및 424) 뿐만 아니라 기재되었지만 구체적으로 도시되지는 않은 네트워크 통신들이, 전송 제어 프롤토콜(TCP), 사용자 데이터그램 프로토콜(UDP), 및 스트림 제어 전송 프로토콜(SCTP)을 포함하지만 이에 제한되지 않은 다수의 전송 프로토콜들을 이용할 수 있다는 점이 당업자에 의해 이해될 것이다. 또한, 다양한 측정들이 데이터 암호화, 메시지 인증 등과 같은 안전하고 신뢰가능한 통신들을 보장하기 위해 취해질 수 있다는 점이 이해될 것이다.
도 5를 참조하면, 일 실시예에서, 클라우드 기술을 사용하여 동적 멀웨어 클리닝을 위한 요청을 수신하고 프로세싱하기 위한 프로세스가 502에서, 네트워크(426)를 통한 서버(404)에서의 디바이스(402)로부터의 멀웨어 클리닝 요청(418)의 수신으로 시작한다. 수신 디바이스가 서버로서 기술되지만, 수신 디바이스가 하기에 기술된 바와 같이 멀웨어 클리닝 요청을 수신하고 요청을 프로세싱할 수 있는 임의의 네트워크 디바이스일 수 있다는 점이 이해될 것이다. 일 실시예에서, 네트워크(426)는 인터넷일 수 있지만, 네트워크(426)는, 예를 들어, 도 1에서 위에 논의된 네트워크들 중 임의의 네트워크와 같은, 디바이스(402)와 서버(404) 사이의 통신들을 용이하게 할 수 있는 임의의 통신 네트워크일 수 있다. 일 실시예에서, 요청(418)은 디바이스 상에 설치된 안티바이러스 애플리케이션의 제공자와 연계된 서버(404)에 의해 수신될 수 있다. 일 실시예에서, 요청(418)은 DNS 요청일 수 있다. 요청(418)은 디바이스 상에서 검출된 특정 유형의 멀웨어를 식별할 수 있다. 그러나, 요청(418)은 수신 디바이스(404)로 하여금 검출된 멀웨어와 연관된 적절한 클리닝 응답을 식별하게 할 수 있는 임의의 정보를 포함할 수 있다.
단계(504)에서, 서버(404)는 요청(418)의 멀웨어 정의 부분을 식별한다. 요청(418)의 멀웨어 정의 부분은 서버(404)로 하여금 검출된 멀웨어와 연관된 적절한 클리닝 응답(420)을 식별하게 하기 위해 디바이스(402) 상에서 검출된 특정 유형의 멀웨어를 식별할 수 있다. 일 실시예에서, 요청(418)의 멀웨어 정의 부분을 식별하는 것은 디바이스(402)로부터 요청(418)을 암호해독하는 것을 포함할 수 있다. 또다른 실시예에서, 요청(418)의 멀웨어 정의 부분을 식별하는 것은 요청을 파싱하는 것을 포함할 수 있다. 예를 들어, 요청(418)은 요청(418)의 멀웨어 정의 부분으로부터 분리될 수 있는, 디바이스(402)에 설치된 안티바이러스 애플리케이션과 연관된 버전 및 라이센싱 정보, 디바이스(402)의 지리적 및/또는 네트워크 위치 등을 포함할 수 있다.
요청(418)의 멀웨어 정의 부분에 위치한 경우, 서버(404)는 506에서 식별된 멀웨어 정의를 매칭하는 레코드들에 대해 탐색할 수 있다. 일 실시예에서, 서버(404)는 공지된 멀웨어 위협들을 대응하는 클리닝 응답들과 연관시키는 데이터 스토어(428) 내의 데이터베이스 룩업을 수행하여, 요청(418)에서 식별된 특정 멀웨어 정의에 매칭하는 레코드를 검색할 수 있다. 또다른 실시예에서, 요청(418)의 멀웨어 정의 부분이 멀웨어로서 검출된 파일의 해시를 포함하는 경우, 해시는 공지된 멀웨어를 나타내는 파일 해시들 및 대응하는 멀웨어 클리닝 응답들(420)의 데이터 스토어(428)를 탐색하기 위해 사용될 수 있다.
508에서 특정 멀웨어 정의에 대한 매칭 레코드가 위치되지 않는 경우, 특정 멀웨어 정의에 대응하는 새로운 멀웨어 레코드는 510에서 생성될 수 있다. 일 실시예에서, 멀웨어 정의는 전술된 데이터 스토어(428)에 추가될 수 있다. 새로운 멀웨어 레코드는 멀웨어 정의를 포함한 요청(418)에 관한 추가 정보를 포함할 수 있다. 예를 들어, 멀웨어 레코드는 디바이스(402)의 시스템 정보, 디바이스(402)의 위치 등과 같은 서버(404)에 의해 수신된 요청(418)을 개시한 디바이스에 관한 정보를 제공할 수 있다. 일 실시예에서, 새로운 멀웨어 레코드의 생성은 새로운 멀웨어 위협이 관측되었다는 경보를 제공할 수 있다. 예를 들어, 경보는 안티바이러스 애플리케이션의 제공자와 연관된 한 명 이상의 사람들에게 제공될 수 있다. 이러한 경보는 새롭게 관측된 멀웨어에 대한 적절한 클리닝 응답(420)을 결정하기 위한 프로세스를 개시할 수 있다.
508에서 요청의 멀웨어 정의 부분에 매칭하는 레코드가 위치되는 경우, 512에서 이용가능한 클리닝 응답(420)이 위치된 레코드와 연관되는지의 여부가 결정된다. 일 실시예에서, 위치된 레코드가 존재하는 데이터 스토어(428)와 연관된 클리닝 필드가 널(null)이 아닌 경우, 클리닝 응답(420)이 존재한다고 결정될 수 있다. 클리닝 응답(420)이 512에서 이용가능하지 않은 것으로 결정되는 경우, 예를 들어, 요청(418)의 멀웨어 정의에 매칭하는 멀웨어 정의가 이전에 레코딩되지 않았지만 적절한 클리닝 응답(420)이 아직 결정되지 않은 경우, 또는 새로운 멀웨어 레코드가 510에서 생성된 경우, 514에서 요청이 큐잉(queue)될 수 있다. 요청은 멀웨어에 대응하기 위한 적절한 클리닝 응답(420)이 결정될 때까지 유지될 수 있다. 일 실시예에서, 서버는 클리닝 응답(420)이 서버가 이용가능할 때 제공될 것이라는 표시를 디바이스에 전송할 수 있다. 큐잉된 요청에 응답하여, 서버는 클리닝 응답(420)이 이용가능한지를 결정하기 위해 멀웨어 정의에 매칭하는 레코드를 계속 모니터링할 수 있다. 일 실시예에서, 클리닝 응답(420)이 요청(418)과 연관된 멀웨어에 대해 이용가능할 때, 멀웨어 정의에 매치하는 데이터 스토어(428)의 레코드는 레코드의 클리닝 필드에 적절한 클리닝 응답(420)을 포함하도록 업데이트될 수 있다.
클리닝 응답(420)이 512 또는 516 중 어느 하나에서 이용가능한 경우, 요청(418)에 대한 클리닝 응답(420)은 518에서 디바이스에 전송된다. 위에서 기술된 바와 같이, 응답(420)은 디바이스에 클리닝 응답(420)을 전달할 수 있는 임의의 바람직한 네트워크 프로토콜을 이용할 수 있다. 클리닝 응답은 전술된 응답들 중 임의의 것의 형태를 취할 수 있다. 그 문제에 대해, 응답(420)은 네트워크를 통해 멀웨어 클리닝을 제공할 수 있는 임의의 형태를 취할 수 있다.
이전의 개시내용이 로컬 디바이스에 설치된 안티바이러스 애플리케이션에 의해 수행되는 다양한 기능들을 포함하는 특정 실시예들을 지칭했지만, 안티바이러스 애플리케이션의 핵심 기능성이 클라우드 기술을 이용하여 거의 전체적으로 구현될 수 있다는 점이 주목될 것이다. 개시된 기법들을 이용하여, 안티바이러스 애플리케이션들은 멀웨어 위협들의 검출 및 클리닝의 공급 모두를 위해 클라우드 기술을 구현할 수 있다. 예를 들어, 디바이스 상에 설치된 안티바이러스 애플리케이션은 클라우드 기술을 사용하여 멀웨어 검출 및 클리닝을 요청하도록 디바이스를 재촉하는 제한된 기능성만을 수행할 수 있다. 이러한 시스템은 디바이스 상의 안티바이러스 애플리케이션의 기능들을 디스에이블하려고 하는 공격들의 효과를 감소시키고, 안티바이러스 애플리케이션들에 의한 프로세싱 사용을 감소시킴으로써 디바이스 성능을 개선하고, 안티바이러스 애플리케이션들과 연관된 빈번한 소프트웨어 업데이트들의 제공과 연관된 비용들을 감소시키거나 제거하기 위해 바람직할 수 있다.
위의 기재가 제한적인 것이 아니라 예시적인 것으로 의도된다는 점이 이해될 것이다. 예를 들어, 전술된 실시예들이 서로 결합하여 사용될 수 있다. 많은 다른 실시예들은 위의 기재를 리뷰할 때 당업자에게 명백할 것이다. 따라서, 발명의 범위는 첨부된 청구항들을 참조하여, 이러한 청구항들의 자격을 부여받는(entitle) 등가물들의 전체 범위와 함께 결정되어야 한다.
위에서 설명된 바와 같이, 개시된 실시예들은: 프로세서를 이용하여 네트워크에 접속된 제1 디바이스 상에서 잠재적 멀웨어를 검출하는 단계; 프로세서를 이용하여, 제1 디바이스로부터의 요청(예를 들어, 도메인 명칭 시스템 질의 또는 인증 정보)을 네트워크를 통해 제2 디바이스로 전송하는 단계 - 요청은 제2 디바이스로 하여금 클리닝 응답을 결정하게 하기 위한 정보를 포함함 -; 및 프로세서를 이용하여, 제2 디바이스로부터의 클리닝 응답을 제1 디바이스에서 네트워크를 통해 수신하는 단계 - 클리닝 응답은 검출된 잠재적 멀웨어를 삭제하기 위해 제1 디바이스에 의해 사용가능함 - 를 포함하는, 멀웨어 클리닝을 제공하기 위한 예시적인 방법을 포함한다. 예시적인 방법은, 제1 디바이스로부터의 요청을 제2 디바이스로 전송하기 전에 검출된 잠재적 멀웨어에 대응하는 적절한 클리닝 절차들이 제1 디바이스 상에 존재하지 않음을, 프로세서를 이용하여 결정하는 단계를 더 포함할 수 있다. 검출된 잠재적 멀웨어에 대응하는 적절한 클리닝 절차들이 제1 디바이스 상에 존재하지 않는다고 결정하는 동작은 기존의 클리닝 절차들이 수용불가능하다고 결정하는 단계를 포함할 수 있다. 대안적으로, 클리닝 응답은 제1 디바이스 상에 저장된 클리닝 루틴들을 실행하기 위한 명령어들을 포함할 수 있거나, 또는 클리닝 응답은 제1 디바이스에 의해 실행될 클리닝 루틴들을 포함할 수 있다. 일 예에서, 클리닝 응답은 제1 디바이스에 의해 실행될 클리닝 루틴들의 제1 세트 및 제1 디바이스 상에 저장된 클리닝 루틴들의 제2 세트를 실행하기 위한 명령어들을 포함한다. 또한, 제1 디바이스 상에서 잠재적 멀웨어를 검출하는 단계는 제1 디바이스의 파일의 발견 기반 분석(heuristic based analysis)을 수행하는 것을 포함한다. 일 예에서, 클리닝 응답은 추가적인 클리닝 응답을 제공하도록 제1 디바이스가 네트워크에 접속된 제3 디바이스에게 요청하기 위한 명령어들을 포함한다. 선택적으로, 네트워크를 통해 제1 디바이스에서 제3 디바이스로부터의 추가적인 클리닝 응답을 수신하고, 추가적인 클리닝 응답은 검출된 멀웨어를 삭제하기 위해 제1 디바이스에 의해 사용가능하다.

Claims (21)

  1. 명령어들이 저장된 비일시적인 컴퓨터 판독가능 매체로서, 상기 명령어들은 실행될 때, 프로그램 가능한 디바이스로 하여금,
    네트워크에 접속된 프로그램 가능한 디바이스 상에서 잠재적 멀웨어를 검출하고,
    상기 잠재적 멀웨어에 대응하는 클리닝 응답에 대한 상기 프로그램 가능한 디바이스로부터의 요청을 상기 네트워크를 통해 전송하고,
    상기 요청에 응답하여 상기 네트워크를 통해 상기 클리닝 응답을 수신하게 하고,
    상기 수신된 클리닝 응답은,
    상기 프로그램 가능한 디바이스 상에 이전에 저장된 클리닝 루틴들을 실행하기 위한 명령어들;
    상기 프로그램 가능한 디바이스에 의해 실행될 클리닝 루틴들; 및
    다른 디바이스로부터 상기 클리닝 응답을 획득하기 위한 명령어들 중 하나 이상을 포함하고,
    상기 클리닝 루틴들은, 상기 프로그램 가능한 디바이스에 의해 실행될 때 상기 프로그램 가능한 디바이스로 하여금 상기 검출된 잠재적 멀웨어를 삭제하게 하는 명령어들을 포함하는, 비일시적인 컴퓨터 판독가능 매체.
  2. 제1항에 있어서,
    상기 명령어들은, 실행될 때 상기 프로그램 가능한 디바이스로 하여금, 상기 요청을 전송하기 전에는 상기 검출된 잠재적 멀웨어에 대응하는 클리닝 절차들을 상기 프로그램 가능한 디바이스에서 결정할 수 없는 것으로 결정하게 하는, 비일시적인 컴퓨터 판독가능 매체.
  3. 제2항에 있어서,
    실행될 때 상기 프로그램 가능한 디바이스로 하여금 상기 검출된 잠재적 멀웨어에 대응하는 클리닝 절차들을 상기 프로그램 가능한 디바이스에서 결정할 수 없는 것으로 결정하게 하는 명령어들은,
    기존의 클리닝 절차들이 수용불가능하다고 결정하는 것을 포함하는, 비일시적인 컴퓨터 판독가능 매체.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 제1항에 있어서,
    실행될 때 상기 프로그램 가능한 디바이스로 하여금 상기 프로그램 가능한 디바이스 상에서 잠재적 멀웨어를 검출하게 하는 명령어들은, 실행될 때 상기 프로그램 가능한 디바이스로 하여금 상기 프로그램 가능한 디바이스의 파일의 발견 기반 분석(heuristic based analysis)을 수행하게 하는 명령어들을 포함하는, 비일시적인 컴퓨터 판독가능 매체.
  8. 제1항에 있어서,
    상기 요청은 도메인 명칭 시스템 질의인, 비일시적인 컴퓨터 판독가능 매체.
  9. 제1항에 있어서,
    상기 요청은 암호화되는, 비일시적인 컴퓨터 판독가능 매체.
  10. 제1항에 있어서,
    상기 요청은 상기 잠재적 멀웨어를 나타내는 파일의 해시(hash)를 포함하는, 비일시적인 컴퓨터 판독가능 매체.
  11. 제1항에 있어서,
    상기 요청은 인증 정보를 포함하는, 비일시적인 컴퓨터 판독가능 매체.
  12. 삭제
  13. 제1항에 있어서,
    상기 명령어들은, 실행될 때 상기 프로그램 가능한 디바이스로 하여금 상기 네트워크를 통해 상기 다른 디바이스로부터 상기 클리닝 응답을 수신하게 하는 명령어들을 더 포함하는, 비일시적인 컴퓨터 판독가능 매체.
  14. 시스템으로서,
    저장 디바이스; 및
    상기 저장 디바이스에 동작적으로 결합된 프로세서 - 상기 프로세서는 상기 저장 디바이스에 저장된 명령어들을 실행하도록 구성됨 -
    를 포함하고, 상기 명령어들은 실행될 때 상기 프로세서로 하여금,
    상기 네트워크를 통해 클라이언트로부터 요청을 수신하고 - 상기 클라이언트로부터의 요청은 상기 클라이언트 상의 검출된 잠재적 멀웨어에 관련된 정보를 포함함 -,
    클리닝 응답을 결정하고,
    상기 요청에 응답하여 상기 네트워크를 통해 상기 클라이언트에 상기 클리닝 응답을 전송하게 하는 명령어들을 포함하고,
    상기 클라이언트에 전송된 상기 클리닝 응답은,
    상기 클라이언트 상에 이전에 저장된 클리닝 루틴들을 실행하기 위한 명령어들,
    상기 클라이언트에 의해 실행될 클리닝 루틴들, 및
    다른 디바이스로부터 클리닝 응답을 획득하기 위한 명령어들 중 하나 이상을 포함하고,
    상기 클리닝 루틴들은 상기 클라이언트에 의해 실행될 때 상기 클라이언트로 하여금 상기 검출된 잠재적 멀웨어를 삭제하게 하는 명령어들을 포함하는 시스템.
  15. 제14항에 있어서,
    상기 요청은 도메인 명칭 시스템 질의인 시스템.
  16. 제14항에 있어서,
    상기 클리닝 응답을 결정하는 동작은 상기 검출된 잠재적 멀웨어에 대응하는 정보에 대해 상기 서버의 데이터 스토어를 탐색하는 것을 포함하는 시스템.
  17. 삭제
  18. 제14항에 있어서,
    상기 클리닝 응답은 암호화되는 시스템.
  19. 명령어들이 저장된, 멀웨어 클리닝을 제공하기 위한 비일시적인 컴퓨터 판독가능 매체로서, 상기 명령어들은 실행될 때, 프로그램 가능한 디바이스로 하여금,
    네트워크를 통해 멀웨어 클리닝 요청을 수신하고,
    상기 멀웨어 클리닝 요청의 멀웨어 정의 부분을 식별하고,
    상기 식별된 멀웨어 정의 부분에 대응하는 정보에 대해 데이터 스토어를 탐색하고,
    상기 멀웨어 클리닝 요청에 응답하여, 상기 네트워크를 통해 클리닝 응답을 전송하게 하고 - 상기 클리닝 응답은 상기 정보로부터 결정됨 -
    상기 클리닝 응답은,
    이전에 저장된 클리닝을 실행하기 위한 명령어들;
    실행될 클리닝 루틴들; 및
    다른 디바이스로부터 클리닝 응답을 획득하기 위한 명령어들 중 하나 이상을 포함하고,
    상기 클리닝 루틴들은, 실행될 때, 상기 검출된 잠재적 멀웨어의 삭제를 야기하는 명령어들을 포함하는, 비일시적인 컴퓨터 판독 가능 매체.
  20. 제19항에 있어서,
    실행될 때, 상기 프로그램 가능한 디바이스로 하여금 상기 멀웨어 클리닝 요청의 멀웨어 정의 부분을 식별하게 하는 명령어들은,
    실행될 때 상기 프로그램 가능한 디바이스로 하여금 상기 멀웨어 클리닝 요청을 파싱(parse)하게 하는 명령어들을 포함하는, 비일시적인 컴퓨터 판독 가능 매체.
  21. 네트워크에 접속된 프로그램 가능한 디바이스 상에서 잠재적 멀웨어를 검출하는 단계;
    클리닝 응답에 대한 요청을 상기 네트워크를 통해 전송하는 단계;
    상기 네트워크를 통해 상기 클리닝 응답을 수신하는 단계 - 상기 수신된 클리닝 응답은,
    상기 프로그램 가능한 디바이스에 이전에 저장된 클리닝 루틴들을 실행하기 위한 명령어들;
    상기 프로그램 가능한 디바이스에 의해 실행될 클리닝 루틴들; 및
    다른 디바이스로부터 클리닝 응답을 획득하기 위한 명령어들 중 하나 이상을 포함함 -; 및
    상기 검출된 잠재적 멀웨어를 삭제하도록 상기 클리닝 루틴들을 실행하는 단계를 포함하는, 방법.
KR1020147007173A 2011-09-07 2012-09-06 클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝 KR101607951B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/227,407 US8677493B2 (en) 2011-09-07 2011-09-07 Dynamic cleaning for malware using cloud technology
US13/227,407 2011-09-07
PCT/US2012/053995 WO2013036664A1 (en) 2011-09-07 2012-09-06 Dynamic cleaning for malware using cloud technology

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020167007923A Division KR20160039306A (ko) 2011-09-07 2012-09-06 클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝

Publications (2)

Publication Number Publication Date
KR20140061459A KR20140061459A (ko) 2014-05-21
KR101607951B1 true KR101607951B1 (ko) 2016-03-31

Family

ID=47754206

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020167007923A KR20160039306A (ko) 2011-09-07 2012-09-06 클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝
KR1020147007173A KR101607951B1 (ko) 2011-09-07 2012-09-06 클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020167007923A KR20160039306A (ko) 2011-09-07 2012-09-06 클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝

Country Status (6)

Country Link
US (1) US8677493B2 (ko)
EP (1) EP2754081B1 (ko)
JP (1) JP5897132B2 (ko)
KR (2) KR20160039306A (ko)
CN (1) CN103843002B (ko)
WO (1) WO2013036664A1 (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9384349B2 (en) * 2012-05-21 2016-07-05 Mcafee, Inc. Negative light-weight rules
US8782793B2 (en) * 2012-05-22 2014-07-15 Kaspersky Lab Zao System and method for detection and treatment of malware on data storage devices
US9143519B2 (en) 2013-03-15 2015-09-22 Mcafee, Inc. Remote malware remediation
WO2014142986A1 (en) 2013-03-15 2014-09-18 Mcafee, Inc. Server-assisted anti-malware client
WO2014143000A1 (en) * 2013-03-15 2014-09-18 Mcafee, Inc. Server-assisted anti-malware
US9736179B2 (en) * 2013-09-30 2017-08-15 Fireeye, Inc. System, apparatus and method for using malware analysis results to drive adaptive instrumentation of virtual machines to improve exploit detection
RU2571721C2 (ru) * 2014-03-20 2015-12-20 Закрытое акционерное общество "Лаборатория Касперского" Система и способ обнаружения мошеннических онлайн-транзакций
US9009836B1 (en) 2014-07-17 2015-04-14 Kaspersky Lab Zao Security architecture for virtual machines
JP6282217B2 (ja) * 2014-11-25 2018-02-21 株式会社日立システムズ 不正プログラム対策システムおよび不正プログラム対策方法
CN104573515A (zh) * 2014-12-19 2015-04-29 百度在线网络技术(北京)有限公司 一种病毒处理方法、装置和系统
US9332029B1 (en) 2014-12-24 2016-05-03 AO Kaspersky Lab System and method for malware detection in a distributed network of computer nodes
CN105095754A (zh) * 2015-05-11 2015-11-25 北京奇虎科技有限公司 一种处理病毒应用的方法、和装置和移动终端
US10305928B2 (en) 2015-05-26 2019-05-28 Cisco Technology, Inc. Detection of malware and malicious applications
WO2017003580A1 (en) * 2015-06-27 2017-01-05 Mcafee, Inc. Mitigation of malware
US9667657B2 (en) * 2015-08-04 2017-05-30 AO Kaspersky Lab System and method of utilizing a dedicated computer security service
US9606854B2 (en) 2015-08-13 2017-03-28 At&T Intellectual Property I, L.P. Insider attack resistant system and method for cloud services integrity checking
US9917811B2 (en) 2015-10-09 2018-03-13 International Business Machines Corporation Security threat identification, isolation, and repairing in a network
JP6908874B2 (ja) * 2016-10-27 2021-07-28 コニカミノルタ株式会社 情報処理システム、情報処理装置およびプログラム
US11232205B2 (en) * 2019-04-23 2022-01-25 Microsoft Technology Licensing, Llc File storage service initiation of antivirus software locally installed on a user device
US11232206B2 (en) * 2019-04-23 2022-01-25 Microsoft Technology Licensing, Llc Automated malware remediation and file restoration management
US20220141234A1 (en) * 2020-11-05 2022-05-05 ThreatQuotient, Inc. Ontology Mapping System
US12010517B1 (en) * 2021-05-10 2024-06-11 Zimperium, Inc. Dynamic detection for mobile device security
CN114491543A (zh) * 2022-04-19 2022-05-13 南京伟跃网络科技有限公司 一种针对新出现恶意代码的分析方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198054A (ja) * 2009-02-23 2010-09-09 National Institute Of Information & Communication Technology コンピュータ検査システム、コンピュータ検査方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5960170A (en) * 1997-03-18 1999-09-28 Trend Micro, Inc. Event triggered iterative virus detection
US6622150B1 (en) 2000-12-18 2003-09-16 Networks Associates Technology, Inc. System and method for efficiently managing computer virus definitions using a structured virus database
US20020116639A1 (en) 2001-02-21 2002-08-22 International Business Machines Corporation Method and apparatus for providing a business service for the detection, notification, and elimination of computer viruses
JP2004178033A (ja) * 2002-11-25 2004-06-24 Hitachi Ltd 分散システムにおけるセキュリティ管理支援方法およびプログラム
JP2004252642A (ja) * 2003-02-19 2004-09-09 Matsushita Electric Ind Co Ltd ウイルス検出方法、ウイルス検出装置、ウイルス検出サーバ及びウイルス検出クライアント
JP4412156B2 (ja) * 2004-11-30 2010-02-10 沖電気工業株式会社 処理装置
US7673341B2 (en) * 2004-12-15 2010-03-02 Microsoft Corporation System and method of efficiently identifying and removing active malware from a computer
US8516583B2 (en) * 2005-03-31 2013-08-20 Microsoft Corporation Aggregating the knowledge base of computer systems to proactively protect a computer from malware
US7836500B2 (en) 2005-12-16 2010-11-16 Eacceleration Corporation Computer virus and malware cleaner
US7523502B1 (en) * 2006-09-21 2009-04-21 Symantec Corporation Distributed anti-malware
US8291496B2 (en) * 2008-05-12 2012-10-16 Enpulz, L.L.C. Server based malware screening
US8667583B2 (en) * 2008-09-22 2014-03-04 Microsoft Corporation Collecting and analyzing malware data
US9665712B2 (en) 2010-02-22 2017-05-30 F-Secure Oyj Malware removal

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010198054A (ja) * 2009-02-23 2010-09-09 National Institute Of Information & Communication Technology コンピュータ検査システム、コンピュータ検査方法

Also Published As

Publication number Publication date
US8677493B2 (en) 2014-03-18
CN103843002A (zh) 2014-06-04
JP5897132B2 (ja) 2016-03-30
US20130061325A1 (en) 2013-03-07
CN103843002B (zh) 2017-02-15
EP2754081A4 (en) 2015-04-29
KR20140061459A (ko) 2014-05-21
JP2014525639A (ja) 2014-09-29
KR20160039306A (ko) 2016-04-08
EP2754081A1 (en) 2014-07-16
EP2754081B1 (en) 2019-05-01
WO2013036664A1 (en) 2013-03-14

Similar Documents

Publication Publication Date Title
KR101607951B1 (ko) 클라우드 기술을 사용한 멀웨어에 대한 동적 클리닝
US11489855B2 (en) System and method of adding tags for use in detecting computer attacks
US10389740B2 (en) Detecting a malicious file infection via sandboxing
US7650639B2 (en) System and method for protecting a limited resource computer from malware
US7945787B2 (en) Method and system for detecting malware using a remote server
JP5497060B2 (ja) 好ましくないソフトウェアまたは悪意のあるソフトウェアを分類するシステムおよび方法
US8898788B1 (en) Systems and methods for malware attack prevention
US20170034189A1 (en) Remediating ransomware
US20130081129A1 (en) Outbound Connection Detection and Blocking at a Client Computer
JP2019023918A (ja) スクリプトの実行をブロックするシステム及び方法
US9710646B1 (en) Malware detection using clustering with malware source information
US11290484B2 (en) Bot characteristic detection method and apparatus
US12056237B2 (en) Analysis of historical network traffic to identify network vulnerabilities
US12058147B2 (en) Visualization tool for real-time network risk assessment
EP2541877A1 (en) Method for changing a server address and related aspects
US8640242B2 (en) Preventing and detecting print-provider startup malware
JP6635029B2 (ja) 情報処理装置、情報処理システム及び通信履歴解析方法
Kumar et al. A Network Based Approach to Malware Detection in Large IT Infrastructures
WO2011095765A1 (en) Client server communication system and related aspects

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190313

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20200227

Year of fee payment: 5