KR20140020414A - Method of malware scanning using a checksum list and terminal apparatus using the same - Google Patents

Method of malware scanning using a checksum list and terminal apparatus using the same Download PDF

Info

Publication number
KR20140020414A
KR20140020414A KR1020120086670A KR20120086670A KR20140020414A KR 20140020414 A KR20140020414 A KR 20140020414A KR 1020120086670 A KR1020120086670 A KR 1020120086670A KR 20120086670 A KR20120086670 A KR 20120086670A KR 20140020414 A KR20140020414 A KR 20140020414A
Authority
KR
South Korea
Prior art keywords
malware
checksum
list
scan
target file
Prior art date
Application number
KR1020120086670A
Other languages
Korean (ko)
Inventor
유인선
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020120086670A priority Critical patent/KR20140020414A/en
Publication of KR20140020414A publication Critical patent/KR20140020414A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • 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/561Virus type analysis
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

According to an embodiment of the present inventive concept, a terminal device is provided. The terminal device comprises: a central processing unit (CPU); a memory connected to the central processing unit, and storing a list management unit executed by the central processing unit and managing a checksum list; and a system on a chip connected to a bus and having a cipher/authentication (CA) engine. The list management unit requests the cipher/authentication engine of the system on the chip to obtain a checksum for a scan object file as a malware scan object, receives the checksum for the scan object file from the cipher/authentication engine of the system on the chip, and determines whether to perform malware scan for the scan object file according to a result obtained by determining whether the received checksum is in the checksum list. [Reference numerals] (31) First list; (32) Second list; (55) C/A engine; (70) AM application; (71) AM UI; (72) AM engine; (73) Pattern DB; (80) List management unit

Description

체크섬 리스트를 이용한 멀웨어 스캔 방법 및 이를 이용한 단말장치{Method of malware scanning using a checksum list and Terminal apparatus using the same}Method of malware scanning using a checksum list and Terminal apparatus using the same}

본 발명은 체크섬 리스트를 이용한 멀웨어 스캔 방법 및 이를 이용한 단말장치에 관한 것이다.The present invention relates to a malware scanning method using a checksum list and a terminal device using the same.

인터넷이 광범위하게 사용되면서 웜이나 트로이목마, 바이러스, DDoS 등과 같은 다양한 형태의 악성 멀웨어들이 나타나고 그 피해도 커지고 있다. 따라서, 외부 네트워크로부터 디바이스를 보호하기 위해 안티멀웨어 엔진 및/또는 방화벽 엔진과 같은 네트워크 침해 대응 방법 및 장치가 반드시 필요하게 되었다.With the widespread use of the Internet, malicious malware of various types such as worms, Trojan horses, viruses, DDoS, etc. have appeared and the damage is increasing. Thus, there is a need for network breach response methods and devices such as anti-malware engines and / or firewall engines to protect devices from external networks.

특히, 모바일 기기의 경우는 사용할 수 있는 리소스가 제한되어 있다. 그러므로 제한된 범위의 리소스 내에서 멀웨어 스캔을 신속하고 효과적으로 할 수 있는 기술이 요구된다. In particular, in the case of a mobile device, available resources are limited. Therefore, there is a need for a technique that can quickly and effectively perform malware scanning within a limited range of resources.

본 발명적 개념의 예시적 실시예에 따르면, 가용 리소스가 제한된 상황에서도 신속하게 멀웨어 스캐닝을 수행할 수 있는, 체크섬 리스트를 이용한 멀웨어 스캔 방법 및 이를 이용한 단말장치를 제공하는 것을 목적으로 한다.According to an exemplary embodiment of the present invention, an object of the present invention is to provide a malware scanning method using a checksum list and a terminal device using the same, which can quickly perform malware scanning even in a situation where available resources are limited.

본 발명적 개념의 일 실시예에 따르면, 중앙처리장치(CPU); 상기 중앙처리장치와 연결되어 있고, 상기 중앙처리장치에 의해 실행되며 체크섬 리스트를 관리하는 리스트 관리부를 저장하는 메모리; 및 상기 버스와 연결되어 있고, 암호/인증(CA) 엔진을 구비하는 시스템 온 칩;을 포함하며, 상기 리스트 관리부는, 멀웨어 스캔 대상이 되는 스캔대상 파일에 대한 체크섬을 구할 것을 상기 시스템 온 칩의 암호/인증 엔진에게 요청을 하고, 상기 시스템 온 칩의 암호/인증 엔진으로부터 상기 스캔대상 파일에 대한 체크섬을 제공받고, 제공받은 체크섬이 상기 체크섬 리스트에 있는지 여부를 판단한 결과에 따라 상기 스캔대상 파일에 대하여 멀웨어 스캔을 수행할지 여부를 결정하는 단말장치가 제공된다.According to an embodiment of the present invention, a central processing unit (CPU); A memory coupled to the central processing unit, the memory storing a list management unit executed by the central processing unit and managing a checksum list; And a system on chip connected to the bus and having a cryptographic / authentication (CA) engine, wherein the list manager is configured to obtain a checksum for a scan target file to be a malware scan target. Requesting a cipher / authentication engine, receiving a checksum for the scan target file from the cipher / authentication engine of the system on chip, and determining whether or not the checksum provided is in the checksum list. There is provided a terminal device for determining whether to perform a malware scan.

본 발명적 개념의 일 실시예에 따르면, 모바일 단말장치에서의 안티멀웨어 스캔 방법에 있어서, 체크섬 리스트를 저장하는 단계; 스캔대상 파일의 체크섬을 암호/인증 엔진이 계산하는 단계; 상기 암호/인증 엔진이 계산한 체크섬이 상기 체크섬 리스트에 있는지 여부에 따라서, 상기 스캔대상 파일에 대한 안티멀웨어 스캔 동작을 수행할지 여부를 결정하는 단계;를 포함하며, 상기 암호/인증 엔진은 상기 모바일 단말장치에 구비된 시스템 온 칩에 구비된 모바일 단말장치에서의 안티멀웨어 스캔 방법이 제공된다. According to an embodiment of the present invention, an anti-malware scanning method in a mobile terminal device, the method comprising: storing a checksum list; Calculating a checksum of the scan target file by the encryption / authentication engine; Determining whether to perform an antimalware scan operation on the scan target file according to whether or not the checksum calculated by the cipher / authentication engine is in the checksum list. Provided are an anti-malware scanning method in a mobile terminal provided in a system on chip provided in a terminal.

본 발명적 개념의 일 실시예에 따르면, 모바일 단말장치에, 체크섬 리스트를 저장 및 관리하는 단계; 상기 모바일 단말장치에 구비된 시스템 온 칩이 스캔대상 파일의 체크섬을 계산하도록 하는 단계; 및 상기 암호/인증 엔진이 계산한 체크섬이 상기 체크섬 리스트에 있는지 여부에 따라서, 상기 스캔대상 파일에 대한 안티멀웨어 스캔 동작을 수행할지 여부를 결정하는 단계;를 실행시키는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체가 제공된다.According to an embodiment of the inventive concept, storing and managing a checksum list in a mobile terminal device; Allowing a system on chip included in the mobile terminal device to calculate a checksum of a scan target file; And determining whether to perform an anti-malware scan operation on the scan target file according to whether or not the checksum calculated by the cipher / authentication engine is in the checksum list. A recording medium is provided.

본 발명적 개념의 예시적 실시예에 따르면 신속하게 멀웨어 스캐닝을 수행할 수 있고, 나아가 가용 리소스가 제한된 상황에서도 신속하게 멀웨어 스캐닝이 수행될 수 있다. According to an exemplary embodiment of the inventive concept, malware scanning can be performed quickly, and malware scanning can be performed quickly even in a situation where available resources are limited.

도1은 본 발명적 개념의 예시적 실시예에 따른 단말장치의 블럭도이고,
도2는 단말장치에서 수행되는 일 실시예에 따른 멀웨어 스캔 동작을 설명하기 위한 도면이고,
도3은 도2의 멀웨어 스캔 방법을 설명하기 위한 흐름도이고,
도4는 단말장치에서 수행되는 다른 실시예에 따른 멀웨어 스캔 동작을 설명하기 위한 도면이고,
도5는 도4의 멀웨어 스캔 방법을 설명하기 위한 흐름도이고,
도6은 단말장치에서 수행되는 다른 실시예에 따른 멀웨어 스캔 동작을 설명하기 위한 도면이고,
도7은 도6의 멀웨어 스캔 방법을 설명하기 위한 흐름도이고,
도8은 단말장치에서 수행되는 다른 실시예에 따른 멀웨어 스캔 동작을 설명하기 위한 도면이고,
도9는 도8의 멀웨어 스캔 방법을 설명하기 위한 흐름도이다.
1 is a block diagram of a terminal device according to an exemplary embodiment of the inventive concept;
2 is a diagram illustrating a malware scan operation according to an embodiment performed by a terminal device;
3 is a flowchart illustrating a malware scanning method of FIG.
4 is a diagram illustrating a malware scan operation according to another embodiment performed by a terminal device;
5 is a flowchart illustrating a malware scanning method of FIG.
6 is a diagram illustrating a malware scan operation according to another embodiment performed by a terminal device;
FIG. 7 is a flowchart illustrating a malware scanning method of FIG. 6.
8 is a diagram illustrating a malware scan operation according to another embodiment performed by a terminal device;
9 is a flowchart illustrating a malware scanning method of FIG. 8.

이상의 본 발명의 목적들, 다른 목적들, 특징들 및 이점들은 첨부된 도면과 관련된 이하의 바람직한 실시예들을 통해서 쉽게 이해될 것이다. 그러나 본 발명은 여기서 설명되는 실시예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 오히려, 여기서 소개되는 실시예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다. BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features, and advantages of the present invention will become more readily apparent from the following description of preferred embodiments with reference to the accompanying drawings. However, the present invention is not limited to the embodiments described herein but may be embodied in other forms. Rather, the embodiments disclosed herein are provided so that the disclosure can be thorough and complete, and will fully convey the scope of the invention to those skilled in the art.

본 명세서에서, 어떤 구성요소가 다른 구성요소 상에 있다고 언급되는 경우에 그것은 다른 구성요소 상에 직접 형성될 수 있거나 또는 그들 사이에 제 3의 구성요소가 개재될 수도 있다는 것을 의미한다.In this specification, when an element is referred to as being on another element, it may be directly formed on another element, or a third element may be interposed therebetween.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다' 및/또는 '포함하는'은 언급된 구성요소는 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. As used herein, the terms "comprises" and / or "comprising" do not exclude the presence or addition of one or more other elements.

또한 본 명세서에서 임의의 파일에 대해 멀웨어 검사를 한다는 것은 해당 파일이 멀웨어의 특정 패턴을 포함하고 있는지를 검사하는 것으로, 이러한 의미로서 일반적으로 당업계에서 "파일을 검사한다", "멀웨어를 스캔한다" 또는 "파일을 스캔한다" 라고 표현한다. 따라서 본 명세서에서는 "멀웨어를 검사한다", "파일을 검사한다", "멀웨어를 스캔한다", 및 "파일을 스캔한다"라는 표현은 모두 동일한 의미를 가진다. In addition, the malware scanning of any file in this specification is to check whether the file contains a specific pattern of malware, and in this sense, generally, "scan a file" and "scan for malware" in the art. "Or" Scan a file ". Therefore, in this specification, the expressions "scan for malware", "scan for file", "scan for malware", and "scan for file" all have the same meaning.

