WO2014010829A1 - 캐싱을 이용한 악성코드 진단장치 및 방법 - Google Patents

캐싱을 이용한 악성코드 진단장치 및 방법 Download PDF

Info

Publication number
WO2014010829A1
WO2014010829A1 PCT/KR2013/005085 KR2013005085W WO2014010829A1 WO 2014010829 A1 WO2014010829 A1 WO 2014010829A1 KR 2013005085 W KR2013005085 W KR 2013005085W WO 2014010829 A1 WO2014010829 A1 WO 2014010829A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
file
diagnostic
diagnosis
caching
Prior art date
Application number
PCT/KR2013/005085
Other languages
English (en)
French (fr)
Inventor
주설우
이광우
남진하
Original Assignee
주식회사 안랩
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 안랩 filed Critical 주식회사 안랩
Publication of WO2014010829A1 publication Critical patent/WO2014010829A1/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/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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

Definitions

  • the present invention relates to the diagnosis of malicious code, and in particular, includes an application file when performing malware diagnosis on a file installed in a mobile terminal such as a smartphone based on an Android operating system (OS). Diagnose all files, but for application files that are relatively heavy, caching database with unique information that can prove the integrity of the application file. After storing the data in the caching DB, the same application stored in the caching DB is not executed. Instead, the previous diagnosis information is output directly as a diagnosis result for the presence of malicious code, so that the occurrence of load due to the execution of the malicious code diagnosis on the portable terminal is minimized. Apparatus and Method for Diagnosing Malware Using Caching A.
  • smart phones which are recently spreading, can install various functions such as multimedia playback functions, and users are using smart phones for various purposes.
  • a smart phone In general, a smart phone combines the advantages of a mobile phone and a personal digital assistant (PDA), and is implemented by integrating data communication functions such as schedule management, fax transmission, and Internet access.
  • PDA personal digital assistant
  • a smart phone is equipped with a wireless communication module such as Wi-Fi, and can transmit and receive data through the Internet network. Also, it is possible to search for information on the Internet and to send and receive picture information such as directions by using an electronic pen on the liquid crystal display. .
  • Such smartphones have their own operating systems, and active development of applications that can be executed by the operating systems is being made.
  • Android platform is an open source platform released by Google's OHA (Open Handset Alliance). It is a Linux kernel and a virtual machine (VM). ), A software package that includes a framework and an application.
  • Google's OHA Open Handset Alliance
  • VM virtual machine
  • a method for diagnosing malware in a portable terminal such as a smartphone equipped with an Android platform
  • a method for performing a diagnosis every time for every apk file to be examined and a load for diagnosing the apk are minimized.
  • the diagnosis is performed on all files including an application file, and the diagnostic information that performs the diagnosis is applied to an application file that generates a relatively large load.
  • the same application stored in the caching DB is not executed, and the previous diagnostic information is immediately output as a diagnosis result for the presence of malware.
  • the present invention described above is a malicious code diagnosis apparatus, and includes a caching DB that stores unique information and diagnostic information of an application file for diagnosis of a malicious file, and a corresponding application in the caching DB when the application file is diagnosed. If the diagnostic information for the file exists, the diagnostic engine unit for outputting the diagnostic information as a diagnostic result.
  • the diagnostic engine unit extracts unique information of a diagnosis target application file when the diagnosis is performed and checks whether there is a matching unique information in the caching DB, and if there is a matching unique information, diagnoses the corresponding application file. It is characterized by outputting the diagnostic information previously performed as a diagnostic result without performing.
  • the diagnostic engine unit may be configured to store the unique information and the diagnostic information of the application in the caching DB after performing a diagnosis on the application file in which the corresponding unique information does not exist in the caching DB.
  • the unique information may include at least one of file characteristic information, system characteristic information, or diagnostic policy information for the application file.
  • the file characteristic information may include at least one file size, file name, or file last change time information of the application file.
  • the system characteristic information may include an inode number of the application file.
  • the diagnostic apparatus may further include a refresh controller configured to update and store the changed unique information in the caching DB when a change to the unique information occurs.
  • the application file may be an apk file that is an installation file of the application.
  • the portable terminal may be a smartphone, a tablet PC, or a PDA equipped with an Android OS.
  • the present invention provides a method for diagnosing malicious code, the method comprising: storing unique information and diagnostic information of an application file that has been diagnosed as a malicious file in a caching DB, and performing a diagnosis of an application file in the caching DB. And outputting the diagnostic information as a diagnosis result when the diagnostic information on the corresponding application file exists.
  • the outputting of the diagnosis result may include extracting unique information of a diagnosis target application file when the diagnosis is performed and checking whether there is matching unique information in the caching DB, and matching the unique information with each other. If the application file does not perform a diagnosis, it characterized in that it comprises the step of outputting the diagnostic information previously performed as a diagnostic result.
  • the method may further include storing unique information and diagnostic information of the application in the caching DB after performing diagnosis on the corresponding application file when there is no matching unique information in the caching DB. It is done.
  • the method may further include updating and storing the changed unique information in the caching DB when a change to the unique information occurs.
  • the unique information may include at least one of file characteristic information, system characteristic information, or diagnostic policy information for the application file.
  • the file characteristic information may include at least one file size, a file name, and a file last change time information of the application file.
  • the system characteristic information may include an inode number of the application file.
  • the diagnosis is performed on all files including an application file, but the application information that performs the diagnosis is applied to the corresponding application file for generating a relatively heavy load.
  • the same application stored in the caching DB does not perform the malicious code diagnosis, and outputs the previous diagnostic information as a diagnosis result of the presence of the malicious code.
  • FIG. 1 is a detailed block diagram of an Android-based portable terminal to which a malware diagnosis apparatus according to an embodiment of the present invention is applied;
  • FIG. 2 is a detailed block diagram of an apparatus for diagnosing malware using caching according to an embodiment of the present invention
  • FIG. 3 is a flowchart for controlling malware diagnosis using caching according to an embodiment of the present invention.
  • Combinations of each block of the accompanying block diagram and each step of the flowchart may be performed by computer program instructions.
  • These computer program instructions may be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment such that instructions executed through the processor of the computer or other programmable data processing equipment may not be included in each block or flowchart of the block diagram. It will create means for performing the functions described in each step.
  • These computer program instructions may be stored in a computer usable or computer readable memory that can be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, and thus the computer usable or computer readable memory.
  • instructions stored in may produce an article of manufacture containing instruction means for performing the functions described in each block or flowchart of each step of the block diagram.
  • Computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operating steps may be performed on the computer or other programmable data processing equipment to create a computer-implemented process to create a computer or other programmable data. Instructions that perform processing equipment may also provide steps for performing the functions described in each block of the block diagram and in each step of the flowchart.
  • each block or step may represent a portion of a module, segment or code that includes one or more executable instructions for executing a specified logical function (s).
  • a specified logical function s.
  • the functions noted in the blocks or steps may occur out of order.
  • the two blocks or steps shown in succession may in fact be executed substantially concurrently or the blocks or steps may sometimes be performed in the reverse order, depending on the functionality involved.
  • Figure 1 shows a detailed block diagram of the Android-based portable terminal to which the malware diagnosis apparatus according to an embodiment of the present invention is applied.
  • Such a portable terminal may include a terminal such as a smartphone or a tablet PC.
  • the key input unit 104 may be composed of a plurality of numeric keys and function keys for various operation requests of the portable terminal 100, and generates a corresponding key data when the user presses a predetermined key control unit 108 Will output
  • the key input unit 104 as described above has a difference in character arrangement by manufacturer and country.
  • the key input unit 104 may be displayed on the display unit 102 in a touch screen format whenever necessary by a software method instead of a physical keypad in a smart phone, a tablet PC, or the like. have.
  • the communication unit 112 may be connected to the Internet via a wired or wireless network to perform data transmission and reception, and may receive an application file downloaded by a user from a site such as an Android market.
  • the display unit 102 displays various information of the portable terminal 100 under the control of the controller 108, and receives and displays key data generated by the key input unit 104 and various information signals of the controller 108.
  • the controller 108 controls the overall operation of the portable terminal 100 according to the operation program stored in the memory unit 106.
  • the operating program as described above connects the display unit 102 and the key input unit 104 as well as the basic operating system required for the operation of the terminal 100, manages input / output of data, or the terminal 100. It refers to software that is preprogrammed at the time of manufacture to operate the internal application of the same.
  • the controller 108 receives the application file selected by the user from the Android market through the communication unit 112, installs it, and controls the corresponding application to be executed in the portable terminal 100.
  • the portable terminal when performing the diagnosis of the presence or absence of malicious code for all files including the application file installed in the portable terminal 100.
  • the application file that generates a lot of load in the mobile terminal 100 stores the previous diagnostic information that has been previously diagnosed, and is the same application whose integrity is verified. In this case, it is possible to minimize the occurrence of load caused by performing the malicious code diagnosis by directly outputting the previous diagnosis information as the diagnosis result without performing the diagnosis again.
  • FIG. 2 is a detailed block diagram of a diagnostic apparatus for diagnosing malicious code of a portable terminal according to an exemplary embodiment of the present invention.
  • the caching DB 202, the diagnosis engine unit 200, and the refresh controller 240 are described. ), And the like.
  • the caching DB 202 stores the unique information and the previous diagnostic information for verifying the integrity of the application file for which the diagnosis of the malicious code has been performed among all the files installed in the portable terminal 100.
  • the application file may be an apk file, which is an installation file of an Android application, and the unique information may include the file size of the application file, the file name, the time of the last change of the file (including creation time), and the inode number of the application file. , Vaccine setting information, and the like.
  • information such as a file size, a file name, and a file last change time of the application file may be classified as file characteristic information of the application file, and information such as an inode number of the application file may be classified as system characteristic information.
  • information such as vaccine setting information set by a user for diagnosing whether an application is malicious code may be classified as diagnostic policy information.
  • the diagnosis engine unit 200 performs diagnosis on all files installed in the portable terminal 100 when performing a diagnosis of the presence or absence of malicious code for all files including application files installed in the portable terminal 100. However, for application files that generate relatively heavy loads, the diagnostic information that was previously diagnosed is stored, and the same application whose integrity is proved does not need to be diagnosed again, and the previous diagnostic information is output directly as a diagnosis result. The occurrence can be minimized.
  • the diagnosis engine unit 200 extracts unique information of the corresponding application file when it is determined that the diagnosis target file is an application file. In addition, it checks whether there exists unique information matching the unique information of the extracted diagnostic target application file and the unique information stored in the caching DB (202). In this case, when unique information matching each other exists in the caching DB 202, the corresponding application file may be recognized as the same application file with integrity maintained, and the previous diagnostic information stored in the caching DB 202 may be provided as a diagnosis result. have.
  • the unique information may include a file size of the application file, a file name, a file last change time, an inode number of the application file, a diagnostic policy, and the like.
  • the diagnostic engine unit 200 may determine a file size of the application file, a file name, a file last change time, an inode number of the application file, a diagnosis policy, and the like for verifying the integrity of the application as described above in the caching DB 202. If there is unique information that matches each other in the caching DB 202 by checking whether there is unique information that matches all unique information, the corresponding application file is recognized as the same application file with integrity maintained, and the previous diagnostic information is regarded as a diagnosis result. To provide.
  • the inode number of the application file among the unique information as described above is a number provided to the application installed in the portable terminal 100 in the file system of the portable terminal, and when the application is deleted and reinstalled, the same inode number is provided. Since it is considered to be almost impossible to receive, the diagnostic engine unit 200 may secure the integrity of the application file using the remaining illustrated information including the inode number.
  • the refresh control unit 204 is an apparatus that updates the caching DB 202 with respect to unique information about an application file, etc., and refreshes the caching DB 202 when the unique information is changed or a diagnostic policy is changed. After refreshing), unique information or diagnostic policy information of the new application file is updated and stored in the caching DB 202.
  • FIGS. 1, 2, and 3 illustrates an operation control flow for diagnosing the presence or absence of malicious code in a file installed in the portable terminal 100 in the malware diagnosis apparatus 110 according to an embodiment of the present invention.
  • embodiments of the present invention will be described in detail with reference to FIGS. 1, 2, and 3.
  • the diagnosis engine unit 200 of the malware diagnosis apparatus 110 performs diagnosis on all files installed in the portable terminal 100. However, by performing a file type analysis (S300) to search for an application file having apk file format.
  • S300 file type analysis
  • the diagnostic engine unit 200 extracts the unique information of the corresponding application file, queries the caching DB 202, and identifies the unique information of the diagnosis target application file.
  • the unique information stored in the caching DB 202 is checked for matching unique information (S304).
  • the application file is recognized as the same application file with integrity maintained and provides diagnostic information stored for the corresponding application file as a diagnosis result ( S314).
  • the diagnostic engine unit 200 is unique in the caching DB (202), such as the file size of the application file, file name, file last change time, application inode number, diagnostic policy, etc. to ensure the integrity of the application as described above
  • the application file may be recognized as the same application file with integrity maintained.
  • the diagnosis engine The unit 200 decompresses the apk file with respect to the corresponding application file and performs diagnosis on the presence or absence of malicious code using signature information such as a hash value (S308).
  • the diagnosis engine unit 200 obtains diagnostic information of the corresponding application including information on the presence or absence of the malicious code.
  • the diagnosis engine unit 200 checks whether the corresponding application file on which the malicious code is diagnosed is a caching target file that should store diagnostic information in the caching DB 202. do. At this time, for example, if the diagnostic information is not stored in the caching DB 202, the application file on which the malicious code is diagnosed may be set as a caching target.
  • the diagnosis engine unit 200 diagnoses an application file for which malicious code diagnosis is performed because the same unique information does not exist in the caching DB 202, and then determines that the caching DB 202 is a caching target.
  • the unique information and the diagnostic information of the corresponding application file are stored (S312), and the diagnostic information about the application file is output as a diagnosis result (S314).
  • the diagnostic engine 200 performs a diagnosis on all files including an application file when performing a malware diagnosis on a file installed in the portable terminal 100, but for an application file that generates a relatively large load.
  • load generation may be minimized in the portable terminal 100 by directly outputting the previous diagnostic information as a diagnosis result without performing the diagnosis again.
  • caching the diagnostic information according to performing the malware diagnosis By storing in 202, it is possible to prevent repeated execution of the malware diagnosis on the same application file later.
  • the diagnosis is performed on all files including an application file, but the diagnosis is performed on an application file that generates a relatively large load.
  • the same application stored in the caching DB is not diagnosed with malicious code.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Virology (AREA)
  • Telephone Function (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명에서는 휴대용 단말기에 설치된 파일에 대한 악성코드 진단 수행 시 애플리케이션 파일을 포함하는 모든 파일에 대해 진단을 수행하되, 상대적으로 부하를 많이 발생시키는 애플리케이션 파일에 대해서는 진단을 수행한 진단 정보를 해당 애플리케이션 파일의 무결성을 입증할 수 있는 고유정보와 함께 캐싱 DB에 저장시킨 후, 캐싱 DB내 저장된 동일한 애플리케이션에 대해서는 악성코드 진단을 수행하지 않고, 이전 진단 정보를 악성코드 유무에 대한 진단 결과로 바로 출력시킴으로서 휴대용 단말기에서 악성코드 진단 수행에 따른 부하 발생이 최소화되도록 한다.

Description

캐싱을 이용한 악성코드 진단장치 및 방법
본 발명은 악성코드 진단에 관한 것으로, 특히 안드로이드(android) OS(operating system) 기반의 스마트폰(smartphone) 등의 휴대용 단말기에 설치된 파일에 대한 악성코드 진단 수행 시 애플리케이션 파일(application file)을 포함하는 모든 파일에 대해 진단을 수행하되, 상대적으로 부하를 많이 발생시키는 애플리케이션 파일에 대해서는 진단을 수행한 진단 정보를 해당 애플리케이션 파일의 무결성(integrity)을 입증할 수 있는 고유정보와 함께 캐싱 DB(data base)에 저장시킨 후, 캐싱 DB내 저장된 동일한 애플리케이션에 대해서는 악성코드 진단을 수행하지 않고, 이전 진단 정보를 악성코드 유무에 대한 진단 결과로 바로 출력시킴으로써 휴대용 단말기에서 악성코드 진단 수행에 따른 부하 발생이 최소화되도록 하는 캐싱을 이용한 악성코드 진단장치 및 방법에 관한 것이다.
근래에 들어 유무선 인터넷뿐만 아니라 이동통신 기술의 발달로, 단순히 전화통화 기능뿐만이 아닌 무선 인터넷 기능 등 다양한 기능을 갖춘 휴대폰이 보급되고 있다. 특히 최근에 보급이 확산되고 있는 스마트폰은 멀티미디어 재생기능 등의 다양한 기능의 응용프로그램의 설치가 가능하여, 사용자들이 여러 용도로 스마트폰을 이용하고 있다.
일반적으로 스마트폰은 휴대전화와 개인휴대단말기(personal digital assistant : PDA)의 장점을 합친 것으로, 휴대 전화기에 일정관리, 팩스 송수신 및 인터넷 접속 등의 데이터 통신기능을 통합시켜 구현된다. 통상 스마트폰에는 와이파이(wifi)와 같은 무선통신모듈이 장착되어 인터넷망을 통한 데이터 송수신도 가능하며, 인터넷 정보검색은 물론 액정디스플레이에 전자펜으로 문자를 입력하거나 약도 등 그림 정보를 송수신할 수 있다.
이러한 스마트폰은 저마다의 운영체제가 존재하며, 해당 운영체제에 의해 실행 가능한 응용프로그램의 개발이 활발히 이루어지고 있다.
위와 같은 스마트폰의 운영체제 중 안드로이드(Android) 플랫폼(platform)은 구글(Google) 사가 주도하는 OHA(Open Handset Alliance)에서 공개한 오픈 소스 플랫폼으로, 리눅스(Linux) 커널, 가상머신(VM : Virtual Machine), 프레임워크(Framework), 응용프로그램을 모두 포함하는 소프트웨어 패키지를 의미한다.
현재 안드로이드 플랫폼에 대한 사용자들의 기대가 상승하고, 단말 제조사와 이동 통신 서비스 제공사의 높은 호응으로 안드로이드 플랫폼을 탑재하는 스마트폰 등의 휴대용 단말기가 점점 늘어나고 있다.
위와 같이 안드로이드 플랫폼을 탑재한 휴대용 단말기 사용자가 늘어남에 따라 안드로이드 OS를 타겟으로 하는 악성코드 또한 급격히 증가하고 있다.
이에 따라, 안드로이드 플랫폼을 탑재한 스마트폰 등의 휴대용 단말기의 안전한 사용을 위해서 모바일 백신(mobile vaccine)을 거의 모든 단말에서 사용하고 있지만, 모바일 환경의 특성상 부하에 민감하기 때문에 보안성을 높이기 위한 방법들과 그 사용에 있어서 항상 트레이드 오프(trade off)가 발생하며, 이와 같은 백신 실행에 있어서의 부하는 일반파일보다 안드로이드 애플리케이션의 설치파일인 apk 파일에서 발생하게 되어, 애플리케이션 파일에 대한 악성코드 진단의 효율적인 방법이 필요한 실정이다.
한편, 종래 안드로이드 플랫폼을 탑재한 스마트폰 등의 휴대용 단말기에서의 악성 코드 진단방법으로는 검사를 시도하는 모든 apk파일에 대해 매번 진단을 수행하는 방법과 apk를 진단하는 부하를 최소화하기 위해 apk에 대한 필터(filter)를 사용하여 사전 진단을 하는 방법 등이 대부분이다.
그러나, 모든 apk 파일에 대해 매번 진단을 수행하는 전자의 경우 apk 진단에 따른 단말기의 속도저하와 성능 부하가 심하게 발생하는 문제점이 있으며, apk에 대한 필터를 사용하여 사전 진단하는 후자의 경우 하나의 dex 파일 진단으로 다수의 변종 apk 파일을 진단할 수 있음에도 불구하고 변종 악성코드에 대해서 사전진단을 위한 apk 필터를 변종 악성 코드마다 대응할 수밖에 없어 악성코드 대응에 어려움이 있었다.
따라서, 본 발명은 휴대용 단말기에 설치된 파일에 대한 악성코드 진단 수행 시 애플리케이션 파일을 포함하는 모든 파일에 대해 진단을 수행하되, 상대적으로 부하를 많이 발생시키는 애플리케이션 파일에 대해서는 진단을 수행한 진단 정보를 해당 애플리케이션 파일의 무결성을 입증할 수 있는 고유정보와 함께 캐싱 DB에 저장시킨 후, 캐싱 DB내 저장된 동일한 애플리케이션에 대해서는 악성코드 진단을 수행하지 않고, 이전 진단 정보를 악성코드 유무에 대한 진단 결과로 바로 출력시킴으로서 휴대용 단말기에서 악성코드 진단 수행에 따른 부하 발생이 최소화되도록 하는 캐싱을 이용한 악성코드 진단장치 및 방법을 제공하고자 한다.
상술한 본 발명은 악성코드 진단장치로서, 악성 파일인지 여부에 대한 진단을 수행한 애플리케이션 파일의 고유정보와 진단 정보를 저장하고 있는 캐싱 DB와, 애플리케이션 파일에 대한 진단 수행 시 상기 캐싱 DB내에 해당 애플리케이션 파일에 대한 진단정보가 존재하는 경우, 상기 진단 정보를 진단 결과로 출력시키는 진단 엔진부를 포함한다.
또한, 상기 진단 엔진부는, 상기 진단 수행 시 진단 대상 애플리케이션 파일의 고유정보를 추출하여 상기 캐싱 DB내 일치하는 고유정보가 존재하는지 검사하고, 일치하는 고유정보가 존재하는 경우 해당 애플리케이션 파일에 대해서는 진단을 수행하지 않고, 이전에 수행된 진단 정보를 진단 결과로 출력시키는 것을 특징으로 한다.
또한, 상기 진단 엔진부는, 상기 캐싱 DB내 일치하는 고유정보가 존재하지 않는 애플리케이션 파일에 대해서는 진단을 수행한 후, 상기 애플리케이션의 고유정보와 진단정보를 상기 캐싱 DB내 저장시키는 것을 특징으로 한다.
또한, 상기 고유정보는, 상기 애플리케이션 파일에 대한 파일특성정보, 시스템 특성정보 또는 진단정책 정보 중 적어도 어느 하나 이상을 포함하는 것을 특징으로 한다.
또한, 상기 파일 특성 정보는, 상기 애플리케이션 파일의 파일크기, 파일 이름 또는 파일 최종 변경 시각 정보를 적어도 하나 이상 포함하는 것을 특징으로 한다.
또한, 상기 시스템 특성 정보는, 상기 애플리케이션 파일의 아이노드 넘버를 포함하는 것을 특징으로 한다.
또한, 상기 진단장치는, 상기 고유정보에 대한 변경이 발생하는 경우 변경된 고유정보를 상기 캐싱 DB에 갱신시켜 저장하는 리프레쉬 제어부를 더 포함하는 것을 특징으로 한다.
또한, 상기 애플리케이션 파일은, 상기 애플리케이션의 설치파일인 apk파일인 것을 특징으로 한다.
또한, 상기 휴대용 단말기는, 안드로이드 OS가 탑재된 스마트폰, 테블릿 PC 또는 PDA인 것을 특징으로 한다.
또한, 본 발명은 악성코드 진단방법으로서, 악성파일인지 여부에 대한 진단을 수행한 애플리케이션 파일의 고유정보와 진단 정보를 캐싱 DB에 저장시키는 단계와, 애플리케이션 파일에 대한 진단 수행 시, 상기 캐싱 DB내에 해당 애플리케이션 파일에 대한 진단정보가 존재하는 경우 상기 진단 정보를 진단 결과로 출력시키는 단계를 포함한다.
또한, 상기 진단결과로 출력시키는 단계는, 상기 진단 수행 시 진단 대상 애플리케이션 파일의 고유정보를 추출하여 상기 캐싱 DB내 일치하는 고유정보가 존재하는지 여부를 검사하는 단계와, 상기 고유정보가 서로 일치하는 경우 해당 애플리케이션 파일에 대해서는 진단을 수행하지 않고, 이전에 수행된 진단 정보를 진단 결과로 출력시키는 단계를 포함하는 것을 특징으로 한다.
또한, 상기 캐싱 DB내 일치하는 고유정보가 존재하지 않는 경우, 해당 애플리케이션 파일에 대해서는 진단을 수행한 후, 상기 애플리케이션의 고유정보와 진단정보를 상기 캐싱 DB내 새로이 저장시키는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 방법은, 상기 고유정보에 대한 변경이 발생하는 경우 변경된 고유정보를 상기 캐싱 DB에 갱신시켜 저장하는 단계를 더 포함하는 것을 특징으로 한다.
또한, 상기 고유정보는, 상기 애플리케이션 파일에 대한 파일특성정보, 시스템 특성정보 또는 진단정책 정보 중 적어도 어느 하나 이상을 포함하는 것을 특징으로 한다.
또한, 상기 파일 특성 정보는, 상기 애플리케이션 파일의 파일크기, 파일 이름, 파일 최종 변경 시각 정보를 적어도 하나 이상 포함하는 것을 특징으로 한다.
또한, 상기 시스템 특성 정보는, 상기 애플리케이션 파일의 아이노드 넘버를 포함하는 것을 특징으로 한다.
본 발명은 휴대용 단말기에 설치된 파일에 대한 악성코드 진단 수행 시 애플리케이션 파일을 포함하는 모든 파일에 대해 진단을 수행하되, 상대적으로 부하를 많이 발생시키는 애플리케이션 파일에 대해서는 진단을 수행한 진단 정보를 해당 애플리케이션 파일의 무결성을 입증할 수 있는 고유정보와 함께 캐싱 DB에 저장시킨 후, 캐싱 DB내 저장된 동일한 애플리케이션에 대해서는 악성코드 진단을 수행하지 않고, 이전 진단 정보를 악성코드 유무에 대한 진단 결과로 바로 출력시킴으로서 휴대용 단말기에서 악성코드 진단 수행에 따른 부하 발생이 최소화되도록 할 수 있는 이점이 있다.
도 1은 본 발명의 실시예에 따른 악성코드 진단장치가 적용되는 안드로이드 기반 휴대용 단말기의 상세 블록 구성도,
도 2는 본 발명의 실시예에 따른 캐싱을 이용한 악성코드 진단장치의 상세 블록 구성도,
도 3은 본 발명의 실시예에 따른 캐싱을 이용한 악성코드 진단 제어 흐름도.
이하, 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시 예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
도 1은 본 발명의 실시예에 따른 악성코드 진단장치가 적용되는 안드로이드 기반 휴대용 단말기의 상세 블록 구성을 도시한 것이다.
이러한 휴대용 단말기는 스마트폰, 테블릿 PC 등의 단말기를 포함할 수 있다.
이하, 도 1을 참조하여 휴대용 단말기의 각 구성요소와 악성코드 진단장치의 동작을 상세히 설명하기로 한다.
먼저, 키입력부(104)는 휴대용 단말기(100)의 다양한 동작 요청을 위한 다수의 숫자키 및 기능키로 구성될 수 있으며, 사용자가 소정의 키를 누를 때 해당하는 키데이터를 발생하여 제어부(108)로 출력한다. 위와 같은 키입력부(104)는 제조사별, 국가별로 문자 배열의 차이가 있다. 또한, 키입력부(104)는 스마트폰(smart phone), 테블릿 PC 등에서는 물리적인 키패드(keypad) 대신, 소프트웨어 방식으로 필요시마다 표시부(102)상에 터치 스크린(touch screen) 형식으로 표시될 수도 있다.
통신부(112)는 유선망 또는 무선망을 통해 인터넷에 연결되어 데이터 송수신을 수행하며, 안드로이드 마켓 등의 사이트로부터 사용자에 의해 다운로드 선택된 애플리케이션 파일을 수신할 수 있다.
표시부(102)는 제어부(108)의 제어에 따라 휴대용 단말기(100)의 각종 정보를 표시하며, 키입력부(104)에서 발생되는 키데이터 및 제어부(108)의 각종 정보신호를 입력받아 디스플레이한다.
제어부(108)는 메모리부(106)에 저장된 동작 프로그램에 따라 휴대용 단말기(100)의 전반적인 동작을 제어한다. 위와 같은 동작 프로그램은 단말기(100)의 동작에 필요한 기본적인 운영 시스템(operating system) 뿐만 아니라, 표시부(102)와 키입력부(104)를 연결하고, 데이터의 입/출력을 관리하거나, 단말기(100)의 내부 애플리케이션(application) 등을 동작시키도록 제조 시 미리 프로그램밍(programing)되는 소프트웨어(software)를 통칭한다.
또한, 제어부(108)는 안드로이드 마켓 등에서 사용자에 의해 선택된 애플리케이션 파일을 통신부(112)를 통해 수신받은 후, 이를 설치하여 휴대용 단말기(100)에서 해당 애플리케이션이 실행될 수 있도록 제어한다.
이때, 위와 같이 휴대용 단말기(100)에 설치되는 다양한 애플리케이션에는 악의적인 사용자에 의해 제작된 악성 애플리케이션이 존재할 수 있으며, 이와 같은 악성 애플리케이션의 설치 시 휴대용 단말기(100)의 사용자 개인 정보를 탈취하거나 단말기 기능을 손상시키는 등의 여러 가지 문제점이 있을 수 있다.
따라서, 본 발명에 따라 예를 들어 휴대용 단말기(100)에 탑재되는 진단장치(110)에서는 휴대용 단말기(100)에 설치되는 애플리케이션 파일을 포함하는 모든 파일에 대한 악성코드 유무의 진단 수행 시 휴대용 단말기(100)에 설치된 모든 파일에 대해 진단을 수행하되, 휴대용 단말기(100)에서 상대적으로 부하를 많이 발생시키는 애플리케이션 파일에 대해서는 이전에 진단을 수행하였던 이전 진단 정보를 저장하였다가 무결성이 입증되는 동일한 애플리케이션인 경우 다시 진단을 수행하지 않고, 이전 진단 정보를 진단 결과로 바로 출력시킴으로서 악성코드 진단 수행에 따른 부하 발생이 최소화되도록 할 수 있다.
도 2는 본 발명의 실시예에 따른 휴대용 단말기의 악성코드를 진단하는 진단장치의 상세 블록 구성을 도시한 것으로, 캐싱 DB(202), 진단 엔진부(200), 리프레쉬 제어부(refresh controller)(240) 등을 포함한다.
이하, 도 1을 참조하여 본 발명의 악성코드 진단장치(110) 각부에서의 동작을 상세히 살펴보기로 한다.
먼저, 캐싱 DB(202)는 휴대용 단말기(100)에 설치된 모든 파일 중 악성코드에 대한 진단이 수행된 애플리케이션 파일의 무결성 입증을 위한 고유정보와 이전 진단정보를 저장한다.
이러한, 애플리케이션 파일은 안드로이드 애플리케이션의 설치파일인 apk 파일이 될 수 있으며, 고유정보는 애플리케이션 파일의 파일크기, 파일 이름, 파일 최종 변경 시각(생성시각 포함), 애플리케이션 파일의 아이노드 넘버(inode number), 백신의 설정정보 등을 포함할 수 있다.
이때, 애플리케이션 파일의 파일크기, 파일 이름, 파일 최종 변경 시각 등의 정보는 애플리케이션 파일의 파일특성정보로 분류될 수 있고, 애플리케이션 파일의 아이노드 넘버 등의 정보는 시스템 특성정보로 분류될 수 있다. 또한, 애플리케이션의 악성코드 여부의 진단을 위해 사용자가 설정하는 백신의 설정정보 등의 정보는 진단 정책 정보로 분류될 수 있다.
진단 엔진부(200)는 휴대용 단말기(100)에 설치되는 애플리케이션 파일을 포함하는 모든 파일에 대한 악성코드 유무의 진단 수행 시 휴대용 단말기(100)에 설치된 모든 파일에 대해 진단을 수행한다. 그러나 상대적으로 부하를 많이 발생시키는 애플리케이션 파일에 대해서는 이전에 진단을 수행하였던 진단 정보를 저장하였다가 무결성이 입증되는 동일한 애플리케이션인 경우 다시 진단을 수행하지 않고, 이전 진단 정보를 진단 결과로 바로 출력시킴으로서 부하 발생이 최소화되도록 할 수 있다.
즉, 진단 엔진부(200)는 휴대용 단말기(100)에 설치된 모든 파일에 대한 악성코드 유무를 진단하는 과정에서, 진단 대상인 파일이 애플리케이션 파일인 것으로 판단되는 경우, 해당 애플리케이션 파일의 고유정보를 추출하고, 추출된 진단 대상 애플리케이션 파일의 고유정보와 캐싱 DB(202)내 저장된 고유정보 중 일치하는 고유정보가 존재하는지 검사한다. 이때, 캐싱 DB(202)내 서로 일치하는 고유정보가 존재하는 경우 해당 애플리케이션 파일은 무결성이 유지된 동일한 애플리케이션 파일로 인정하여 캐싱 DB(202)에 저장되어 있는 이전 진단 정보를 진단 결과로서 제공할 수 있다.
이때, 고유정보는 애플리케이션 파일의 파일크기, 파일 이름, 파일 최종 변경 시각, 애플리케이션 파일의 아이노드 넘버, 진단 정책 등을 포함할 수 있음은 전술한 바와 같다. 이에 따라, 진단 엔진부(200)는 캐싱 DB(202)내 위와 같이 애플리케이션의 무결성을 입증하기 위한 애플리케이션 파일의 파일크기, 파일 이름, 파일 최종 변경 시각, 애플리케이션 파일의 아이노드 넘버, 진단 정책 등의 고유정보가 모두 일치하는 고유정보가 존재하는지를 검사하여 캐싱 DB(202)내 서로 일치하는 고유정보가 존재하는 경우, 해당 애플리케이션 파일은 무결성이 유지된 동일한 애플리케이션 파일로 인정하여 이전 진단 정보를 진단 결과로서 제공하는 것이다.
또한, 위와 같은 고유정보 중 애플리케이션 파일의 아이노드 넘버는 휴대용 단말기의 파일 시스템에서 휴대용 단말기(100)에 설치되는 애플리케이션에게 제공하는 번호로서, 애플리케이션이 삭제되었다가 다시 설치되는 경우 동일한 아이노드 번호를 제공받는 것은 거의 불가능한 것으로 간주되는 바, 진단 엔진부(200)는 아이노드 번호를 포함하는 나머지 예시한 정보를 이용하여 애플리케이션 파일의 무결성을 확보할 수도 있다.
리프레쉬 제어부(204)는 캐싱 DB(202)에 애플리케이션 파일에 대한 고유정보 등에 대한 갱신(update)을 수행하는 장치로, 고유정보가 변경되었거나 진단 정책 등이 변경되는 경우 캐싱 DB(202)를 리프레쉬(refresh)한 후, 새로운 애플리케이션 파일의 고유정보 또는 진단정책 정보 등을 캐싱 DB(202)에 갱신 저장시킨다.
도 3은 본 발명의 실시예에 따른 악성코드 진단장치(110)에서 휴대용 단말기(100)내 설치된 파일에서 악성 코드의 유무를 진단하는 동작 제어 흐름을 도시한 것이다. 이하, 도 1, 도 2 및 도 3을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.
먼저, 휴대용 단말기(100)에 설치된 파일에 대한 악성코드 유무 진단이 요청되는 경우, 악성코드 진단장치(110)의 진단 엔진부(200)는 휴대용 단말기(100)에 설치된 모든 파일에 대해 진단을 수행하되, 파일 유형 분석을 수행하여(S300) apk 파일 형식을 가지는 애플리케이션 파일을 검색한다.
이때, apk 파일 형식을 가지는 애플리케이션 파일이 검색되는 경우(S302), 진단 엔진부(200)는 해당 애플리케이션 파일의 고유정보를 추출하고, 캐싱 DB(202)를 조회하여 진단 대상 애플리케이션 파일의 고유정보와 캐싱 DB(202)내 저장된 고유정보 중 일치하는 고유정보가 존재하는지 검사한다(S304). 이때, 캐싱 DB(202)내 서로 일치하는 고유정보가 존재하는 경우(S306), 해당 애플리케이션 파일은 무결성이 유지된 동일한 애플리케이션 파일로 인정하여 해당 애플리케이션 파일에 대해 저장된 진단 정보를 진단 결과로서 제공한다(S314).
이때, 진단 엔진부(200)는 캐싱 DB(202)내 위와 같이 애플리케이션의 무결성을 확보하기 위한 애플리케이션 파일의 파일크기, 파일 이름, 파일 최종 변경 시각, 애플리케이션 파일의 아이노드 넘버, 진단 정책 등의 고유정보가 모두 일치하는 고유정보가 존재하는지를 검사하여 캐싱 DB(202)내 서로 일치하는 고유정보가 존재하는 경우 해당 애플리케이션 파일은 무결성이 유지된 동일한 애플리케이션 파일로 인정할 수 있다.
그러나, 이와 달리, 캐싱 DB(202)를 조회한 결과, 추출된 진단 대상 애플리케이션 파일의 고유정보와 캐싱 DB(202)내 저장된 고유정보 중 일치하는 고유정보가 존재하지 않는 경우(S304), 진단 엔진부(200)는 해당 애플리케이션 파일에 대해 apk 파일의 압축을 해제하고 해쉬값 등과 같은 시그니처 정보를 이용하여 악성코드 유무에 대한 진단을 수행한다(S308).
이에 따라, 애플리케이션 파일내 악성코드 유무가 진단되며, 진단 엔진부(200)는 악성코드 유무에 대한 정보를 포함하는 해당 애플리케이션의 진단 정보를 얻게 된다.
이어, 위와 같이 악성코드 유무에 대한 진단을 수행한 후, 진단 엔진부(200)는 악성코드 진단이 수행된 해당 애플리케이션 파일이 캐싱 DB(202)에 진단 정보를 저장해야 하는 캐싱 대상 파일인지를 검사한다. 이때, 예를 들어 악성코드 진단이 수행된 애플리케이션 파일에 대해서는 캐싱 DB(202)에 진단 정보가 저장되어 있지 않은 상태라면 캐싱 대상으로 설정되도록 할 수 있다.
즉, 진단 엔진부(200)는 캐싱 DB(202)내 동일한 고유정보가 존재하지 않아 악성코드 진단을 수행한 애플리케이션 파일에 대해서는 진단을 수행한 후, 이를 캐싱 대상으로 판단하여 캐싱 DB(202)에 해당 애플리케이션 파일의 고유정보와 진단 정보를 저장시키고(S312), 애플리케이션 파일에 대한 진단 정보를 진단 결과로 출력시킨다(S314).
위와 같이, 진단 엔진부(200)는 휴대용 단말기(100)에 설치된 파일에 대한 악성코드 진단 수행 시 애플리케이션 파일을 포함하는 모든 파일에 대해 진단을 수행하되, 상대적으로 부하를 많이 발생시키는 애플리케이션 파일에 대해서는 이전에 수행하였던 진단 정보를 저장하였다가 무결성이 입증되는 동일한 애플리케이션인 경우 다시 진단을 수행하지 않고, 이전 진단 정보를 진단 결과로 바로 출력시킴으로서 휴대용 단말기(100)에서 부하 발생이 최소화되도록 할 수 있다.
또한, 캐싱 DB(202)내 이전 진단 정보가 존재하지 않거나 고유정보의 값이 서로 달라 무결성이 입증되지 않는 애플리케이션 파일에 대해서는 악성코드 진단을 수행한 후, 악성코드 진단 수행에 따른 진단 정보를 캐싱 DB(202)에 저장함으로써 추후 동일한 애플리케이션 파일에 대한 악성코드 진단 수행이 반복되지 않도록 할 수 있다.
상기한 바와 같이, 본 발명에서는 휴대용 단말기에 설치된 파일에 대한 악성코드 진단 수행 시 애플리케이션 파일을 포함하는 모든 파일에 대해 진단을 수행하되, 상대적으로 부하를 많이 발생시키는 애플리케이션 파일에 대해서는 진단을 수행한 진단 정보를 해당 애플리케이션 파일의 무결성을 입증할 수 있는 고유정보와 함께 캐싱 DB에 저장시킨 후, 캐싱 DB내 저장된 동일한 애플리케이션에 대해서는 악성코드 진단을 수행하지 않고, 이전 진단 정보를 악성코드 유무에 대한 진단 결과로 바로 출력시킴으로서 휴대용 단말기에서 악성코드 진단 수행에 따른 부하 발생이 최소화되도록 한다.
한편 상술한 본 발명의 설명에서는 구체적인 실시예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 따라서 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.

Claims (16)

  1. 악성코드 진단장치로서,
    악성 파일인지 여부에 대한 진단을 수행한 애플리케이션 파일의 고유정보와 진단 정보를 저장하고 있는 캐싱 DB와,
    애플리케이션 파일에 대한 진단 수행 시 상기 캐싱 DB내에 해당 애플리케이션 파일에 대한 진단정보가 존재하는 경우, 상기 진단 정보를 진단 결과로 출력시키는 진단 엔진부
    를 포함하는 악성코드 진단장치.
  2. 제 1 항에 있어서,
    상기 진단 엔진부는,
    상기 진단 수행 시 진단 대상 애플리케이션 파일의 고유정보를 추출하여 상기 캐싱 DB내 일치하는 고유정보가 존재하는지 검사하고, 일치하는 고유정보가 존재하는 경우 해당 애플리케이션 파일에 대해서는 진단을 수행하지 않고, 이전에 수행된 진단 정보를 진단 결과로 출력시키는 것을 특징으로 하는 악성코드 진단장치.
  3. 제 2 항에 있어서,
    상기 진단 엔진부는,
    상기 캐싱 DB내 일치하는 고유정보가 존재하지 않는 애플리케이션 파일에 대해서는 진단을 수행한 후, 상기 애플리케이션의 고유정보와 진단정보를 상기 캐싱 DB내 저장시키는 것을 특징으로 하는 악성코드 진단장치.
  4. 제 2 항에 있어서,
    상기 고유정보는,
    상기 애플리케이션 파일에 대한 파일특성정보, 시스템 특성정보 또는 진단정책 정보 중 적어도 어느 하나 이상을 포함하는 것을 특징으로 하는 악성코드 진단장치.
  5. 제 4 항에 있어서,
    상기 파일 특성 정보는,
    상기 애플리케이션 파일의 파일크기, 파일 이름 또는 파일 최종 변경 시각 정보를 적어도 하나 이상 포함하는 것을 특징으로 하는 악성코드 진단장치.
  6. 제 4 항에 있어서,
    상기 시스템 특성 정보는,
    상기 애플리케이션 파일의 아이노드 넘버를 포함하는 것을 특징으로 하는 악성코드 진단장치.
  7. 제 2 항에 있어서,
    상기 진단장치는,
    상기 고유정보에 대한 변경이 발생하는 경우 변경된 고유정보를 상기 캐싱 DB에 갱신시켜 저장하는 리프레쉬 제어부를 더 포함하는 것을 특징으로 하는 악성코드 진단장치.
  8. 제 1 항에 있어서,
    상기 애플리케이션 파일은,
    상기 애플리케이션의 설치파일인 apk파일인 것을 특징으로 하는 악성코드 진단장치.
  9. 제 1 항에 있어서,
    상기 휴대용 단말기는,
    안드로이드 OS가 탑재된 스마트폰, 테블릿 PC 또는 PDA인 것을 특징으로 하는 악성코드 진단장치.
  10. 악성코드 진단방법으로서,
    악성파일인지 여부에 대한 진단을 수행한 애플리케이션 파일의 고유정보와 진단 정보를 캐싱 DB에 저장시키는 단계와,
    애플리케이션 파일에 대한 진단 수행 시, 상기 캐싱 DB내에 해당 애플리케이션 파일에 대한 진단정보가 존재하는 경우 상기 진단 정보를 진단 결과로 출력시키는 단계
    를 포함하는 악성코드 진단방법.
  11. 제 10 항에 있어서,
    상기 진단결과로 출력시키는 단계는,
    상기 진단 수행 시 진단 대상 애플리케이션 파일의 고유정보를 추출하여 상기 캐싱 DB내 일치하는 고유정보가 존재하는지 여부를 검사하는 단계와,
    상기 고유정보가 서로 일치하는 경우 해당 애플리케이션 파일에 대해서는 진단을 수행하지 않고, 이전에 수행된 진단 정보를 진단 결과로 출력시키는 단계
    를 포함하는 것을 특징으로 하는 악성코드 진단방법.
  12. 제 11 항에 있어서,
    상기 캐싱 DB내 일치하는 고유정보가 존재하지 않는 경우, 해당 애플리케이션 파일에 대해서는 진단을 수행한 후, 상기 애플리케이션의 고유정보와 진단정보를 상기 캐싱 DB내 새로이 저장시키는 단계를 더 포함하는 것을 특징으로 하는 악성코드 진단방법.
  13. 제 11 항에 있어서,
    상기 방법은,
    상기 고유정보에 대한 변경이 발생하는 경우 변경된 고유정보를 상기 캐싱 DB에 갱신시켜 저장하는 단계를 더 포함하는 것을 특징으로 하는 악성코드 진단방법.
  14. 제 10 항에 있어서,
    상기 고유정보는,
    상기 애플리케이션 파일에 대한 파일특성정보, 시스템 특성정보 또는 진단정책 정보 중 적어도 어느 하나 이상을 포함하는 것을 특징으로 하는 악성코드 진단방법.
  15. 제 14 항에 있어서,
    상기 파일 특성 정보는,
    상기 애플리케이션 파일의 파일크기, 파일 이름, 파일 최종 변경 시각 정보를 적어도 하나 이상 포함하는 것을 특징으로 하는 악성코드 진단방법.
  16. 제 14 항에 있어서,
    상기 시스템 특성 정보는,
    상기 애플리케이션 파일의 아이노드 넘버를 포함하는 것을 특징으로 하는 악성코드 진단방법.
PCT/KR2013/005085 2012-07-09 2013-06-10 캐싱을 이용한 악성코드 진단장치 및 방법 WO2014010829A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20120074454 2012-07-09
KR10-2012-0074454 2012-07-09

Publications (1)

Publication Number Publication Date
WO2014010829A1 true WO2014010829A1 (ko) 2014-01-16

Family

ID=49916238

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2013/005085 WO2014010829A1 (ko) 2012-07-09 2013-06-10 캐싱을 이용한 악성코드 진단장치 및 방법

Country Status (1)

Country Link
WO (1) WO2014010829A1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080074271A (ko) * 2007-02-08 2008-08-13 삼성전자주식회사 휴대단말 악성코드 처리장치 및 그 처리 방법
KR20100005518A (ko) * 2008-07-07 2010-01-15 주식회사 안철수연구소 확장자를 위장한 파일을 탐지하는 방법 및 그 장치
KR100954353B1 (ko) * 2008-03-10 2010-04-21 주식회사 안철수연구소 악성 코드명 제공 시스템 및 그 방법, 그리고 이에적용되는 서버
KR101161493B1 (ko) * 2010-01-18 2012-06-29 (주)쉬프트웍스 안드로이드 단말 플랫폼에서의 악성 코드와 위험 파일의 진단 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080074271A (ko) * 2007-02-08 2008-08-13 삼성전자주식회사 휴대단말 악성코드 처리장치 및 그 처리 방법
KR100954353B1 (ko) * 2008-03-10 2010-04-21 주식회사 안철수연구소 악성 코드명 제공 시스템 및 그 방법, 그리고 이에적용되는 서버
KR20100005518A (ko) * 2008-07-07 2010-01-15 주식회사 안철수연구소 확장자를 위장한 파일을 탐지하는 방법 및 그 장치
KR101161493B1 (ko) * 2010-01-18 2012-06-29 (주)쉬프트웍스 안드로이드 단말 플랫폼에서의 악성 코드와 위험 파일의 진단 방법

Similar Documents

Publication Publication Date Title
WO2014035043A1 (ko) 악성 애플리케이션 진단 장치 및 방법
WO2014027859A1 (en) Device and method for processing transaction request in processing environment of trust zone
CN109558734B (zh) 一种堆栈安全性的检测方法及装置、移动设备
WO2015056885A1 (ko) 안드로이드 악성 애플리케이션의 탐지장치 및 탐지방법
WO2013089340A1 (ko) 어플리케이션의 유사성 검출 장치 및 방법
WO2021036706A1 (zh) 可信应用的运行方法、信息处理和内存分配方法及装置
US10176327B2 (en) Method and device for preventing application in an operating system from being uninstalled
WO2016003084A1 (en) Method and apparatus of notifying of smishing
WO2014088262A1 (ko) 애플리케이션 위/변조 탐지장치 및 방법
WO2013165180A1 (ko) 로그 모니터링 방법, 그 서버 및 기록 매체
CN114327688B (zh) 基于微前端的数据处理方法、框架、存储介质及终端设备
WO2013100320A1 (ko) 시스템 파일 보호 및 복구를 위한 장치, 방법, 사용자 단말기 및 시스템
WO2014010847A1 (ko) 악성 애플리케이션 진단장치 및 방법
WO2014168408A1 (ko) 클라우드 기반 악성코드 진단 장치, 시스템 및 방법
WO2017131355A1 (ko) 시스템 환경 및 사용자 행동 분석 기반의 자기 방어 보안 장치와 이의 작동 방법
WO2020096262A1 (ko) 전자 장치, 그의 개인 정보 제공 방법 및 이를 기록한 컴퓨터 판독 가능 기록매체
CN115017534B (zh) 文件处理权限控制方法、装置及存储介质
WO2015037850A1 (ko) Url 호출 탐지장치 및 방법
WO2021006574A1 (en) Method and apparatus for managing application
WO2018131910A1 (en) Electronic device and method for creating shortcut to web page in electronic device
WO2018199366A1 (ko) 덱스 파일의 난독화 적용 여부의 탐지 및 보안성 평가를 위한 방법 및 시스템
WO2014098387A1 (ko) 악성 애플리케이션 진단장치 및 방법
WO2012148098A1 (ko) 세이프가드 장치 및 방법
WO2023177024A1 (ko) 아키텍처 변경을 위한 소스 변환 솔루션 제공 장치 및 방법
WO2014010829A1 (ko) 캐싱을 이용한 악성코드 진단장치 및 방법

Legal Events

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

Ref document number: 13817520

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13817520

Country of ref document: EP

Kind code of ref document: A1