이하, 도면을 참조하여 본 발명을 상세히 설명하도록 한다. 아래의 특정 실시예들을 기술하는데 있어서, 여러 가지의 특정적인 내용들은 발명을 더 구체적으로 설명하고 이해를 돕기 위해 작성되었다. 하지만 본 발명을 이해할 수 있을 정도로 이 분야의 지식을 갖고 있는 독자는 이러한 여러 가지의 특정적인 내용들이 없어도 사용될 수 있다는 것을 인지할 수 있다. 어떤 경우에는, 발명을 기술하는 데 있어서 흔히 알려졌으면서 발명과 크게 관련 없는 부분들은 본 발명을 설명하는 데 있어 혼돈이 오는 것을 막기 위해 기술하지 않음을 미리 언급해 둔다. Hereinafter, the present invention will be described in detail with reference to the drawings. In describing the specific embodiments below, various specific details have been set forth in order to explain the invention in greater detail and to assist in understanding it. However, those skilled in the art can understand that the present invention can be used without these various specific details. In some instances, it should be noted that portions of the invention that are well known in the description of the invention and are not significantly related to the invention do not describe confusion in describing the invention.

도1은 본 발명적 개념의 예시적 실시예에 따른 단말장치의 블록도이다. 1 is a block diagram of a terminal device according to an exemplary embodiment of the inventive concept.

도1을 참조하면, 일 실시예에 따른 단말장치(100)는 중앙처리장치(CPU)(10), 제1 메모리(20), 제2 메모리(30), 저장부(40), 및 시스템 온 칩(SOC)(50)을 포함할 수 있다. Referring to FIG. 1, a terminal device 100 according to an embodiment includes a central processing unit (CPU) 10, a first memory 20, a second memory 30, a storage unit 40, and a system on. Chip (SOC) 50 may be included.

단말장치(100)는 개인용 컴퓨터(PC), 스마트 폰, PDA, 모바일 기기, 네트워킹이 가능한 임베디드 디바이스, 또는 셀룰러 폰과 같은 임의의 디바이스 중 하나가 될 수 있다. The terminal device 100 may be one of a personal computer (PC), a smart phone, a PDA, a mobile device, an embedded device capable of networking, or any device such as a cellular phone.

도시된 실시예에서 단말장치(100)가 각종 하드웨어 및 이 하드웨어 위에 설치되는 드라이버, 펌웨어, 운영체제(OS) 및 다양한 어플리케이션을 더 포함할 수 있지만 본 명세서에서는 본 발명의 요지를 흐리지 않기 위해 생략하였다.In the illustrated embodiment, the terminal device 100 may further include various hardware and drivers installed on the hardware, firmware, an operating system (OS), and various applications, but are omitted in the present specification so as not to obscure the subject matter of the present invention.

CPU(10)는 단말장치(100)의 메인 프로세서에 해당하며, 예컨대 단말장치(100)가 스마트폰과 같은 모바일 기기인 경우 CPU(10)가 어플리케이션 프로세서(AP)에 포함된 프로세서를 의미할 수 있음을 당업자는 이해할 것이다. The CPU 10 corresponds to a main processor of the terminal device 100. For example, when the terminal device 100 is a mobile device such as a smartphone, the CPU 10 may mean a processor included in the application processor (AP). Those skilled in the art will understand.

제1 메모리(20)는 단말장치(100)의 메인 메모리로서 프로그램의 실행이나 데이터의 일시적 저장을 위해 프로그램 코드와 데이터를 저장할 수 있는 휘발성 저장장치이다. 제1 메모리(20)는 예컨대 DRAM, SRAM과 같은 메모리 장치로 구현될 수 있으나 여기에 한정되지 않는다. The first memory 20 is a main memory of the terminal device 100, and is a volatile storage device capable of storing program codes and data for executing a program or temporarily storing data. The first memory 20 may be implemented with, for example, a memory device such as DRAM or SRAM, but is not limited thereto.

제2 메모리(30)는 추가적으로 설치될 수 있는 휘발성 저장장치이고, SRAM, DRAM 등으로 구현될 수 있으나 여기에 한정되지 않는다. 제2 메모리(30)는 예컨대 캐시(cache) 메모리가 될 수 있고, 이 경우 제2 메모리(30)는 CPU(10)에 내장되어 구현될 수도 있다. The second memory 30 is a volatile storage device that can be additionally installed, but may be implemented as an SRAM or a DRAM, but is not limited thereto. The second memory 30 may be, for example, a cache memory, and in this case, the second memory 30 may be embodied in the CPU 10.

저장부(40)는 각종 소프트웨어와 펌웨어 및 데이터를 반영구적으로 저장할 수 있는 비휘발성 저장장치이다. 저장부(40)는 예를 들어 하드디스크 드라이브(HDD), 또는 플래시 메모리와 같은 SSD(Solid State Disk)로 구현될 수 있으나 여기에 한정되지 않는다. The storage unit 40 is a nonvolatile storage device capable of semi-permanently storing various software, firmware, and data. The storage unit 40 may be implemented as, for example, a solid state disk (SSD) such as a hard disk drive (HDD) or a flash memory, but is not limited thereto.

저장부(40)는 하나 이상의 안티멀웨어(AM) 어플리케이션, 및 안티멀웨어(AM) 엔진을 제어하기 위한 펌웨어들을 저장할 수 있고, 상기 AM 어플리케이션 및 펌웨어는 제1 메모리(20)에 로딩(loading)되어 실행되고, 스캔 대상이 되는 하나 이상의 파일도 제1 메모리(20)에 로딩되어 AM 엔진에 의해 스캔될 수 있다. 여기서 멀웨어는 바이러스, 애드웨어, 스파이웨어, 또는 트로이 목마와 같이 시스템의 동작을 방해하거나 위험에 노출되도록 하는 소프트웨어나 코드를 의미한다.The storage unit 40 may store one or more antimalware (AM) applications and firmware for controlling the antimalware (AM) engine, and the AM application and firmware are loaded into the first memory 20. One or more files to be executed and scanned may also be loaded into the first memory 20 and scanned by the AM engine. Malware here refers to software or code that disrupts the operation of the system or exposes it to risk, such as viruses, adware, spyware, or Trojan horses.

시스템 온 칩(SOC)(50)은 안티멀웨어(AM) 기능, 방화벽(FW) 기능, 및 암호/인증(Crypto-Auth) 기능을 갖는 시스템 온 칩(SOC)을 일 예로서 도시한 것으로, SOC(50)는 내부에 자체적인 CPU(51)와 메모리(52), 및 안티멀웨어(AM) 엔진(53), 방화벽(FW) 엔진, 및 암호/인증(CA) 엔진(55)을 포함할 수 있다. The system on chip (SOC) 50 illustrates an example of a system on chip (SOC) having an antimalware (AM) function, a firewall (FW) function, and a password / authentication (Crypto-Auth) function. 50 may include its own CPU 51 and memory 52, and anti-malware (AM) engine 53, firewall (FW) engine, and crypto / authentication (CA) engine 55. have.

그러나 상술한 실시예는 본 발명이 구현될 수 있는 일 예시에 불과하다. 즉 대안적인 실시예에서, AM 엔진(53), FW 엔진, 및 CA 엔진(55)이 SOC(50)를 사용하지 않고 구현될 수도 있다. 이 경우 CPU(51) 또는 메모리(52)는 필요가 없고 디바이스(100)가 AM 엔진(53), FW 엔진, 및 CA 엔진(55)을 직접 포함할 수 있다. 또한 또 다른 대안적인 실시예에서 AM 엔진(53), FW 엔진, 및 CA 엔진(55) 중 일부만이 SOC(50)에서 구현되도록 구성할 수도 있다.However, the above-described embodiment is only one example in which the present invention can be implemented. That is, in alternative embodiments, AM engine 53, FW engine, and CA engine 55 may be implemented without using SOC 50. In this case, the CPU 51 or the memory 52 is not necessary, and the device 100 may directly include the AM engine 53, the FW engine, and the CA engine 55. In yet another alternative embodiment, only some of the AM engine 53, the FW engine, and the CA engine 55 may be configured to be implemented in the SOC 50.

도2는 단말장치에서 수행되는 일 실시예에 따른 멀웨어 스캔 동작을 설명하기 위한 도면이다. 2 is a diagram illustrating a malware scanning operation according to an embodiment performed by a terminal device.

도2를 참조하면, 단말장치(100)는 안티멀웨어 기능을 갖는 안티멀웨어(AM) 어플리케이션(70), 멀웨어 패턴을 저장하는 패턴 DB(73), 멀웨어 스캔을 위한 파일의 리스트(31,32), 및 상기 리스트를 관리하는 리스트 관리부(80)를 포함할 수 있다. Referring to FIG. 2, the terminal device 100 includes an antimalware (AM) application 70 having an antimalware function, a pattern DB 73 storing a malware pattern, and lists of files 31 and 32 for malware scanning. , And a list manager 80 that manages the list.

일 실시예에서 AM 어플리케이션(70)은 AM 사용자 인터페이스(UI)(71) 및 AM 엔진(72)을 포함할 수 있다. AM UI(71)은 사용자로부터 안티멀웨어 관련 명령을 입력받고 멀웨어 스캔의 결과를 사용자에게 보여주는 인터페이스 기능부이고, AM 엔진(72)은 멀웨어 스캔을 수행하는 엔진부로서, 예컨대, 스캔할 대상이 되는 파일들을 패턴 DB(73)에 저장된 멀웨어 패턴들과 매칭하는 동작을 수행함으로써 멀웨어 스캔을 수행할 수 있다. In one embodiment, the AM application 70 may include an AM user interface (UI) 71 and an AM engine 72. The AM UI 71 is an interface function unit that receives an anti-malware related command from a user and shows a result of a malware scan to the user. The AM engine 72 is an engine unit that performs a malware scan. The malware scan may be performed by performing an operation of matching files with malware patterns stored in the pattern DB 73.

한편, AM 어플리케이션(70)은 도1에 도시한 SOC(50) 내의 AM 엔진(53)과는 별개일 수 있음에 유의해야 한다. 즉 도1에 도시한 것처럼, 단말장치(100)가 SOC(50) 내의 AM 엔진(53)만을 포함하는 경우도 있을 수 있지만, 도2는 시스템 온 칩(50)에 포함되어 있지 않은 별개의 안티멀웨어 어플리케이션(70)을 단말장치(100)에 설치하여 실행시키는 경우를 도시하고 있고, 마찬가지로 이후의 도면(도4, 도6, 및 도8)에서도 마찬가지이다. On the other hand, it should be noted that the AM application 70 may be separate from the AM engine 53 in the SOC 50 shown in FIG. That is, as shown in FIG. 1, the terminal device 100 may include only the AM engine 53 in the SOC 50, but FIG. 2 shows a separate anti-not included in the system on chip 50. The case where the malware application 70 is installed and executed in the terminal device 100 is shown, and the same applies to the subsequent drawings (FIGS. 4, 6, and 8).

리스트(31,32)는 멀웨어 스캔을 위한 파일의 리스트이고, 바람직하게는 제1 리스트(31)와 제2 리스트(32)를 포함한다. 일 실시예에서 제1 리스트(31)는 스캔해야 할 파일의 리스트이고, 제2 리스트(32)는 스캔된 파일의 리스트이다. 실시 형태에 따라, 제2 리스트(32)는, 스캔한 결과 멀웨어가 아니라고 판명된 파일의 리스트(즉, 화이트 리스트)일 수도 있고, 스캔한 결과 멀웨어라고 판명된 파일의 리스트(즉, 블랙리스트)일 수도 있고, 상기 화이트 리스트와 블랙 리스트를 모두 포함하는 리스트일 수도 있다. The lists 31 and 32 are lists of files for malware scanning, and preferably include a first list 31 and a second list 32. In one embodiment, the first list 31 is a list of files to be scanned and the second list 32 is a list of scanned files. According to an embodiment, the second list 32 may be a list of files (ie, a white list) that is found to be not malware as a result of scanning, or a list of files (ie, a black list) that is determined to be malware as a result of scanning. It may be a list including both the white list and the black list.

일 실시예에서 제1 리스트(31)는 단말장치(100)내 임의의 AM 어플리케이션이 스캔해야 할 파일의 정보를 포함한다. 상기 파일의 정보로서는, 예컨대 각 파일의 이름, 위치, 크기, 파일의 체크섬 중 하나 이상의 정보를 포함할 수 있다. In one embodiment, the first list 31 includes information of a file to be scanned by any AM application in the terminal device 100. The information of the file may include, for example, information of one or more of the name, location, size, and checksum of the file.

제2 리스트(32)는 이미 스캔된 파일의 정보를 포함한다. 이 파일의 정보로서, 예컨대 각 파일의 이름, 위치, 크기, 체크섬 중 하나 이상을 포함할 수 있다. 일 실시예에서 제2 리스트(32)는 적어도 체크섬을 포함할 수 있다. 따라서 본 명세서에서 제2 리스트(32)를 “체크섬 리스트”라고도 칭하기도 한다.The second list 32 contains the information of the files already scanned. As information of this file, for example, it may include one or more of the name, location, size, and checksum of each file. In one embodiment, the second list 32 may include at least a checksum. Accordingly, the second list 32 is also referred to herein as a "checksum list."

리스트 관리부(80)는 상기 리스트(31,32)의 입력 및 삭제 등의 관리기능을 갖는 기능 모듈이다. 일 실시예에서 리스트 관리부(80)는 소프트웨어나 펌웨어로서 구현가능하다. The list manager 80 is a functional module having a management function such as input and deletion of the lists 31 and 32. In one embodiment, the list manager 80 may be implemented as software or firmware.

상기 도시된 구성에서, 단말장치(100)가 동작하는 동안, 리스트(31,32)는 제2 메모리(30)에 로딩되어 유지될 수 있고, AM 어플리케이션(70)과 리스트 관리부(80)는 각각의 프로그램 코드와 데이터들이 예컨대 저장부(40)에서 제1 메모리(20)로 로딩되어 실행될 수 있다. In the above-described configuration, while the terminal device 100 is operating, the lists 31 and 32 may be loaded and maintained in the second memory 30, and the AM application 70 and the list manager 80 may be respectively. The program codes and data may be loaded into the first memory 20 from the storage 40 and executed.

한편 도1을 참조하여 설명한 것처럼 SOC(50)는 암호/인증(CA) 엔진(55)을 포함할 수 있다. 도2에 도시한 바와 같이 CA 엔진(55)은 체크섬(checksum)을 계산하는 기능을 포함한다. 예컨대 CA 엔진(55)은 저장부(40)에 저장된 각종 파일에 대해 각 파일의 체크섬을 구할 수 있다. 이 기능은 CA 엔진(55) 내에서 하드웨어, 소프트웨어, 및/또는 펌웨어로서 구현 가능하며, 체크섬을 구하는 방법으로서는 MD5, SHA1, 또는 SHA2의 해시 알고리즘을 사용할 수 있고, 이에 제한되지 않고 그 외의 다양한 알고리즘을 사용할 수 있음은 물론이다.Meanwhile, as described with reference to FIG. 1, the SOC 50 may include a cipher / authentication (CA) engine 55. As shown in Fig. 2, the CA engine 55 includes a function for calculating a checksum. For example, the CA engine 55 may obtain a checksum of each file with respect to various files stored in the storage 40. This function can be implemented as hardware, software, and / or firmware in the CA engine 55. As a method of obtaining a checksum, a hash algorithm of MD5, SHA1, or SHA2 can be used, but is not limited thereto. Of course it can be used.

도시한 일 실시예에서, 만일 리스트(31,32)가 각 파일의 정보 중 체크섬을 포함하고 있을 경우, 리스트 관리부(80)는 CA 엔진(55)으로부터 체크섬을 구하여 이를 리스트(31,32)에 입력할 수 있다. In the illustrated embodiment, if the lists 31 and 32 include checksums in the information of each file, the list manager 80 obtains a checksum from the CA engine 55 and adds the checksums to the lists 31 and 32. You can enter

상기 구성에 따른 멀웨어 스캔 방법을 이하에서 도3을 참조하여 설명하기로 한다. 도3은 도2의 멀웨어 스캔 방법을 설명하기 위한 흐름도이다. A malware scanning method according to the above configuration will be described below with reference to FIG. 3 is a flowchart illustrating a malware scanning method of FIG. 2.

도3의 실시예에서, 리스트에 소정 파일에 대한 파일정보가 미리 저장되어 있다고 전제한다. 일 예로서, 제2 리스트(32)는 스캔한 결과 멀웨어가 아니라고 판명된 파일의 정보를 포함하고 있고(즉, 제2 리스트는 화이트 리스트임), 파일 정보로서 파일 이름 및 파일의 체크섬 값을 포함한다고 가정한다. In the embodiment of Fig. 3, it is assumed that file information for a predetermined file is previously stored in the list. As an example, the second list 32 includes information of the file that is found to be not malware as a result of the scan (ie, the second list is a white list) and includes the file name and checksum value of the file as file information. Assume that

도3을 참조하면, 단계(S301)에서, 리스트 관리부(80)가 파일의 스캔 명령을 수신할 수 있다. 일 실시예에서, AM 어플리케이션(70)의 AM UI(71)가 사용자로부터 멀웨어 검사 명령을 수신하고, AM 어플리케이션(70)이 상기 명령을 리스트 관리부(80)에 통지함으로써, 리스트 관리부(80)가 스캔 명령을 수신할 수 있다. 다른 실시예로서, 예컨대 AM 어플리케이션(70)에 설정된 멀웨어 검사 주기나 소정 이벤트의 발생에 의해 리스트 관리부(80)가 스캔 명령을 수신할 수도 있다. Referring to FIG. 3, in step S301, the list manager 80 may receive a scan command of a file. In one embodiment, the AM UI 71 of the AM application 70 receives a malware inspection command from the user, and the AM application 70 notifies the list manager 80 of the command so that the list manager 80 The scan command can be received. As another embodiment, for example, the list manager 80 may receive a scan command due to a malware inspection cycle or a predetermined event set in the AM application 70.

스캔 명령을 수신하면, 단계(S302)에서 리스트 관리부(80)는 스캔해야 할 파일을 제1 리스트(31)에 추가한다. 실시예에서, 리스트 관리부(80)는 스캔해야 할 파일의 파일 정보를 제1 리스트(31)에 추가할 수 있고, 구체적 예로서, 스캔해야 할 파일의 파일 이름과 위치(메모리 또는 저장부 내의 주소)가 제1 리스트(31)에 입력될 수 있다. When the scan command is received, the list manager 80 adds the file to be scanned to the first list 31 in step S302. In an embodiment, the list manager 80 may add the file information of the file to be scanned to the first list 31, and as a specific example, the file name and location (address in memory or storage) of the file to be scanned. ) May be input to the first list 31.

단계(S303)에서, 리스트 관리부(80)의 요청에 의해, CA 엔진(55)이 제1 리스트(31)에 있는 스캔대상 파일에 대한 각각의 체크섬을 계산할 수 있다. 체크섬은 MD5, SHA1, SHA2 등 임의의 해시 알고리즘 중 하나에 의해 계산될 수 있다. 일 예로서, AM 어플리케이션(70)이 사용하는 패턴 DB(73)에 멀웨어 패턴의 체크섬을 저장하고 있는 경우, 이 멀웨어 패턴의 체크섬을 구할 때 사용된 체크섬 알고리즘과 동일한 체크섬 알고리즘에 의해 상기 스캔대상 파일의 체크섬을 구할 수도 있다. In step S303, at the request of the list manager 80, the CA engine 55 may calculate respective checksums for the scan target files in the first list 31. The checksum can be calculated by any one of the hash algorithms, such as MD5, SHA1, SHA2. As an example, when the checksum of the malware pattern is stored in the pattern DB 73 used by the AM application 70, the scan target file is determined by the same checksum algorithm as the checksum algorithm used when obtaining the checksum of the malware pattern. You can also obtain the checksum of.

단계(S304)에서, 리스트 관리부(80)가, CA 엔진(55)에 의해 계산된 체크섬과 제2 리스트의 체크섬을 비교하고, 이 비교 결과에 따라 단계(S305)에서 분기된다. In step S304, the list manager 80 compares the checksum calculated by the CA engine 55 with the checksum of the second list, and branches in step S305 according to the comparison result.

도3의 실시예에서 제2 리스트(32)는 화이트 리스트라고 전제하였으므로, 임의의 파일에 대해, CA 엔진(55)에 의해 계산된 체크섬이 제2 리스트에 있다면 이 파일은 멀웨어가 아닌 파일임을 의미한다. 따라서 이 파일에 대해서는 멀웨어 검사를 할 필요가 없으므로, 단계(S306)로 진행하여, 제1 리스트(즉, 스캔해야 할 파일의 리스트)에서 삭제하고, 사용자에게 결과를 통지하는 단계(S311)로 진행할 수 있다. Since the second list 32 is assumed to be a white list in the embodiment of Fig. 3, it means that for any file, if the checksum calculated by the CA engine 55 is in the second list, this file is not malware do. Therefore, since there is no need to perform a malware check on the file, the process proceeds to step S306, the deletion from the first list (i.e., the list of files to be scanned) and the step S311 of notifying the user of the result. Can be.

만일 단계(S305)의 비교 결과, 임의의 파일에 대해 CA 엔진(55)에 의해 계산된 체크섬이 제2 리스트에 없다면, 이 파일은 멀웨어가 아니라고 확인되지 않았으므로, 단계(S307)로 진행하여 AM 어플리케이션(70)에 의해 스캔된다. 이 단계(S307)에서, 예컨대 AM 어플리케이션(70)의 AM엔진(72)이 패턴 DB(73)를 참조하여 상기 파일의 멀웨어 검사를 수행할 수 있다. If as a result of the comparison of step S305, the checksum calculated by the CA engine 55 for any file is not in the second list, it is not confirmed that the file is not malware, the process proceeds to step S307 and AM. Scanned by the application 70. In this step S307, for example, the AM engine 72 of the AM application 70 may refer to the pattern DB 73 to perform malware inspection of the file.

이 때, AM 어플리케이션(70)이 체크섬을 사용하여 상기 멀웨어 검사를 하는 어플리케이션일 수 있다. 이 경우, 패턴 DB(73)의 멀웨어 패턴의 체크섬을 계산하기 위해 시스템 온 칩(50)의 CA 엔진(55)이 사용될 수 있다. 즉 CA 엔진(55)은, 상기 AM 어플리케이션(70)에서 체크섬 계산을 위해 사용되는 알고리즘과 동일한 알고리즘을 사용하여 멀웨어 패턴의 체크섬을 계산하고 이를 AM 어플리케이션(70)에 제공할 수 있다.At this time, the AM application 70 may be an application that checks the malware using a checksum. In this case, the CA engine 55 of the system on chip 50 may be used to calculate the checksum of the malware pattern of the pattern DB 73. That is, the CA engine 55 may calculate the checksum of the malware pattern using the same algorithm as the algorithm used for the checksum calculation in the AM application 70 and provide the same to the AM application 70.

그 후 단계(S308)에서 상기 AM 어플리케이션(70)의 스캔 결과에 따라 그 다음 단계가 분기된다. 만일 AM 어플리케이션(70)이 상기 스캔된 파일이 패턴 DB(73)에 없다고 판단하면, 이 파일이 멀웨어가 아님을 의미하므로, 단계(S309)로 진행하여, 리스트 관리부(80)가 상기 파일의 파일 정보를 제2 리스트(32)(즉, 화이트 리스트)에 추가하고, 사용자에게 결과를 통지하는 단계(S311)로 진행할 수 있다. Then, in step S308, the next step branches according to the scan result of the AM application 70. If the AM application 70 determines that the scanned file does not exist in the pattern DB 73, it means that the file is not malware. Therefore, the process proceeds to step S309, where the list manager 80 stores the file of the file. The information may be added to the second list 32 (ie, the white list), and the step S311 of notifying the user of the result may be proceeded.

만일 단계(S308)에서, 상기 스캔된 파일이 패턴 DB(73)에 있다면, 이 파일이 멀웨어임을 의미하므로 AM 어플리케이션(70)에 미리 설정된 AM 정책에 따라 상기 파일을 처리한다. 예컨대 상기 파일을 치료하거나, 검역소(quarantine)로 보내거나, 삭제하는 등의 조치가 취해질 수 있고, 그 후 조치의 결과를 사용자에게 통지한다(단계 S311). If the scanned file is in the pattern DB 73 in step S308, it means that the file is malware and processes the file according to the AM policy preset in the AM application 70. For example, an action may be taken to treat the file, send it to a quarantine or delete it, and then notify the user of the result of the action (step S311).

한편 도면에 도시하지 않았으나, 단계(S307)에서 AM 어플리케이션(70)이 파일을 스캔하면 이 스캔된 파일은 제1 리스트에서 삭제될 수 있음은 물론이다.Although not shown in the drawing, when the AM application 70 scans the file in step S307, the scanned file may be deleted from the first list.

상기와 같은 동작에 의해, 스캔대상이 되는 파일을 우선적으로 제2 리스트(32)와 비교함으로써, 스캔대상이 되는 모든 파일을 스캔하지 않고서도 멀웨어 검사를 완료할 수 있으므로, 단말장치(100)의 한정된 리소스 범위내에서 신속하고 효과적으로 멀웨어 스캔 동작을 수행할 수 있는 이점이 있다. By the above operation, since the file to be scanned is first compared with the second list 32, since the malware inspection can be completed without scanning all the files to be scanned, the terminal apparatus 100 There is an advantage in that the malware scan operation can be performed quickly and effectively within the limited resource range.

도4는 단말장치에서 수행되는 다른 실시예에 따른 멀웨어 스캔 동작을 설명하기 위한 도면이다. 4 is a diagram for describing a malware scan operation according to another embodiment performed by a terminal device.

도4를 참조하면, 단말장치(100)가 제3 리스트(33)를 더 포함한다. 제3 리스트(33)는 스캔한 결과 멀웨어라고 판명된 파일의 리스트(즉, 블랙리스트)이다. 일 실시예에서 제3 리스트(33)는 멀웨어라고 판명된 파일의 정보를 포함할 수 있고, 상기 파일의 정보로서 예컨대 각 파일의 이름, 위치, 크기, 체크섬 중 하나 이상을 포함할 수 있다. Referring to FIG. 4, the terminal device 100 further includes a third list 33. The third list 33 is a list (ie, a black list) of files that are found malware as a result of scanning. In one embodiment, the third list 33 may include information of a file that is found to be malware, and may include, for example, one or more of the name, location, size, and checksum of each file as the information of the file.

도4의 구성은 제3 리스트(33)를 더 포함하는 것 외에는 도2의 구성과 동일 또는 유사하므로, 나머지 구성요소에 대해서는 설명을 생략한다. The configuration of FIG. 4 is the same as or similar to that of FIG. 2 except for further including a third list 33, and thus, the description of the remaining components is omitted.

상기 구성에 따른 멀웨어 스캔 방법을 이하에서 도5을 참조하여 설명하기로 한다. 도5는 도4의 멀웨어 스캔 방법을 설명하기 위한 흐름도이다. A malware scanning method according to the above configuration will be described below with reference to FIG. 5. 5 is a flowchart illustrating a malware scanning method of FIG. 4.

도5의 실시예에서, 리스트에 소정 파일에 대한 파일정보가 미리 저장되어 있다고 전제한다. 일 예로서, 제2 리스트(32)는 스캔한 결과 멀웨어가 아니라고 판명된 파일의 정보를 포함하고 제3 리스트(33)는 멀웨어라고 판명된 파일의 정보를 포함하고 있으며, 각각의 파일 정보로서 파일 이름 및 파일의 체크섬을 포함한다고 가정한다. In the embodiment of Fig. 5, it is assumed that file information for a predetermined file is previously stored in the list. As an example, the second list 32 contains the information of the file that is found to be not malware as a result of the scan, and the third list 33 contains the information of the file that is found to be malware, and the file as the respective file information. Suppose you include the name and checksum of a file.

도5를 참조하면, 단계(S501) 내지 단계(S503)는 도3의 단계(S301) 내지 단계(S303)과 동일 또는 유사한 단계일 수 있다. 예컨대, 단계(S501)에서, 리스트 관리부(80)가 파일의 스캔 명령을 수신하고, 스캔 명령을 수신하면, 단계(S502)에서 리스트 관리부(80)가 스캔대상 파일을 제1 리스트(31)에 추가한다. 그 후 단계(S503)에서, 리스트 관리부(80)의 요청에 의해, CA 엔진(55)이 제1 리스트(31)에 있는 스캔대상 파일에 대한 각각의 체크섬을 계산한다. Referring to FIG. 5, steps S501 to S503 may be the same as or similar to steps S301 to S303 of FIG. 3. For example, in step S501, when the list manager 80 receives a scan command of a file and receives the scan command, the list manager 80 sends the scan target file to the first list 31 in step S502. Add. Then, in step S503, at the request of the list management unit 80, the CA engine 55 calculates each checksum for the scan target file in the first list 31.

단계(S504)에서, 리스트 관리부(80)가, CA 엔진(55)에 의해 계산된 체크섬과 리스트의 체크섬을 비교한다. 이 때 리스트 관리부(80)는 상기 계산된 체크섬을 제2 리스트(32) 및 제3 리스트(33)와 각각 비교하고, 이 비교 결과에 따라 단계(S505)에서 분기된다. In step S504, the list manager 80 compares the checksum calculated by the CA engine 55 with the checksum of the list. At this time, the list manager 80 compares the calculated checksum with the second list 32 and the third list 33, respectively, and branches in step S505 according to the comparison result.

도시된 실시예에서, 임의의 파일에 대해 상기 계산된 체크섬을 우선 제3 리스트(33)와 비교할 수 있고, 그 결과 만일 상기 계산된 체크섬이 제3 리스트(33)에 있다면, 이 파일은 멀웨어임을 의미하므로, 단계(S506)에서 미리 설정된 AM 정책에 따라 상기 파일을 처리하면 된다. 상기 AM 정책은 리스트 관리부(80)에 설정된 정책일 수도 있고 AM 어플리케이션부(70)에 설정된 정책일 수도 있으며, 예컨대 상기 파일을 치료하거나, 검역소로 보내거나, 삭제하는 등의 조치가 취해질 수 있다. In the illustrated embodiment, for any file the calculated checksum can first be compared with a third list 33, so that if the calculated checksum is in the third list 33, the file is malware. In other words, the file may be processed according to the AM policy preset in step S506. The AM policy may be a policy set in the list management unit 80 or a policy set in the AM application unit 70. For example, an action such as treating the file, sending it to a quarantine, or deleting the file may be taken.

단계(S505)에서, 만일 상기 계산된 체크섬이 제3 리스트(33)에 없다면, 단계(S507)로 진행하여 제2 리스트(32)에 있는가도 판단한다. In step S505, if the calculated checksum is not in the third list 33, the flow advances to step S507 to determine whether the second list 32 is also present.

단계(S507)에서, 만일 상기 계산된 체크섬이 제2 리스트(32)에 있다면, 이 파일은 멀웨어가 아닌 파일임을 의미하므로, 상기 파일에 대해서는 멀웨어 검사를 할 필요가 없다. 따라서 단계(S508)로 진행하여, 제1 리스트(즉, 스캔해야 할 파일의 리스트)에서 삭제하고, 사용자에게 결과를 통지한다(단계 S513). In step S507, if the calculated checksum is in the second list 32, it means that the file is not a malware, so there is no need to perform a malware check on the file. Therefore, the flow advances to step S508, deletes from the first list (i.e., the list of files to be scanned) and notifies the user of the result (step S513).

그러나 만일 단계(S507)의 비교 결과, 체크섬이 제2 리스트(32)에 없다면 이 파일은 멀웨어가 아니라고 확인되지 않았으므로, 단계(S509)로 진행하여 AM 어플리케이션(70)에 의해 스캔된다. 이 단계(S509)에서 예컨대 AM 어플리케이션(70)의 AM엔진(72)이 패턴 DB(73)를 참조하여 상기 파일의 멀웨어 검사를 수행할 수 있다. However, if the result of the comparison in step S507 is that the checksum is not in the second list 32, the file is not confirmed as not malware, and the process proceeds to step S509 and is scanned by the AM application 70. In this step S509, for example, the AM engine 72 of the AM application 70 may refer to the pattern DB 73 to perform malware inspection of the file.

이 때, AM 어플리케이션(70)이 체크섬을 사용하여 상기 멀웨어 검사를 하는 어플리케이션일 수 있다. 이 경우, 패턴 DB(73)의 멀웨어 패턴의 체크섬을 계산하기 위해 시스템 온 칩(50)의 CA 엔진(55)이 사용될 수 있다. 즉 CA 엔진(55)은, 상기 AM 어플리케이션(70)에서 체크섬 계산을 위해 사용되는 알고리즘과 동일한 알고리즘을 사용하여 멀웨어 패턴의 체크섬을 계산하고 이를 AM 어플리케이션(70)에 제공할 수 있다.At this time, the AM application 70 may be an application that checks the malware using a checksum. In this case, the CA engine 55 of the system on chip 50 may be used to calculate the checksum of the malware pattern of the pattern DB 73. That is, the CA engine 55 may calculate the checksum of the malware pattern using the same algorithm as the algorithm used for the checksum calculation in the AM application 70 and provide the same to the AM application 70.

상기 제3 리스트와 비교하는 단계(S505) 및 제2 리스트와 비교하는 단계(S507)는 순서가 바뀌어도 무방하다. The order of comparing with the third list (S505) and the comparing with the second list (S507) may be reversed.

그 후 단계(S510)에서, 상기 AM 어플리케이션(70)의 스캔 결과에 따라 다음 단계가 분기된다. 만일 상기 스캔된 파일이 패턴 DB(73)에 있다면 이 파일이 멀웨어임을 의미하므로, 단계(S511)로 진행하여 AM 어플리케이션(70)에 미리 설정된 AM 정책에 따라 상기 파일을 처리하고, 그 결과를 사용자에게 통지한다(단계 S513). Then, in step S510, the next step branches according to the scan result of the AM application 70. If the scanned file is in the pattern DB 73, it means that the file is malware. In step S511, the file is processed according to the AM policy preset in the AM application 70, and the result is displayed. Is notified (step S513).

만일 상기 단계(S510)에서, AM 어플리케이션(70)이 상기 스캔된 파일이 패턴 DB(73)에 없다고 판단하면, 이 파일이 멀웨어가 아님을 의미하므로 단계(S512)로 진행하여, 리스트 관리부(80)가 상기 파일의 파일 정보를 제2 리스트(32)(즉, 화이트 리스트)에 추가하고, 사용자에게 결과를 통지할 수 있다(단계 S311). If in step S510, the AM application 70 determines that the scanned file is not in the pattern DB 73, it means that the file is not malware and the process proceeds to step S512 and the list manager 80. ) May add the file information of the file to the second list 32 (ie, the white list), and notify the user of the result (step S311).

상기와 같은 동작에 의해, 스캔대상이 되는 파일을 우선적으로 제2 리스트 및 제3 리스트와 비교함으로써, 스캔대상이 되는 모든 파일을 스캔하지 않고서도 멀웨어 검사를 완료할 수 있으므로, 단말장치(100)의 한정된 리소스 범위내에서 신속하고 효과적으로 멀웨어 스캔 동작을 수행할 수 있는 이점이 있다. By the above operation, since the file to be scanned is first compared with the second list and the third list, the malware inspection can be completed without scanning all the files to be scanned, so that the terminal apparatus 100 There is an advantage that can perform a malware scan operation quickly and effectively within the limited resource range of.

도6은 단말장치에서 수행되는 다른 실시예에 따른 멀웨어 스캔 동작을 설명하기 위한 도면이다. 6 is a diagram illustrating a malware scan operation according to another embodiment performed by a terminal device.

도6을 참조하면 단말장치(100)가 제1 AM 어플리케이션(701) 및 제2 AM 어플리케이션(702)를 포함한다. 이러한 상황은, 예컨대 사용자가 두 종류 이상의 안티멀웨어 소프트웨어를 구입하여 단말장치(100)에 설치한 경우에 해당할 수 있다. 도2에 도시한 바와 같이, AM 어플리케이션(701, 702)의 각각은 사용자 인터페이스 및 AM 엔진을 포함할 수 있다. 또한 AM 어플리케이션(701,702)의 각각은 제1 패턴 DB(731) 및 제2 패턴 DB(732)를 구비할 수 있다. Referring to FIG. 6, the terminal device 100 includes a first AM application 701 and a second AM application 702. Such a situation may correspond to, for example, a case where a user purchases two or more kinds of anti-malware software and installs the terminal device 100. As shown in FIG. 2, each of the AM applications 701 and 702 may include a user interface and an AM engine. In addition, each of the AM applications 701 and 702 may include a first pattern DB 731 and a second pattern DB 732.

도2와 비교할 때 도6의 나머지 구성요소는 도2의 구성요소와 동일 또는 유사하므로, 이들에 대해서는 설명을 생략한다. Compared with FIG. 2, the remaining components of FIG. 6 are the same as or similar to those of FIG. 2, and thus description thereof will be omitted.

상기 구성에 따른 멀웨어 스캔 방법을 이하에서 도7을 참조하여 설명하기로 한다. 도7은 도6의 멀웨어 스캔 방법을 설명하기 위한 흐름도이다. A malware scanning method according to the above configuration will be described below with reference to FIG. 7 is a flowchart illustrating a malware scanning method of FIG. 6.

도7의 실시예에서, 리스트에 소정 파일에 대한 파일정보가 미리 저장되어 있다고 전제한다. 일 예로서, 제2 리스트(32)는 스캔한 결과 멀웨어가 아니라고 판명된 파일의 정보를 포함하고 있으며, 파일 정보로서 파일 이름 및 파일의 체크섬을 포함한다고 가정한다. In the embodiment of Fig. 7, it is assumed that file information for a predetermined file is stored in advance in the list. As an example, it is assumed that the second list 32 includes information of a file which is found to be not malware as a result of scanning, and includes a file name and a checksum of the file as file information.

도7을 참조하면, 단계(S801) 내지 단계(S803)는 도3을 참조하여 설명한 단계(S301) 내지 단계(S303)과 동일 또는 유사한 단계일 수 있다. 예컨대, 단계(S801)에서, 리스트 관리부(80)가 파일의 스캔 명령을 수신하고, 스캔 명령을 수신하면, 단계(S802)에서 리스트 관리부(80)가 스캔대상 파일을 제1 리스트(31)에 추가한다. 그 후 단계(S803)에서, 리스트 관리부(80)의 요청에 의해, CA 엔진(55)이 제1 리스트(31)에 있는 스캔대상 파일에 대한 각각의 체크섬을 계산한다. Referring to FIG. 7, steps S801 to S803 may be the same as or similar to the steps S301 to S303 described with reference to FIG. 3. For example, in step S801, when the list manager 80 receives a scan command of a file and receives the scan command, in step S802, the list manager 80 sends the scan target file to the first list 31. Add. Then, in step S803, at the request of the list management unit 80, the CA engine 55 calculates each checksum for the scan target file in the first list 31.

다만, 단계(S801)에서, 리스트 관리부(80)는 제1 AM 어플리케이션(701) 또는 제2 AM 어플리케이션(702) 중 임의의 어플리케이션에서 스캔명령을 수신할 수 있다. However, in step S801, the list manager 80 may receive a scan command from any of the first AM application 701 or the second AM application 702.

단계(S804)에서, 리스트 관리부(80)가, CA 엔진(55)에 의해 계산된 체크섬과 제2 리스트(32)의 체크섬을 비교한다. 임의의 파일에 대해, CA 엔진(55)에 의해 계산된 체크섬이 제2 리스트(32)에 있다면 이 파일은 멀웨어가 아닌 파일임을 의미하므로, 이 파일에 대해서는 멀웨어 검사를 할 필요가 없다. 따라서 단계(S805)로 진행하여 제1 리스트(즉, 스캔해야 할 파일의 리스트)에서 삭제하고, 사용자에게 결과를 통지하는 단계(S810)로 진행할 수 있다. In step S804, the list management unit 80 compares the checksum calculated by the CA engine 55 with the checksum of the second list 32. For any file, if the checksum calculated by the CA engine 55 is in the second list 32, it means that the file is not malware, so there is no need for malware checking for this file. Therefore, the process proceeds to step S805 and deletes from the first list (ie, a list of files to be scanned), and proceeds to step S810 of notifying the user of the result.

만일 단계(S804)의 비교 결과, 임의의 파일에 대해 CA 엔진(55)에 의해 계산된 체크섬이 제2 리스트(32)에 없다면, 이 파일은 멀웨어가 아니라고 확인되지 않았으므로, 단계(S806)로 진행하여 AM 어플리케이션에 의해 스캔된다.If, as a result of the comparison of step S804, the checksum calculated by the CA engine 55 for any file is not in the second list 32, the file is not confirmed as not malware, and therefore, step S806 is performed. Proceed and scanned by the AM application.

다만 이 단계(S806)에서, 파일이 제1 및 제2 AM 어플리케이션(701,702) 모두에 의해 스캔될 수 있다. 즉, 예컨대 처음 단계(S801)에서 비록 제1 AM 어플리케이션(701)에 의해 스캔 명령이 발생하였다 하더라도, 단계(S806)에서는 제1 AM 어플리케이션(701) 뿐만 아니라 제2 AM 어플리케이션(702)도 동일한 파일에 대해 스캔 동작을 수행할 수 있다. 이 때 제1 및 제2 AM 어플리케이션(701,702)의 각각은 그에 대응하는 제1 및 제2 패턴 DB(731,732)을 각각 참조하여 파일의 멀웨어 검사를 수행할 수 있다. In this step S806, however, the file may be scanned by both the first and second AM applications 701 and 702. That is, for example, even if the scan command is generated by the first AM application 701 in the first step S801, in step S806, not only the first AM application 701 but also the second AM application 702 are the same file. The scan operation may be performed on. In this case, each of the first and second AM applications 701 and 702 may perform a malware check on the file by referring to the first and second pattern DBs 731 and 732 respectively corresponding thereto.

이 때, 제1 AM 어플리케이션(701) 또는 제2 AM 어플리케이션(702)이 체크섬을 사용하여 상기 멀웨어 검사를 하는 어플리케이션일 수 있다. 이 경우, 제1 및/또는 제2 패턴 DB(731,732)의 멀웨어 패턴의 체크섬을 계산하기 위해 시스템 온 칩(50)의 CA 엔진(55)이 사용될 수 있다. 즉 CA 엔진(55)은, 제1 또는 제2 AM 어플리케이션(701,702)에서 체크섬 계산을 위해 사용되는 알고리즘과 동일한 알고리즘을 사용하여 체크섬을 계산하여 이를 해당 AM 어플리케이션에 제공할 수 있다.In this case, the first AM application 701 or the second AM application 702 may be an application that checks the malware using a checksum. In this case, the CA engine 55 of the system on chip 50 may be used to calculate the checksum of the malware pattern of the first and / or second pattern DBs 731, 732. That is, the CA engine 55 may calculate a checksum using the same algorithm as the algorithm used for calculating the checksum in the first or second AM applications 701 and 702 and provide the same to the corresponding AM application.

그 후 단계(S807)에서 상기 제1 및 제2 AM 어플리케이션(701,702)의 스캔 결과에 따라 그 다음 단계가 분기된다. 만일 파일이 제1 및 제2 패턴 DB(731,732) 중 어느 하나 또는 둘 모두의 DB에 없다고 판단되면, 이 파일이 멀웨어가 아님을 의미하므로, 단계(S808)로 진행하여, 리스트 관리부(80)가 상기 파일의 파일 정보를 제2 리스트(32)(즉, 화이트 리스트)에 추가하고, 사용자에게 결과를 통지한다(단계 S810). Then, in step S807, the next step branches according to the scan result of the first and second AM applications 701 and 702. If it is determined that the file is not in the DB of either or both of the first and second pattern DBs 731 and 732, it means that the file is not malware, and the process proceeds to step S808, where the list manager 80 The file information of the file is added to the second list 32 (ie, the white list), and the result is notified to the user (step S810).

만일 단계(S807)에서, 상기 스캔된 파일이 제1 및 제2 패턴 DB(731,732) 중 어느 하나 이상에 있다면, 이 파일이 멀웨어임을 의미하므로 미리 설정된 AM 정책에 따라 상기 파일을 처리한다. 일 실시예에서, 이 때의 AM 정책은 해당 파일을 멀웨어로 판단한 AM 어플리케이션의 정책일 수 있고, 두 개의 AM 어플리케이션 모두 해당 파일을 멀웨어로 판단한 경우, 예컨대 시간적으로 먼저 스캔을 하여 멀웨어로 판단한 AM 어플리케이션의 정책이 선택될 수 있다. In step S807, if the scanned file is in any one or more of the first and second pattern DBs 731 and 732, it means that the file is malware and processes the file according to a preset AM policy. In one embodiment, the AM policy at this time may be a policy of an AM application that determines the file as malware, and when both AM applications determine the file as malware, for example, an AM application that is determined to be malware by first scanning in time May be selected.

멀웨어로 판명된 파일에 대한 상기 AM 정책에 따른 조치가 단계(S809)에서 취해지면 그 후 이 조치의 결과를 사용자에게 통지한다(단계 S810). If an action according to the AM policy for the file found to be malware is taken in step S809, the user is then notified of the result of this action (step S810).

한편, 도6 및 도7을 참조하여 설명한 실시예는 단말장치(100)가 2개의 AM 어플리케이션을 포함하는 것으로 예시하였지만, 실시 형태에 따라 AM 어플리케이션의 수는 더 많을 수도 있다. 당업자는 본 발명적 개념에 따른 단말장치(100)가 임의의 복수개의 AM 어플리케이션을 포함하는 실시예로 확장 가능함을 이해할 것이다. 6 and 7 illustrate that the terminal device 100 includes two AM applications, the number of AM applications may be greater depending on the embodiment. Those skilled in the art will understand that the terminal device 100 according to the inventive concept can be extended to an embodiment including any plurality of AM applications.

도8은 단말장치에서 수행되는 다른 실시예에 따른 멀웨어 스캔 동작을 설명하기 위한 도면이다. 8 is a diagram illustrating a malware scan operation according to another embodiment performed by a terminal device.

도8을 참조하면, 단말장치(100)는 네트워크(200)를 통해 외부의 장치(300)와 통신할 수 있다. 단말장치(100)는 도2에 도시한 단말장치(100)와 동일 또는 유사하므로 설명을 생략한다. Referring to FIG. 8, the terminal device 100 may communicate with an external device 300 through the network 200. Since the terminal device 100 is the same as or similar to the terminal device 100 shown in FIG. 2, description thereof will be omitted.

네트워크(200)는 인터넷, 근거리 통신망(LAN), 원거리 통신망(WAN), WiFi, 블루투스, 3G망, 4G망 등 다양한 형태의 이동통신망과 데이터통신망 중 어느 하나 또는 둘 이상이 결합된 형태일 수 있으며, 유선 또는 무선 또는 이들의 결합일 수 있다. The network 200 may be a combination of any one or two or more of various types of mobile communication networks and data communication networks, such as the Internet, a local area network (LAN), a long-distance communication network (WAN), WiFi, Bluetooth, 3G network, and 4G network. , Wired or wireless, or a combination thereof.

장치(300)는 예를 들어 클라우드 AM 시스템에 포함되는 하나 이상의 서버장치로 구현될 수 있다. 도시한 일 실시예에서 장치(300)가 서버인 경우, 장치(300)는 관리부(310), AM 엔진(320), 및 서버측 리스트(330)를 포함할 수 있다. The device 300 may be implemented by, for example, one or more server devices included in a cloud AM system. In the illustrated embodiment, when the device 300 is a server, the device 300 may include a manager 310, an AM engine 320, and a server-side list 330.

또한 장치(300)는, 단말장치(100)와 동일 또는 유사한 구성의 복수개의 단말장치와 네트워크(200)를 통해 동시에 통신할 수 있다. In addition, the device 300 may simultaneously communicate with a plurality of terminal devices having the same or similar configuration as the terminal device 100 through the network 200.

관리부(310)는 단말장치(100)와의 통신, AM 엔진(320)의 실행, 및 서버측 리스트(330)의 입출력을 관리하는 기능을 포함할 수 있다. 대안적인 실시예에서, 상기 언급한 단말장치(100)와의 통신, AM 엔진(320)의 실행, 및 서버측 리스트(330)의 관리 기능이 모두 별개의 관리부에 의해 수행될 수도 있다.The management unit 310 may include a function of managing communication with the terminal device 100, execution of the AM engine 320, and input / output of the server-side list 330. In alternative embodiments, the aforementioned communication with the terminal device 100, execution of the AM engine 320, and management functions of the server-side list 330 may all be performed by separate management units.

서버측 리스트(330)는, 단말장치(100)의 제1 또는 제2 리스트(31,32)와 유사한 파일 리스트를 가질 수 있다. 일 실시예에서 서버측 리스트(330)는 스캔한 결과 멀웨어가 아니라고 판명된 파일의 정보를 포함하는 리스트(즉, 화이트 리스트)일 수 있고, 스캔한 결과 멀웨어라고 판명된 파일의 정보를 포함하는 리스트(즉, 블랙리스트)일 수도 있고, 또는 상기 화이트 리스트와 블랙 리스트를 모두 포함하는 리스트일 수도 있다. The server-side list 330 may have a file list similar to the first or second lists 31 and 32 of the terminal device 100. In one embodiment, the server-side list 330 may be a list (ie, a white list) that contains information of files that are found to be not malware as a result of scanning, and a list that includes information of files that are found to be malware as a result of scanning. (Ie, a black list) or a list including both the white list and the black list.

일 실시예에서 서버측 리스트(330)는 화이트 리스트일 수 있고, 예컨대 각 파일의 이름, 위치, 크기, 체크섬 중 하나 이상의 파일 정보를 포함할 수 있다. In one embodiment, the server-side list 330 may be a white list, and may include, for example, file information of one or more of each file's name, location, size, and checksum.

상기 구성에 따른 멀웨어 스캔 방법을 이하에서 도3을 참조하여 설명하기로 한다. 도9는 도8의 멀웨어 스캔 방법을 설명하기 위한 흐름도이다. A malware scanning method according to the above configuration will be described below with reference to FIG. 9 is a flowchart illustrating a malware scanning method of FIG. 8.

도9의 실시예에서, 리스트에 소정 파일에 대한 파일정보가 미리 저장되어 있다고 전제한다. 일 예로서, 제2 리스트(32)는 스캔한 결과 멀웨어가 아니라고 판명된 파일의 정보를 포함하고 있고, 서버측 리스트(330) 역시 멀웨어가 아닌 것으로 판명된 파일의 정보를 포함하고 있다. 리스트(32,330)의 각각은 파일 정보로서 파일 이름 및 파일의 체크섬 값을 포함한다고 가정한다. In the embodiment of Fig. 9, it is assumed that file information for a predetermined file is previously stored in the list. As an example, the second list 32 includes information of files that are found to be not malware as a result of scanning, and the server-side list 330 also includes information of files that are found to be not malware. It is assumed that each of the lists 32 and 330 includes a file name and a checksum value of the file as file information.

도9를 참조하면, 단계(S1001) 내지 단계(S1003)는 도3의 단계(S301) 내지 단계(S303)과 동일 또는 유사한 단계일 수 있다. 예컨대 단계(S1001)에서, 리스트 관리부(80)가 파일의 스캔 명령을 수신하고, 스캔 명령을 수신하면, 단계(S1002)에서 리스트 관리부(80)가 스캔대상 파일을 제1 리스트(31)에 추가한다. 그 후 단계(S1003)에서, 리스트 관리부(80)의 요청에 의해, CA 엔진(55)이 제1 리스트(31)에 있는 스캔대상 파일에 대한 각각의 체크섬을 계산한다. Referring to FIG. 9, steps S1001 to S1003 may be the same as or similar to steps S301 to S303 of FIG. 3. For example, in step S1001, when the list manager 80 receives a scan command of a file and receives the scan command, in step S1002, the list manager 80 adds a scan target file to the first list 31. do. Then, in step S1003, at the request of the list management unit 80, the CA engine 55 calculates each checksum for the scan target file in the first list 31.

단계(S1004)에서, 리스트 관리부(80)가, CA 엔진(55)에 의해 계산된 체크섬과 제2 리스트(32)의 체크섬을 비교하고, 이 비교 결과에 따라 단계(S1005)에서 분기된다. In step S1004, the list management unit 80 compares the checksum calculated by the CA engine 55 with the checksum of the second list 32, and branches in step S1005 according to the comparison result.

만일 CA 엔진(55)에 의해 계산된 임의의 파일의 체크섬이 제2 리스트(32)에 있다면, 이 파일은 멀웨어가 아닌 파일임을 의미한다. 따라서 이 파일에 대해서는 멀웨어 검사를 할 필요가 없으므로, 단계(S1006)로 진행하여, 제1 리스트(즉, 스캔해야 할 파일의 리스트)에서 삭제하고, 사용자에게 결과를 통지하는 단계(S1017)로 진행할 수 있다. If the checksum of any file calculated by the CA engine 55 is in the second list 32, it means that the file is not malware. Therefore, since there is no need to perform a malware check on the file, the process proceeds to step S1006, the deletion from the first list (i.e., the list of files to be scanned), and the step S1017 of notifying the user of the result. Can be.

만일 단계(S1005)의 비교 결과, CA 엔진(55)에 의해 계산된 체크섬이 제2 리스트에 없다면, 이 파일은 멀웨어가 아니라고 확인되지 않았으므로, 단계(S1007)로 진행하여 AM 어플리케이션(70)에 의해 스캔된다. 이 단계(S1007)에서, 예컨대 AM 어플리케이션(70)의 AM엔진(72)이 패턴 DB(73)를 참조하여 상기 파일의 멀웨어 검사를 수행할 수 있다. If, as a result of the comparison of step S1005, the checksum calculated by the CA engine 55 is not in the second list, the file is not confirmed as not malware, the flow advances to step S1007 to the AM application 70. Is scanned. In this step S1007, for example, the AM engine 72 of the AM application 70 may refer to the pattern DB 73 to perform malware inspection of the file.

이 때, AM 어플리케이션(70)이 체크섬을 사용하여 상기 멀웨어 검사를 하는 어플리케이션일 수 있다. 이 경우, 패턴 DB(73)의 멀웨어 패턴의 체크섬을 계산하기 위해 시스템 온 칩(50)의 CA 엔진(55)이 사용될 수 있다. 즉 CA 엔진(55)은, 상기 AM 어플리케이션(70)에서 체크섬 계산을 위해 사용되는 알고리즘과 동일한 알고리즘을 사용하여 체크섬을 계산하고 이를 AM 어플리케이션(70)에 제공할 수 있다.At this time, the AM application 70 may be an application that checks the malware using a checksum. In this case, the CA engine 55 of the system on chip 50 may be used to calculate the checksum of the malware pattern of the pattern DB 73. That is, the CA engine 55 may calculate a checksum using the same algorithm as that used for the checksum calculation in the AM application 70 and provide the same to the AM application 70.

단계(S1008)에서 상기 AM 어플리케이션(70)의 스캔 결과에 따라 그 다음 단계가 분기된다. In step S1008, the next step branches according to the scan result of the AM application 70.

만일 단계(S1008)에서, 상기 스캔된 파일이 패턴 DB(73)에 있다면, 이 파일이 멀웨어임을 의미하므로 미리 설정된 AM 정책에 따라 상기 파일을 처리한다. 예컨대 상기 파일을 치료하거나, 검역소로 보내거나, 삭제하는 등의 조치가 취해질 수 있고, 그 후 조치의 결과를 사용자에게 통지한다(단계 S1017). If the scanned file is in the pattern DB 73 in step S1008, it means that the file is malware and processes the file according to a preset AM policy. For example, an action may be taken to treat the file, send it to quarantine, delete it, or the like, and then notify the user of the result of the action (step S1017).

단계(S1008)에서, 만일 AM 어플리케이션(70)이 상기 스캔된 파일이 패턴 DB(73)에 없다고 판단하면, 단계(S1010)로 진행하여, 네트워크(200)를 통해 상기 파일 및/또는 이 파일의 체크섬을 장치(300)로 전송할 수 있다. In step S1008, if the AM application 70 determines that the scanned file is not in the pattern DB 73, the flow advances to step S1010, through the network 200 of the file and / or this file. The checksum may be sent to the device 300.

단계(S1011)에서, 장치(300)가 체크섬을 전송받으면, 관리부(310)가 이 전송받은 체크섬을 서버측 리스트(330)의 체크섬과 비교한다. In operation S1011, when the device 300 receives the checksum, the management unit 310 compares the received checksum with the checksum of the server-side list 330.

대안적 실시예에로서, 단계(S1010)에서 리스트 관리부(80)가 파일만을 장치(300)로 전송하는 경우, 장치(300)는 상기 전송받은 파일에 대한 체크섬을 계산하고, 단계(S1011)에서, 이 계산된 체크섬을 서버측 리스트(330)의 체크섬과 비교할 수도 있다. In an alternative embodiment, when the list manager 80 transmits only a file to the device 300 in step S1010, the device 300 calculates a checksum for the received file and in step S1011. This calculated checksum may be compared with the checksum of the server-side list 330.

단계(S1012)에서, 만일 파일의 체크섬이 서버측 리스트(330)에 있다고 판단하면, 이 파일이 멀웨어가 아님을 의미하므로, 단계(S1013)로 진행하여, 장치(300)가 상기 판단 결과를 단말장치(100)로 전송하고, 단말장치(100)는 해당 파일의 정보를 제2 리스트(32)에 추가한다. 그 후 이 결과를 사용자에게 통지한다(단계 S1017). If it is determined in step S1012 that the checksum of the file is in the server-side list 330, it means that the file is not malware, and the flow proceeds to step S1013, where the device 300 reads the result of the determination. The terminal 100 transmits the information of the file to the second list 32. The result is then notified to the user (step S1017).

만일 단계(S1012)에서, 파일의 체크섬이 서버측 리스트(330)에 없다고 판단하면, 단계(S1014)로 진행하여 장치(300)의 AM 엔진(320)이 해당 파일에 대한 스캔을 수행할 수 있다. 이 단계(S1014)에서, 예컨대 AM엔진(320)은 장치(300)측의 임의의 멀웨어 패턴 DB(도시 생략)를 참조하여 상기 스캔을 수행할 수 있다. If it is determined in step S1012 that the checksum of the file is not in the server-side list 330, the process proceeds to step S1014 where the AM engine 320 of the device 300 may perform a scan for the file. . In this step S1014, for example, the AM engine 320 may perform the scan by referring to an arbitrary malware pattern DB (not shown) on the device 300 side.

그 후 단계(S1015)에서, AM 엔진(320)에서 스캔된 상기 파일이 장치(300)의 패턴 DB에 없다고 판단하면, 이 파일이 멀웨어가 아님을 의미하므로, 단계(S1013)로 진행하여, 장치(300)가 상기 판단 결과를 단말장치(100)로 전송한다. 단말장치(100)는 해당 파일의 정보를 제2 리스트(32)에 추가하고(단계 S1013), 이 결과를 사용자에게 통지한다(단계 S1017). Thereafter, if it is determined in step S1015 that the file scanned by the AM engine 320 is not in the pattern DB of the device 300, it means that the file is not malware, and the process proceeds to step S1013 and the device. The 300 transmits the determination result to the terminal device 100. The terminal device 100 adds the information of the file to the second list 32 (step S1013), and notifies the user of this result (step S1017).

만일 단계(S1015)에서, 상기 스캔된 파일이 장치(300)의 패턴 DB에 있다면, 이 파일이 멀웨어임을 의미한다. 그러면 단계(S1016)에서, 이 판단 결과를 단말장치(100)로 전송하고, 단말장치(100)는 미리 설정된 AM 정책에 따라 상기 파일을 처리하고, 그 후 조치 결과를 사용자에게 통지한다(단계 S1017). If the scanned file is in the pattern DB of the device 300 in step S1015, it means that the file is malware. Then, in step S1016, the determination result is transmitted to the terminal device 100, and the terminal device 100 processes the file according to a preset AM policy, and then notifies the user of the action result (step S1017). ).

이상 설명한 본 발명에 따른 실시예들은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. Embodiments according to the present invention described above can also be embodied as computer readable codes on a computer readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and may be implemented in the form of a carrier wave (for example, transmission via the Internet) . The computer readable recording medium may also be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner.

상기와 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.While the present invention has been described with reference to the particular embodiments and drawings, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims. This is possible. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the equivalents of the claims, as well as the claims.

10: 중앙처리장치 20: 제1 메모리
30: 제2 메모리 31,32: 파일 리스트
40: 저장부 50: 시스템 온 칩(SOC)
53: 안티멀웨어(AM) 엔진 54: 방화벽(FW) 엔진
55: 암호/인증(CA) 엔진 70: AM 어플리케이션
73: 패턴 DB 80: 리스트 관리부
100: 단말장치 300: 서버
310: 관리부 320: AM 엔진
330: 서버측 리스트
10: central processing unit 20: first memory
30: second memory 31, 32: file list
40: storage 50: system on a chip (SOC)
53: anti-malware engine 54: firewall (FW) engine
55: password / authentication engine 70: AM application
73: pattern DB 80: list management unit
100: terminal device 300: server
310: management unit 320: AM engine
330: server-side list

Claims (22)

중앙처리장치(CPU);
버스에 의해 상기 중앙처리장치와 연결되어 있고, 상기 중앙처리장치에 의해 실행되며 체크섬 리스트를 관리하는 리스트 관리부를 저장하는 메모리; 및
상기 버스와 연결되어 있고, 암호/인증 엔진(C/A)을 구비하는 시스템 온 칩;을 포함하며,
상기 리스트 관리부는, 멀웨어 스캔 대상이 되는 스캔대상 파일에 대한 체크섬을 구할 것을 상기 시스템 온 칩의 암호/인증 엔진에게 요청을 하고, 상기 시스템 온 칩의 암호/인증 엔진으로부터 상기 스캔대상 파일에 대한 체크섬을 제공받고, 제공받은 체크섬이 상기 체크섬 리스트에 있는지 여부를 판단한 결과에 따라 상기 스캔대상 파일에 대하여 멀웨어 스캔을 수행할지 여부를 결정하는 것을 특징으로 하는 단말장치.
A central processing unit (CPU);
A memory coupled to the central processing unit by a bus and stored by the central processing unit to store a list management unit for managing a checksum list; And
A system on chip connected to the bus and having a cryptographic / authentication engine (C / A);
The list manager requests a cryptographic / authentication engine of the system on chip to obtain a checksum for a scan target file to be scanned for malware, and checks the scansum file for the scan target file from the cryptographic / authentication engine of the system on chip. The terminal device, characterized in that for determining whether to perform a malware scan on the scan target file according to the result of determining whether or not the checksum provided in the checksum list.
제 1 항에 있어서,
상기 중앙처리장치에 의해 실행되는 안티멀웨어 어플리케이션으로서, 상기 시스템 온 칩에는 포함되어 있지 않은 상기 안티멀웨어 어플리케이션;을 더 포함하며,
상기 안티멀웨어 어플리케이션은, 상기 리스트 관리부가 스캔대상 파일에 대하여 멀웨어 스캔을 수행할 것으로 결정한 경우에만, 스캔대상 파일에 멀웨어가 존재하는지 여부를 스캔하는 것을 특징으로 하는 단말장치.
The method of claim 1,
An anti-malware application executed by the CPU, the anti-malware application not included in the system on chip;
And wherein the anti-malware application scans whether or not malware exists in the scan target file only when the list manager determines to perform a malware scan on the scan target file.
제 2 항에 있어서,
상기 안티멀웨어 어플리케이션에 의한 멀웨어 스캔 결과, 상기 스캔대상 파일에 멀웨어가 존재하지 않는 경우, 상기 리스트 관리부는 상기 스캔대상 파일에 대한 체크섬을 상기 체크섬 리스트에 추가하는 것을 특징으로 하는 단말장치.
3. The method of claim 2,
And a malware is not present in the scan target file as a result of the malware scan by the anti-malware application, the list manager adds a checksum for the scan target file to the checksum list.
제 2 항에 있어서,
상기 안티멀웨어 어플리케이션에 의한 멀웨어 스캔 결과, 상기 스캔대상 파일에 멀웨어가 존재하지 않는 경우, 상기 리스트 관리부는 상기 스캔대상 파일에 대한 체크섬을 상기 단말장치와 네트워크를 통해서 연결된 외부의 안티멀웨어 시스템으로 전송하고, 상기 외부의 안티멀웨어 시스템으로부터 상기 스캔대상 파일에 멀웨어가 존재하는지 여부에 대한 결과를 제공받는 것을 특징으로 하는 단말장치.
3. The method of claim 2,
As a result of the malware scan by the anti-malware application, when the malware does not exist in the scan target file, the list manager transmits a checksum for the scan target file to an external anti-malware system connected through the network with the terminal device. And receiving a result of whether or not malware exists in the scan target file from the external anti-malware system.
제 4 항에 있어서,
상기 외부의 안티멀웨어 시스템으로부터 제공받은 결과가 상기 스캔대상 파일에 멀웨어가 존재하지 않는 것인 경우에, 상기 리스트 관리부는 상기 스캔대상 파일의 체크섬을 상기 체크섬 리스트에 추가하는 것을 특징으로 하는 단말장치.
5. The method of claim 4,
The terminal management unit adds a checksum of the scan target file to the checksum list when the result provided from the external anti-malware system indicates that malware does not exist in the scan target file.
제 2 항에 있어서,
상기 안티멀웨어 어플리케이션이 체크섬을 사용하여 안티멀웨어 스캔을 하는 경우라면, 상기 안티멀웨어 어플리케이션은 상기 시스템 온 칩의 암호/인증 엔진으로부터 제공받은 체크섬을 이용하여 상기 스캔대상 파일에 대한 안티멀웨어 스캔을 수행하는 것을 특징으로 하는 단말장치.
3. The method of claim 2,
If the anti-malware application scans an anti-malware using a checksum, the anti-malware application performs an anti-malware scan on the scan target file using the checksum provided from the encryption / authentication engine of the system on chip. Terminal device, characterized in that.
제 6 항에 있어서,
상기 안티멀웨어 어플리케이션이 체크섬을 사용하여 안티멀웨어 스캔을 하는 경우라면, 상기 시스템 온 칩의 암호/인증 엔진은, 상기 안티멀웨어 어플리케이션에서 체크섬을 계산하는데 사용되는 알고리즘과 동일한 알고리즘을 사용하여 체크섬을 계산하여 상기 안티멀웨어 어플리케이션에게 제공하는 것을 특징으로 하는 단말장치.
The method according to claim 6,
If the anti-malware application scans the anti-malware using a checksum, the cryptographic / authentication engine of the system on chip calculates the checksum using the same algorithm used to calculate the checksum in the anti-malware application. Terminal device, characterized in that provided to the anti-malware application.
제 2 항에 있어서,
상기 리스트 관리부가 상기 안티멀웨어 어플리케이션으로부터 스캔 명령을 수신하면, 상기 리스트 관리부는 스캔대상 파일에 대한 체크섬을 계산할 것을 상기 암호/인증 엔진에게 요청하여 제공받고, 제공받은 체크섬이 상기 체크섬 리스트에 있는지 여부를 결정하고,
상기 안티멀웨어 어플리케이션은 상기 스캔대상 파일에 대한 체크섬이 상기 체크섬 리스트에 없다고 결정된 경우에만 상기 스캔대상 파일에 대한 멀웨어 스캔 동작을 수행하는 것을 특징으로 하는 단말장치.
3. The method of claim 2,
When the list manager receives a scan command from the anti-malware application, the list manager requests and receives the encryption / authentication engine to calculate a checksum for a scan target file, and determines whether the provided checksum is in the checksum list. Decide,
And wherein the anti-malware application performs a malware scan operation on the scan target file only when it is determined that a checksum for the scan target file is not in the checksum list.
제 1 항에 있어서,
상기 중앙처리장치에 의해 실행되는 제1 안티멀웨어 어플리케이션으로서, 상기 시스템 온 칩에는 포함되어 있지 않은 상기 제1 안티멀웨어 어플리케이션; 및
상기 중앙처리장치에 의해 실행되는 제2 안티멀웨어 어플리케이션으로서, 상기 시스템 온 칩에는 포함되어 있지 않은 상기 제2 안티멀웨어 어플리케이션;을 더 포함하며,
상기 리스트 관리부는, 상기 안티멀웨어 어플리케이션들 중 적어도 하나 이상의 어플리케이션으로부터 멀웨어 스캔 명령을 수신하면, 스캔대상 파일에 대한 체크섬을 암호/인증 엔진에게 요청하여 제공받아, 상기 스캔대상 파일에 대한 체크섬이 상기 체크섬 리스트에 있는지 여부를 판단하는 것을 특징으로 하는 단말장치.
The method of claim 1,
A first anti-malware application executed by the central processing unit, the first anti-malware application not included in the system on chip; And
A second anti-malware application executed by the CPU, the second anti-malware application not included in the system on chip;
When the list manager receives a malware scan command from at least one of the anti-malware applications, the list manager requests and receives a checksum for a scan target file from an encryption / authentication engine, and the checksum for the scan target file is determined. And determining whether or not it is on the list.
제 9 항에 있어서,
상기 안티멀웨어 어플리케이션들은, 상기 암호/인증 엔진으로부터 제공받은 체크섬이 상기 체크섬 리스트에 없다고 결정된 경우에만, 상기 스캔대상 파일에 대한 멀웨어 스캔을 수행하며,
상기 리스트 관리부는, 상기 안티멀웨어 어플리케이션들에 의해서 상기 스캔대상 파일에 멀웨어가 존재하지 않는다고 판단된 경우에만, 상기 스캔대상 파일을 상기 체크섬 리스트에 추가하는 것을 특징으로 하는 단말장치.
The method of claim 9,
The anti-malware applications perform a malware scan on the scan target file only when it is determined that the checksum provided from the encryption / authentication engine is not in the checksum list.
And the list manager adds the scan target file to the checksum list only when it is determined by the antimalware applications that no malware exists in the scan target file.
제 1 항에 있어서,
상기 중앙처리장치에 의해 실행되고, 제1 알고리즘을 사용하여 계산한 체크섬에 기초하여 멀웨어 스캔 동작을 수행하는 제1 안티멀웨어 어플리케이션으로서, 상기 시스템 온 칩에는 포함되어 있지 않은 상기 제1 안티멀웨어 어플리케이션; 및
상기 중앙처리장치에 의해 실행되고, 제2 알고리즘을 사용하여 계산한 체크섬에 기초하여 멀웨어 스캔 동작을 수행하는 제2 안티멀웨어 어플리케이션으로서, 상기 시스템 온 칩에는 포함되어 있지 않은 상기 제2 안티멀웨어 어플리케이션;을 더 포함하며,
상기 암호/인증 엔진은, 제1 안티멀웨어 어플리케이션에 의한 멀웨어 스캔 동작이 수행될 경우에는 제1 알고리즘을 사용하여 체크섬을 계산하여 제1 안티멀웨어 어플리케이션에게 제공하고, 제2 안티멀웨어 어플리케이션에 의한 멀웨어 스캔 동작이 수행될 경우에는 제2 알고리즘을 사용하여 체크섬을 계산하여 제2 안티멀웨어 어플리케이션에게 제공하는 것을 특징으로 하는 단말장치.
The method of claim 1,
A first anti-malware application executed by the central processing unit and performing a malware scan operation based on a checksum calculated using a first algorithm, the first anti-malware application not included in the system on chip; And
A second antimalware application executed by the central processing unit and performing a malware scan operation based on a checksum calculated using a second algorithm, the second antimalware application not included in the system on chip; More,
When the malware scan operation by the first anti-malware application is performed, the encryption / authentication engine calculates and provides a checksum to the first anti-malware application using the first algorithm, and scans the malware by the second anti-malware application. When the operation is performed, a terminal device, characterized in that for calculating a checksum using a second algorithm and providing the second antimalware application.
모바일 단말장치에서의 안티멀웨어 스캔 방법에 있어서,
체크섬 리스트를 저장하는 단계;
스캔대상 파일의 체크섬을 암호/인증 엔진이 계산하는 단계;
상기 암호/인증 엔진이 계산한 체크섬이 상기 체크섬 리스트에 있는지 여부에 따라서, 상기 스캔대상 파일에 대한 안티멀웨어 스캔 동작을 수행할지 여부를 결정하는 단계;를 포함하며,
상기 암호/인증 엔진은 상기 모바일 단말장치에 구비된 시스템 온 칩에 구비된 것을 특징으로 하는 모바일 단말장치에서의 안티멀웨어 스캔 방법.
In the anti-malware scanning method in a mobile terminal device,
Storing a checksum list;
Calculating, by the encryption / authentication engine, the checksum of the scan target file;
Determining whether to perform an anti-malware scan operation on the scan target file according to whether the checksum calculated by the cipher / authentication engine is in the checksum list.
The encryption / authentication engine is an anti-malware scan method in a mobile terminal device, characterized in that provided in the system on a chip provided in the mobile terminal device.
제 12 항에 있어서,
상기 암호/인증 엔진이 계산한 체크섬이 상기 체크섬 리스트에 없는 경우에, 상기 시스템 온 칩에 포함되어 있지 않은 안티멀웨어 어플리케이션이, 상기 스캔대상 파일에 대한 멀웨어 스캔을 수행하는 것을 특징으로 하는 모바일 단말장치에서의 안티멀웨어 스캔 방법.
13. The method of claim 12,
When the checksum calculated by the encryption / authentication engine is not in the checksum list, an anti-malware application not included in the system on chip performs a malware scan on the scan target file. Anti-malware scanning on Windows.
제 13 항에 있어서,
상기 안티멀웨어 어플리케이션에 의한 멀웨어 스캔 결과, 상기 스캔대상 파일에 멀웨어가 존재하지 않는 경우, 상기 스캔대상 파일에 대한 체크섬을 상기 체크섬 리스트에 추가하는 단계;를 더 포함하는 것을 특징으로 하는 모바일 단말장치에서의 안티멀웨어 스캔 방법.
The method of claim 13,
And adding a checksum for the scan target file to the checksum list when malware is not present in the scan target file as a result of the malware scan by the anti-malware application. How to scan anti-malware.
제 13 항에 있어서,
상기 안티멀웨어 어플리케이션에 의한 멀웨어 스캔 결과, 상기 스캔대상 파일에 멀웨어가 존재하지 않는 경우, 상기 스캔대상 파일에 대한 체크섬을 상기 모바일 단말장치와 네트워크를 통해서 연결된 외부의 안티멀웨어 시스템으로 전송하는 단계; 및
상기 외부의 안티멀웨어 시스템으로부터 상기 스캔대상 파일에 대한 멀웨어가 존재하는지 여부에 대한 결과를 제공받는 단계;를 더 포함하는 것을 특징으로 하는 모바일 단말장치에서의 안티멀웨어 스캔 방법.
The method of claim 13,
Transmitting a checksum for the scan target file to an external anti-malware system connected to the mobile terminal through a network when malware is not present in the scan target file as a result of the malware scan by the anti-malware application; And
And receiving a result of whether or not there is malware for the scan target file from the external anti-malware system.
제 15 항에 있어서,
상기 외부의 안티멀웨어 시스템으로부터 제공받은 결과가 상기 스캔대상 파일에 멀웨어가 존재하지 않는 것인 경우에, 상기 스캔대상 파일의 체크섬을 상기 체크섬 리스트에 추가하는 단계;를 더 포함하는 것을 특징으로 하는 모바일 단말장치에서의 안티멀웨어 스캔 방법.
The method of claim 15,
And adding a checksum of the scan target file to the checksum list when the result provided from the external anti-malware system indicates that malware does not exist in the scan target file. Anti-malware scanning method on terminal device.
제 12 항에 있어서,
상기 암호/인증 엔진이 계산한 체크섬이 상기 체크섬 리스트에 없는 경우에, 상기 시스템 온 칩에 포함되어 있지 않은 안티멀웨어 어플리케이션이, 상기 암호/인증 엔진이 계산한 체크섬을 사용하여 상기 스캔대상 파일에 대한 멀웨어 스캔을 수행하는 것을 특징으로 하는 모바일 단말장치에서의 안티멀웨어 스캔 방법.
13. The method of claim 12,
If the checksum calculated by the cipher / authentication engine is not in the checksum list, an anti-malware application not included in the system on chip uses the checksum calculated by the cipher / authentication engine to check the file to be scanned. An anti-malware scanning method in a mobile terminal device, characterized in that for performing a malware scan.
모바일 단말장치에,
체크섬 리스트를 저장 및 관리하는 단계;
상기 모바일 단말장치에 구비된 시스템 온 칩이 스캔대상 파일의 체크섬을 계산하도록 하는 단계; 및
상기 암호/인증 엔진이 계산한 체크섬이 상기 체크섬 리스트에 있는지 여부에 따라서, 상기 스캔대상 파일에 대한 안티멀웨어 스캔 동작을 수행할지 여부를 결정하는 단계;를 실행시키는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
On the mobile terminal,
Storing and managing a checksum list;
Allowing a system on chip included in the mobile terminal device to calculate a checksum of a scan target file; And
Determining whether to perform an anti-malware scan operation on the scan target file according to whether or not the checksum calculated by the encryption / authentication engine is in the checksum list; media.
제 18 항에 있어서,
상기 프로그램은, 또한,
상기 모바일 단말장치에,
상기 암호/인증 엔진이 계산한 체크섬이 상기 체크섬 리스트에 없는 경우에, 상기 시스템 온 칩에 포함되어 있지 않은 안티멀웨어 어플리케이션이, 상기 스캔대상 파일에 대한 멀웨어 스캔을 수행하도록 하는 단계;를 실행시키는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
The method of claim 18,
The program also,
In the mobile terminal device,
If the checksum calculated by the encryption / authentication engine is not in the checksum list, causing the anti-malware application not included in the system on chip to perform a malware scan of the scan target file; A computer readable recording medium having recorded thereon a program.
제 19 항에 있어서,
상기 프로그램은, 또한,
상기 모바일 단말장치에,
상기 안티멀웨어 어플리케이션에 의한 멀웨어 스캔 결과, 상기 스캔대상 파일에 멀웨어가 존재하지 않는 경우, 상기 스캔대상 파일에 대한 체크섬을 상기 체크섬 리스트에 추가하는 단계;를 실행시키는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
The method of claim 19,
The program also,
In the mobile terminal device,
And adding a checksum for the scan target file to the checksum list when malware is not present in the scan target file as a result of the malware scan by the anti-malware application. Readable Recording Media.
제 19 항에 있어서,
상기 프로그램은, 또한,
상기 모바일 단말장치에,
상기 안티멀웨어 어플리케이션에 의한 멀웨어 스캔 결과, 상기 스캔대상 파일에 멀웨어가 존재하지 않는 경우, 상기 스캔대상 파일에 대한 체크섬을 상기 모바일 단말장치와 네트워크를 통해서 연결된 외부의 안티멀웨어 시스템으로 전송하는 단계;를 실행시키는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
The method of claim 19,
The program also,
In the mobile terminal device,
Transmitting a checksum for the scan target file to an external anti-malware system connected to the mobile terminal through a network if no malware exists in the scan target file as a result of the malware scan by the anti-malware application; A computer-readable recording medium having recorded thereon a program which is executed.
제 21 항에 있어서,
상기 프로그램은, 또한,
상기 모바일 단말장치에,
상기 외부의 안티멀웨어 시스템으로부터 제공받은 결과가 상기 스캔대상 파일에 멀웨어가 존재하지 않는 것인 경우에, 상기 스캔대상 파일의 체크섬을 상기 체크섬 리스트에 추가하는 단계;를 실행시키는 것을 특징으로 하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
22. The method of claim 21,
The program also,
In the mobile terminal device,
And adding a checksum of the scan target file to the checksum list when the result provided from the external anti-malware system is that malware does not exist in the scan target file. A computer-readable recording medium that has been recorded.
KR1020120086670A 2012-08-08 2012-08-08 Method of malware scanning using a checksum list and terminal apparatus using the same KR20140020414A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120086670A KR20140020414A (en) 2012-08-08 2012-08-08 Method of malware scanning using a checksum list and terminal apparatus using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120086670A KR20140020414A (en) 2012-08-08 2012-08-08 Method of malware scanning using a checksum list and terminal apparatus using the same

Publications (1)

Publication Number Publication Date
KR20140020414A true KR20140020414A (en) 2014-02-19

Family

ID=50267396

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120086670A KR20140020414A (en) 2012-08-08 2012-08-08 Method of malware scanning using a checksum list and terminal apparatus using the same

Country Status (1)

Country Link
KR (1) KR20140020414A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017211945A (en) * 2016-05-27 2017-11-30 富士通株式会社 File determination program, file determination device and file determination method

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017211945A (en) * 2016-05-27 2017-11-30 富士通株式会社 File determination program, file determination device and file determination method

Similar Documents

Publication Publication Date Title
US10511616B2 (en) Method and system for detecting and remediating polymorphic attacks across an enterprise
JP6670907B2 (en) System and method for blocking script execution
JP6352332B2 (en) System and method for restoring changed data
JP6182589B2 (en) System and method for secure third party data storage
JP6196393B2 (en) System and method for optimizing scanning of pre-installed applications
US8677493B2 (en) Dynamic cleaning for malware using cloud technology
US8904492B2 (en) Method of controlling information processing system, computer-readable recording medium storing program for controlling apparatus
US8656494B2 (en) System and method for optimization of antivirus processing of disk files
CN104680064A (en) Method and system for optimizing virus scanning of files using file fingerprints
EP3270318B1 (en) Dynamic security module terminal device and method for operating same
US11520889B2 (en) Method and system for granting access to a file
WO2015109912A1 (en) Buffer overflow attack detection device and method and security protection system
US8448243B1 (en) Systems and methods for detecting unknown malware in an executable file
JP2013533554A (en) System and method for creating customized trust bands for use in malware detection
JP6243479B2 (en) Inoculators and antibodies for computer security
KR101859823B1 (en) Ransomware prevention technique using key backup
KR20140020414A (en) Method of malware scanning using a checksum list and terminal apparatus using the same
US8839374B1 (en) Systems and methods for identifying security risks in downloads
JP6635029B2 (en) Information processing apparatus, information processing system, and communication history analysis method
JP2008276580A (en) Electronic system, electronic equipment, virus pattern management device, program, and recording medium
KR101436496B1 (en) System for remote diagnosis of malware
CN114756859A (en) File protection processing method and device
RU2696236C1 (en) Method of generating information request about file during antivirus checking in order to exclude false operation
EP3588350B1 (en) Method and system for generating a request for information on a file to perform an antivirus scan
KR102574384B1 (en) Distributed endpoint security method using blockchain technology and device thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application