+

KR101092342B1 - File summary information generating, signature generating apparatus and signature pattern inspecting apparatus and method - Google Patents

File summary information generating, signature generating apparatus and signature pattern inspecting apparatus and method Download PDF

Info

Publication number
KR101092342B1
KR101092342B1 KR1020090074791A KR20090074791A KR101092342B1 KR 101092342 B1 KR101092342 B1 KR 101092342B1 KR 1020090074791 A KR1020090074791 A KR 1020090074791A KR 20090074791 A KR20090074791 A KR 20090074791A KR 101092342 B1 KR101092342 B1 KR 101092342B1
Authority
KR
South Korea
Prior art keywords
file
signature
value
block
verification
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020090074791A
Other languages
Korean (ko)
Other versions
KR20110017226A (en
Inventor
황규범
Original Assignee
주식회사 안철수연구소
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 안철수연구소 filed Critical 주식회사 안철수연구소
Priority to KR1020090074791A priority Critical patent/KR101092342B1/en
Publication of KR20110017226A publication Critical patent/KR20110017226A/en
Application granted granted Critical
Publication of KR101092342B1 publication Critical patent/KR101092342B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • G06F16/137Hash-based
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

본 발명은 원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 산출하는 파일 처리부와, 상기 파일 처리부에서 산출된 상기 블록 별 검증 값과 대표 값을 이용하여 상기 원본 파일에 대한 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 축약 정보 생성부를 포함하는 파일 축약 정보 생성 장치를 제공하며, 이를 통해 생성된 원본 파일의 파일 축약 정보를 이용하여 시그너쳐 패턴을 생성함과 더불어 기 생성된 시그너쳐 패턴을 검증할 수 있다.The present invention divides the original file into a plurality of blocks having a predetermined size and then calculates a block value verification value and a representative value, and the original file using the block value verification value and the representative value calculated by the file processor. It provides a file shortening information generating device including a short information generating unit for generating the file shortening information for and stores it in the original file database, and generates a signature pattern using the file shortening information of the original file generated through this In addition, the generated signature pattern can be verified.

이와 같이, 본 발명은 원본 파일을 소정 크기의 블록 별로 나눈 후 각 블록의 대표 값과 검증 값을 산출하고, 산출된 대표 값과 검증 값을 이용하여 역 추적이 불가능한 파일 축약 정보를 생성함으로써, 원본 파일 보안을 통해 기업체로부터 원본 파일을 얻을 수 있는 효과가 있다.As described above, the present invention divides the original file by blocks of a predetermined size, calculates a representative value and a verification value of each block, and generates file abbreviation information that cannot be traced back using the calculated representative value and the verification value. File security has the effect of obtaining the original files from the enterprise.

원본 파일, 검증, 오진, 시그너쳐, 바이러스, 악성코드 Source file, verification, error, signature, virus, malware

Description

파일 축약 정보 생성, 시그니쳐 생성 및 시그너쳐 패턴 검증 장치 및 방법{FILE SUMMARY INFORMATION GENERATING, SIGNATURE GENERATING APPARATUS AND SIGNATURE PATTERN INSPECTING APPARATUS AND METHOD}File abbreviation information generation, signature generation and signature pattern verification apparatus and method {FILE SUMMARY INFORMATION GENERATING, SIGNATURE GENERATING APPARATUS AND SIGNATURE PATTERN INSPECTING APPARATUS AND METHOD}

본 발명은 악성 코드 검사를 위한 시그너쳐(signature) 패턴에 관한 것으로, 더욱 상세하게는 기밀 파일의 경우 외부 반출이 어려워 해당 파일에 대한 시그너쳐 패턴의 검증에 이용할 수 없다는 점을 극복하기 위하여 유추할 수 없는 파일 축약 정보 정보를 생성하고, 이를 이용하여 시그너쳐를 생성할 수 있을 뿐만 아니라 시그너쳐 패턴을 검증할 수 있는 장치 및 방법에 관한 것이다.The present invention relates to a signature pattern for detecting malicious code. More specifically, in the case of a confidential file, it cannot be inferred to overcome the fact that it is difficult to export externally and thus cannot be used to verify the signature pattern for the file. The present invention relates to an apparatus and a method for generating file shortening information information and generating signatures using the same, as well as verifying signature patterns.

광 범위위한 인터넷의 보급이 이루어지고 있는 한편, 통신망을 통한 악성 소프트웨어(Malicious Software) 또는 악성 코드(Malicious Code)의 전염경로고 다양해지고 있으며, 이로 인한 피해 정도가 매년 증가하고 있다. 악성 코드란 사용자의 의사와 이익에 반하여 시스템을 파괴하거나 정보를 유출하는 등 악의적 활동을 수행하도록 의도적으로 제작된 소프트웨어를 말한다. 이러한 악성 코드의 종류로 는 바이러스(virus), 웜(worm), 트로이얀(trojan), 백도어(backdoor), 논리폭탄(Logic Bomb), 트랩도어(Trap Door)등의 해킹툴 및 악의적인 스파이웨어(spyware), 애드웨어(ad-ware) 등이 있다. 이들은 자기복제나 자동번식 기능을 통하여, 사용자 ID와 암호 등의 개인정보 유출, 대상 시스템 통제, 파일 삭제변경/시스템 파괴, 응용프로그램/시스템의 서비스 거부, 핵심 자료 유출, 다른 해킹 프로그램 설치 등의 문제를 일으키고 있으며, 그 피해도 매우 다양하고 심각하다.While the widespread use of the Internet is being made, the path of transmission of malicious software or malicious code through a communication network is diversified, and the damage caused by this is increasing every year. Malware is software that is intentionally designed to perform malicious activities, such as destroying the system or leaking information, contrary to the user's intentions and interests. These malicious codes include hacking tools such as viruses, worms, trojans, backdoors, logic bombs, and trap doors, and malicious spywares. spyware and ad-ware. Through self-replicating or automatic propagation functions, they can leak personal information such as user IDs and passwords, control target systems, change / delete files, destroy systems, refuse applications / systems, leak critical data, and install other hacking programs. It is causing the damage is also very diverse and serious.

이러한, 악성 코드를 차단하기 위한 안티바이러스 프로그램은 악성 코드 파일에 관련된 시그너쳐 패턴이 저장된 데이터베이스를 구비하며, 데이터베이스에 저장된 시그너쳐 패턴은 안티바이러스 프로그램을 제작하는 회사에서 제작 및 유포된다.Such an antivirus program for blocking malicious code includes a database in which signature patterns related to malicious code files are stored, and the signature pattern stored in the database is produced and distributed by a company producing an antivirus program.

파일 관련 시그너쳐 패턴을 추출하기 위해서는 파일 전부에 대한 진단 값 혹은 일부에 대한 진단 값을 사용하고 있다. 파일 전부에 대한 진단 값을 사용하는 경우 파일 크기와 MD5(Message-Digest algorithm), SHA-1(Secure Hash Algorithm)과 같은 해쉬 검증값을 이용하는 방법이 있는데, 이는 속도가 느리고 데이터 양이 많아 사용하는데 매우 어려움이 있다는 단점이 있다. 이런 이유로 파일의 일부 내용을 진단 정보로 하여 진단하는 방식을 널리 사용하고 있다.In order to extract the signature pattern associated with a file, a diagnosis value for all or part of a file is used. When using diagnostic values for all files, there are methods using file size, hash verification values such as Message-Digest algorithm (MD5) and Secure Hash Algorithm (SHA-1), which are slow and use a lot of data. The disadvantage is that it is very difficult. For this reason, the method of diagnosing a part of a file as diagnostic information is widely used.

하지만, 파일 일부에 대한 진단 값을 이용하여 악성코드를 진단하는 방법 또한 악성 코드가 아닌 일반적인 정상 파일을 악성코드로 진단하는 오진 가능성이 있다.However, the method of diagnosing malicious code using the diagnostic value of a part of the file also has a possibility of misdiagnosing a normal normal file as malicious code instead of malicious code.

이런 이유로, 시그너쳐를 생성한 후 이를 검증하는 오진 검증 과정을 거치게 되는데, 오진 검증은 시그너쳐 배포 이전의 검증 대상이 되는 모든 정상 파일들에 대한 진단을 통해 이루어진다. For this reason, the signature is generated and then verified through a verification process. The verification is performed by diagnosing all normal files that are subject to verification before signature distribution.

하지만, 종래의 시그너쳐에 대한 오진 검증 방법은 정상 파일들을 수집한 후 진단하는 형태를 취하고 있기 때문에 현실적으로 모든 정상 파일들을 수집하는 것은 거의 불가능하다.However, since the conventional method for verifying the error of the signature takes the form of diagnosing the normal files, it is almost impossible to collect all the normal files.

특히, 안티바이러스 프로그램을 사용하는 기업체에서는 보안 상의 이유로 기업 내의 정상 파일들을 제공하지 않기 때문에 오진 검증에 어려움이 있다.In particular, companies that use anti-virus programs do not provide normal files within the company for security reasons, which makes it difficult to verify the error.

본 발명은 상기와 같은 문제점을 해결하기 위하여 발명되는 것으로, 원본 파일을 소정 크기의 블록 별로 나눈 후 각 블록의 대표 값과 검증 값을 산출하고, 산출된 대표 값과 검증 값을 토대로 역 추적이 불가능한 파일 축약 정보를 생성할 수 있는 장치 및 방법을 제공하는데 있다.The present invention is invented to solve the above problems, after dividing the original file for each block of a predetermined size to calculate the representative value and the verification value of each block, based on the calculated representative value and the verification value is impossible to trace back An apparatus and method for generating file shortening information are provided.

또한, 본 발명은 원본 파일과 감염 파일의 각 블록 별 대표 값과 검증 값간의 비교를 통해 시그너쳐 패턴을 생성하여 시그너쳐 패턴의 정확도를 높일 수 있는 장치 및 방법을 제공하는데 있다.The present invention also provides an apparatus and method for generating a signature pattern by comparing the representative value and the verification value of each block of the original file and the infected file to increase the accuracy of the signature pattern.

본 발명은 원본 파일과 감염 파일의 각 블록 별 대표 값과 검증 값간의 비교를 통해 기존의 시그너쳐 패턴을 검증하여 잘못된 시그너쳐 패턴에 의한 오진 가능성을 최소화할 수 있는 장치 및 방법을 제공하는데 있다.The present invention provides an apparatus and method for minimizing the possibility of misunderstanding due to an incorrect signature pattern by verifying an existing signature pattern by comparing between a representative value and a verification value for each block of an original file and an infected file.

본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The object of the present invention is not limited to the above-mentioned object, and other objects which are not mentioned will be clearly understood by those skilled in the art from the following description.

상기 목적을 달성하기 위해, 본 발명에 따른 파일 축약 정보 생성 장치는, 원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록별 검증 값과 대표 값을 산출하되, 상기 블록별로 엔트로피 값을 산출하여 상기 블록별 대표 값을 생성하는 파일 처리부와, 상기 파일 처리부에서 산출된 상기 블록별 검증 값과 대표 값을 이용하여 상기 원본 파일에 대한 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 축약 정보 생성부를 포함한다.In order to achieve the above object, the apparatus for generating file abbreviation information according to the present invention divides an original file into a plurality of blocks having a predetermined size and then calculates a verification value and a representative value for each block, and calculates an entropy value for each block. A file processor for generating the representative value for each block, and the shortened information for generating file abbreviation information for the original file using the verification value and the representative value for each block calculated by the file processor and storing the file abbreviation information for the original file database. It includes a generation unit.

다른 견지에서의 본 발명에 따른 시그너쳐 생성 장치는, 감염 파일 및 원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 각각 산출하는 파일 처리부와, 상기 파일 처리부에서 산출된 상기 원본 파일에 대한 상기 블록 별 검증 값과 대표 값을 이용하여 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 축약 정보 생성부와, 상기 원본 파일 데이터베이스의 검색을 통해 상기 감염 파일에 대응되는 원본 파일의 파일 축약 정보를 추출하고, 상기 추출된 파일 축약 정보와 상기 감염 파일에 대한 상기 블록 별 검증 값 및 대표 값간의 비교를 통해 시그너쳐 패턴을 생성하는 시그너쳐 생성부를 포함한다.In another aspect, the signature generation apparatus according to the present invention includes a file processing unit for dividing an infected file and an original file into a plurality of blocks having a predetermined size, and calculating a verification value and a representative value for each block; A contraction information generation unit for generating file contraction information by using the block-specific verification value and the representative value of the original file and storing the contract information in the original file database, and corresponding to the infected file by searching the original file database And a signature generation unit for extracting file shortening information of an original file and generating a signature pattern by comparing the extracted file shortening information with the block-specific verification value and representative value of the infected file.

또 다른 견지에서의 본 발명에 따른 시그너쳐 검증 장치는, 다수의 파일에 대한 시그너쳐 패턴이 저장되어 있는 시그너쳐 데이터베이스와, 시그너쳐 검증용 파일 및 원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 각각 산출하는 파일 처리부와, 상기 파일 처리부에서 산출된 상기 원본 파일에 대한 상기 블록 별 검증 값과 대표 값을 이용하여 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 축약 정보 생성부와, 상기 시그너쳐 검증용 파일에 대응되는 시그너쳐 패턴을 상기 시그너쳐 데이터베이스에서 검색하고, 상기 원본 파일 데이터베이스의 검색을 통해 상기 시그너쳐 검사용 파일에 대응되는 원본 파일의 파일 축약 정보를 추출한 후 상기 추출된 파일 축약 정보와 상기 시그너쳐 검증용 파일에 대한 상기 블록 별 검증 값 및 대표 값간의 비교를 통해 시그너쳐 위치를 추정하고, 상기 추정된 시그너쳐 위치와 상기 검색된 시그너쳐 패턴간의 비교를 통해 상기 검색된 시그너쳐 패턴을 검증하는 비교 및 분석부를 포함한다.In another aspect, the signature verification apparatus according to the present invention includes a signature database in which signature patterns for a plurality of files are stored, a signature verification file, and a signature verification file and an original file are divided into a plurality of blocks having a predetermined size, and then verified for each block. A file processing unit for calculating a value and a representative value, respectively, and a shortening information for generating file contraction information using the block-specific verification value and the representative value of the original file calculated by the file processing unit, and then storing the file contraction information in the original file database. A generator and a signature pattern corresponding to the signature verification file are searched in the signature database, and the file abbreviation information of the original file corresponding to the signature check file is extracted through the search of the original file database, and then extracted. File abbreviation information and the signature sword Estimating a signature located by a comparison between the block-by-block verification value and the representative value for the for the file, and includes a comparison and analysis to verify the retrieved signature pattern through a comparison between the estimated signature position and the detected signature pattern.

본 발명에 따른 파일 축약 정보 생성 방법은, 원본 파일을 입력받는 단계와, 상기 원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 산출하는 단계와, 상기 산출된 블록 별 검증 값과 대표 값을 이용하여 상기 원본 파일에 대한 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 단계를 포함한다.The method of generating file reduction information according to the present invention includes the steps of: receiving an original file, dividing the original file into a plurality of blocks having a predetermined size, calculating a verification value and a representative value for each block, and calculating the calculated block. Generating file abbreviation information for the original file by using the verification value and the representative value of each and storing the same in the original file database.

본 발명은 소정 크기를 갖는 블록으로 구성된 원본 파일에 대한 블록 별 검증 값과 대표 값을 통해 생성된 파일 축약 정보를 저장된 원본 파일 데이터베이스를 이용하여 시그너쳐 패턴을 생성하는 방법으로서, 이를 위하여 감염 파일의 입력 됨에 따라 상기 감염 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 각각 산출하는 단계와, 상기 원본 파일 데이터베이스의 검색을 통해 상기 감염 파일에 대응되는 원본 파일의 파일 축약 정보를 추출하는 단계와, 상기 추출된 파일 축약 정보와 상기 감염 파일에 대한 상기 블록 별 검증 값 및 대표 값간의 비교를 통해 시그너쳐 패턴을 생성하는 단계를 포함한다.The present invention is a method for generating a signature pattern using the original file database, which stores the file contraction information generated by the block-specific verification value and the representative value of the original file composed of blocks having a predetermined size. And dividing the infected file into a plurality of blocks having a predetermined size and calculating a verification value and a representative value for each block, and file abbreviation information of the original file corresponding to the infected file by searching the original file database. And generating a signature pattern by comparing the extracted file contraction information with the block-specific verification value and the representative value of the infected file.

본 발명은 다수의 파일에 대한 시그너쳐 패턴이 저장되어 있는 시그너쳐 데이터베이스와, 소정 크기를 갖는 블록으로 구성된 원본 파일에 대한 블록 별 검증 값과 대표 값을 통해 생성된 파일 축약 정보를 저장된 원본 파일 데이터베이스를 이용하여 시그너쳐 패턴을 검증하는 방법으로서, 시그너쳐 검증용 파일이 입력됨에 따라 상기 시그너쳐 검증용 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 각각 산출하는 단계와, 상기 시그너쳐 검증용 파일에 대응되는 시그너쳐 패턴을 상기 시그너쳐 데이터베이스에서 검색하는 단계와, 상기 원본 파일 데이터베이스의 검색을 통해 상기 시그너쳐 검증용 파일에 대응되는 원본 파일의 파일 축약 정보를 추출하는 단계와, 상기 추출된 파일 축약 정보와 상기 시그너쳐 검증용 파일에 대한 상기 블록 별 검증 값 및 대표 값 간의 비교를 통해 시그너쳐 위치를 추정하는 단계와, 상기 추정된 시그너쳐 위치와 상기 검색된 시그너쳐 패턴간의 비교를 통해 상기 검색된 시그너쳐 패턴을 검증하는 단계를 포함한다.The present invention uses a signature database in which signature patterns for a plurality of files are stored, and an original file database storing file abbreviation information generated through block-specific verification values and representative values for an original file composed of blocks having a predetermined size. A method of verifying a signature pattern, comprising: dividing the signature verification file into a plurality of blocks having a predetermined size as a signature verification file is input, and then calculating a verification value and a representative value for each block, respectively, and verifying the signature verification. Retrieving a signature pattern corresponding to a signature file from the signature database; extracting file abbreviation information of an original file corresponding to the signature verification file by searching the original file database; and extracting the extracted file. Information and the signature verification And estimating a position from the comparison of the signature block by the verification value and the representative value for the file, and a step of verifying the detected signature pattern with a signature comparison between the estimated position and the detected signature pattern.

기타 실시 예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and drawings.

본 발명은 원본 파일을 소정 크기의 블록 별로 나눈 후 각 블록의 대표 값과 검증 값을 산출하고, 산출된 대표 값과 검증 값을 이용하여 역 추적이 불가능한 파일 축약 정보를 생성함으로써, 원본 파일 보안을 통해 기업체로부터 원본 파일을 얻을 수 있는 효과가 있다.The present invention divides the original file by blocks of a predetermined size, calculates a representative value and a verification value of each block, and generates file abbreviation information that cannot be traced back using the calculated representative value and the verification value. Through this, the original file can be obtained from the enterprise.

또한, 본 발명은 원본 파일과 감염 파일의 각 블록 별 대표 값과 검증 값간의 비교를 통해 시그너쳐 패턴을 생성함으로써, 시그너쳐 패턴에 의한 오진을 최소화시킬 수 있는 효과가 있다.In addition, the present invention has the effect of minimizing the misunderstanding caused by the signature pattern by generating a signature pattern through comparison between the representative value and the verification value for each block of the original file and the infected file.

본 발명은 원본 파일과 감염 파일의 각 블록 별 대표 값과 검증 값간의 비교를 통해 기존의 시그너쳐 패턴을 검증할 수 있기 때문에 잘못된 시그너쳐 패턴에 의한 오진 가능성을 최소화시킬 수 있는 효과가 있다.According to the present invention, since the existing signature pattern can be verified by comparing the representative value and the verification value for each block of the original file and the infected file, there is an effect of minimizing the possibility of misunderstanding due to an incorrect signature pattern.

본 발명의 효과는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야의 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects of the present invention are not limited to those mentioned above, and other effects that are not mentioned will be clearly understood by those skilled in the art from the following description.

이하, 본 발명의 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 아울러 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In addition, in describing the present invention, when it is determined that the detailed description of the related known configuration or function may obscure the gist of the present invention, the detailed description thereof will be omitted.

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

본 발명의 실시 예에서는 원본 파일을 소정 크기의 블록 별로 나눈 후 각 블록의 대표 값과 검증 값을 산출하고, 산출된 대표 값과 검증 값을 이용하여 역 추적이 불가능한 파일 축약 정보를 생성할 수 있는 장치 및 방법에 대해 설명한다.According to an embodiment of the present invention, after dividing an original file by blocks of a predetermined size, a representative value and a verification value of each block are calculated, and file abbreviation information that cannot be traced back can be generated using the calculated representative value and the verification value. An apparatus and a method are demonstrated.

또한, 본 발명의 실시 예에서는 원본 파일과 감염 파일의 각 블록 별 대표 값과 검증 값간의 비교를 통해 시그너쳐 패턴을 생성할 수 있는 장치 및 방법에 대해 설명한다.In addition, an embodiment of the present invention will be described an apparatus and method for generating a signature pattern by comparing the representative value and the verification value for each block of the original file and the infected file.

본 발명의 실시 예에서는 원본 파일과 감염 파일의 각 블록 별 대표 값과 검증 값간의 비교를 통해 기존의 시그너쳐 패턴을 검증할 수 있기 때문에 잘못된 시그너쳐 패턴에 의한 오진을 검증할 수 있는 장치 및 방법에 대해 설명한다.In the embodiment of the present invention, since the existing signature pattern can be verified by comparing the representative value and the verification value of each block of the original file and the infected file, the present invention relates to an apparatus and method for verifying a misunderstanding caused by an incorrect signature pattern. Explain.

도 1은 본 발명의 실시 예에 따른 파일 축약 정보 생성 장치를 도시한 블록도로서, 파일 처리부(100), 축약 정보 생성부(110) 및 원본 파일 데이터베이스(120)를 포함한다.1 is a block diagram illustrating an apparatus for generating file reduction information according to an exemplary embodiment of the present invention, which includes a file processing unit 100, a reduction information generation unit 110, and an original file database 120.

파일 처리부(100)는 원본 파일을 입력으로 하여 처리하는 수단으로서, 원본 파일을 소정 크기의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 산출한다. 여기서, 파일 내부 블록의 크기는 시그너쳐의 추출 단위, 예컨대 128바이트 이상일 수 있는데, 악성 코드의 크기를 고려해보면 128바이트를 넘는 1-10KB 단위로 블록을 나눌 수도 있다.The file processing unit 100 is a means for processing the original file as an input. The file processing unit 100 divides the original file into blocks having a predetermined size and calculates a verification value and a representative value for each block. Here, the size of the block inside the file may be an extraction unit of the signature, for example, 128 bytes or more. Considering the size of the malicious code, the block may be divided into 1-10KB units larger than 128 bytes.

즉, 파일 처리부(100)는 원본 파일을 1-10KB 크기를 갖는 블록으로 나눈 후 해당 블록에 대한 검증 값과 대표 값을 산출하는데, 여기서 검증 값은 CRC(Cyclic Redundancy Check, 이하 "CRC"라고 함)나 해쉬 값으로 다른 파일의 내부 블록과의 비교 시 비교 블록이 같은지 다른지를 확인할 수 있는 정보이다. 대표 값은 정보 내용의 변화를 표현할 수 있는 엔트로피 값을 이용하여 산출된다.That is, the file processing unit 100 divides the original file into blocks having a size of 1-10 KB, and then calculates a verification value and a representative value for the corresponding block, where the verification value is referred to as a cyclic redundancy check (CRC). ) Or a hash value to check whether the comparison block is the same or different when comparing it with the internal block of another file. The representative value is calculated using an entropy value that can represent a change in the content of the information.

예를 들어, 파일 처리부(100)가 100KB의 원본 파일을 처리하는 과정에 대해 설명하면, 먼저 1KB 단위로 100KB의 원본 파일을 나누어 100개의 블록을 만든 후 100개의 블록 대표 값과 검증 값을 산출한다. For example, when the file processing unit 100 processes a 100 KB original file, first, the 100 KB original file is divided into 100 KB blocks in 1 KB units, and then 100 block representative values and verification values are calculated. .

축약 정보 생성부(110)는 원본 파일의 기본 정보, 예컨대 파일 이름, 파일 크기, 파일 작성 날짜 등과 파일 처리부(100)에서 산출된 블록 별 검증 값과 대표 값을 이용하여 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스(120)에 저장한다. 여기서, 파일 이름은 250바이트의 크기로 표현되고, 파일 크기는 4바이트의 크기로 표현되며, 파일 작성 날짜는 4바이트의 크기로 표현될 수 있다. 또한, 블록의 검증 값과 대표 값은 8바이트의 크기로 표현될 수 있다. 즉, 100KB의 원본 파일을 1KB 단위로 나눌 경우, 파일 축약 정보는 총 1858바이트, 즉 258바이 트의 기본 정보, 1600바이트의 대표 값 및 검증 값으로 이루어지기 때문에, 총 1858바이트로 표현할 수 있다.The shortened information generator 110 generates file shortened information using basic information of the original file, for example, a file name, a file size, a file creation date, and the like, and a block value verification value and a representative value calculated by the file processor 100. This is stored in the original file database 120. Here, the file name may be represented by the size of 250 bytes, the file size by the size of 4 bytes, and the file creation date may be represented by the size of 4 bytes. In addition, the verification value and the representative value of the block may be represented by a size of 8 bytes. That is, if the original file of 100 KB is divided into 1 KB units, the file abbreviation information may be represented by a total of 1858 bytes because the total information of the file is composed of 1858 bytes, that is, 258 bytes of basic information, 1600 bytes of representative values, and verification values.

본 발명의 실시 예에 따르면, 원본 파일을 소정 크기의 블록 별로 나눈 후 각 블록의 대표 값과 검증 값을 산출하고, 산출된 대표 값과 검증 값을 이용하여 역 추적이 불가능한 파일 축약 정보를 생성함으로써, 원본 파일 보안을 통해 기업체로부터 원본 파일을 얻을 수 있다.According to an embodiment of the present invention, after dividing an original file by blocks of a predetermined size, a representative value and a validation value of each block are calculated, and file abbreviation information that cannot be traced back is generated by using the calculated representative value and the validation value. With source file security, you can get the source file from the enterprise.

본 발명의 실시 예에서는 파일 처리부(100)와 축약 정보 생성부(110)가 원본 파일에 대한 파일 축약 정보를 생성하는 것으로 예를 들어 설명하였지만, 이를 이용하여 악성 코드를 감지하기 위한 시그너쳐 패턴을 생성하는데 이용할 수도 있다. 이에 대한 설명은 도 2를 참조하여 설명한다.In an embodiment of the present invention, the file processing unit 100 and the abbreviation information generating unit 110 have been described as generating file abbreviation information for the original file. For example, the signature pattern for detecting malicious code is generated using the file processing unit 100 and the abbreviation information generating unit 110. Can also be used to The description thereof will be described with reference to FIG. 2.

도 2는 본 발명의 실시 예에 따른 시그너쳐 패턴 생성 장치를 도시한 블록도로서, 도 1의 파일 축약 정보 생성 장치의 구성 요소인 파일 처리부(100), 축약 정보 생성부(110) 및 원본 파일 데이터베이스(120)에 시그너쳐 생성부(200) 및 시그너쳐 데이터베이스(210)를 더 포함한다.FIG. 2 is a block diagram illustrating an apparatus for generating a signature pattern according to an exemplary embodiment of the present invention, wherein the file processor 100, the reduced information generator 110, and the original file database which are components of the file reduced information generator of FIG. 1 are illustrated. Further, the signature generator 200 and the signature database 210 are further included in the reference numeral 120.

파일 처리부(100)는 도 1에서 설명한 바와 같이 원본 파일에 대한 블록 별 대표 값과 검증 값을 산출할 뿐만 아니라 감염 파일, 즉 시그너쳐 패턴을 형성하기 위해 이용되는 파일에 대해 원본 파일과 같은 방식으로 블록 별 검증 값과 대표 값을 산출한다. 이와 같이 산출된 감염 파일에 대한 검증 값과 대표 값은 시그너쳐 생성부(200)에 제공된다.As described with reference to FIG. 1, the file processing unit 100 not only calculates a representative value and a verification value for each block of the original file, but also blocks the infected file, that is, a file used to form a signature pattern in the same manner as the original file. Calculate the star verification value and the representative value. The verification value and the representative value for the infected file thus calculated are provided to the signature generator 200.

축약 정보 생성부(110)는 도 1에서 설명한 바와 같이 원본 파일에 대한 블록 별 대표 값 및 검증 값을 토대로 파일 축약 정보를 생성하여 원본 파일 데이터베이스(120)에 저장한다.As described above with reference to FIG. 1, the reduced information generator 110 generates file reduced information based on a representative value and a verification value for each block of the original file and stores the file reduced information in the original file database 120.

시그너쳐 생성부(200)는 원본 파일 데이터베이스(120)의 검색을 통해 감염 파일에 대응되는 원본 파일의 파일 축약 정보를 추출하고, 추출된 파일 축약 정보와 파일 처리부(100)로부터 제공받은 감염 파일의 검증 값과 대표 값간의 비교를 통해 시그너쳐 패턴을 생성한 후 이를 시그너쳐 데이터베이스(210)에 저장한다. 예를 들어, 원본 파일이 도 3a에 도시된 바와 같이 블록 별로 검증 값과 대표 값을 갖으며, 감염 파일이 도 3b에 도시된 바와 같이 블록 별로 검증 값과 대표 값을 갖는다고 할 때 시그너쳐 생성부(200)는 원본 파일의 블록과 감염 파일의 블록을 각각 비교하여 틀린 블록을 찾은 후 틀린 블록, 즉 다섯 번째 블록에 악성 코드가 포함되어 있다고 판단하여 다섯 번째 블록이 표시된 시그너쳐 패턴을 생성한다. 이와 같이, 생성된 시그너쳐 패턴은 시그너쳐 데이터베이스(210)에 저장된다.The signature generator 200 extracts file abbreviation information of the original file corresponding to the infected file through a search of the original file database 120, and verifies the extracted file abbreviation information and the infected file provided from the file processor 100. The signature pattern is generated by comparing the value with the representative value and then stored in the signature database 210. For example, the signature generation unit when the original file has a verification value and a representative value for each block as shown in FIG. 3A, and the infected file has a verification value and a representative value for each block as shown in FIG. 3B. In operation 200, the block of the original file and the block of the infected file are respectively found to find the wrong block, and the block 200 determines that the wrong block, that is, the fifth block contains malicious code, generates a signature pattern in which the fifth block is displayed. As such, the generated signature pattern is stored in the signature database 210.

다시 말해서, 시그너쳐 생성부(200)는 파일 처리부(100)에서 제공받은 감염 파일의 대표 값인 C1=0x1234568, C2=0x2234568, C3=0x3234568을 갖는 원본 파일을 원본 파일 데이터베이스(120)에서 검색하고, 검색된 원본 파일의 대표 값과 감염 파일의 대표 값을 블록 별로 비교한 후 비교 결과 서로 일치하지 않는 블록 부분인 다섯 번째 블록을 찾으며, 찾은 블록에 악성 코드가 포함되어 있다고 판단하여 다섯 번째 블록에 시그너쳐를 위치시킨 시그너쳐 패턴을 생성한다. 이러한 안티바이러스 프로그램은 해당 파일의 악성 코드 검사 시 상기의 시그너쳐 패턴을 이용하여 해당 파일에서 시그너쳐가 위치 부분, 즉 다섯 번째 블록에 해당되는 부분만을 검 사한다.In other words, the signature generator 200 searches the original file database 120 for an original file having C1 = 0x1234568, C2 = 0x2234568, and C3 = 0x3234568, which are representative values of the infected file provided from the file processor 100, After comparing the representative value of the original file and the representative value of the infected file block by block, the comparison finds the fifth block, which is the block part that does not match each other, and determines that the found block contains malicious code and locates the signature in the fifth block. Create your signature pattern. When anti-virus program checks the malicious code of the file, the signature pattern is used to check only the location of the signature in the file, that is, the fifth block.

본 발명의 실시 예에 따르면, 원본 파일과 감염 파일의 각 블록 별 대표 값과 검증 값간의 비교를 통해 시그너쳐 패턴을 생성함으로써, 시그너쳐 패턴에 의한 오진을 최소화시킬 수 있다.According to an embodiment of the present invention, by generating a signature pattern by comparing the representative value and the verification value of each block of the original file and the infected file, it is possible to minimize the misunderstanding caused by the signature pattern.

상기에서는 파일 처리부(100)와 축약 정보 생성부(110)가 원본 파일과 감염 파일에 대한 파일 축약 정보를 생성하거나 시그너쳐 패턴을 생성하는데 이용되는 것을 예로 들어 설명하였지만, 이를 이용하여 이미 만들어진 시그너쳐 패턴의 오진 검증에도 이용될 수 있다. 이에 대한 설명은 도 4를 참조하여 설명한다.In the above description, the file processing unit 100 and the abbreviation information generating unit 110 are used to generate file abbreviation information for the original file and the infected file or to generate a signature pattern. It can also be used for error verification. The description thereof will be described with reference to FIG. 4.

도 4는 본 발명에 따른 시그너쳐 패턴의 오진 검증 장치를 도시한 블록도로서, 파일 처리부(100), 축약 정보 생성부(110), 원본 파일 데이터베이스(120), 시그너쳐 데이터베이스(210) 및 비교 및 분석부(300)를 포함한다.4 is a block diagram illustrating an apparatus for verifying a signature of a signature pattern according to the present invention. The file processor 100, the abbreviated information generator 110, the original file database 120, the signature database 210, and comparison and analysis are shown. The unit 300 is included.

파일 처리부(100)와 축약 정보 생성부(110)는 원본 파일을 입력받아 원본 파일에 대한 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스(120)에 저장한다.The file processing unit 100 and the abbreviation information generating unit 110 receive the original file, generate file abbreviation information for the original file, and store it in the original file database 120.

본 발명의 실시 예에서의 파일 처리부(100)는 소정 위치에 시그너쳐를 갖는 시그너쳐 패턴이 정의된 시그너쳐 검증용 파일에 대한 대표 값과 검증 값을 산출한 후 이를 비교 및 분석부(300)에 제공한다.The file processor 100 according to an embodiment of the present invention calculates a representative value and a verification value for a signature verification file in which a signature pattern having a signature at a predetermined position is defined, and provides the same to the comparison and analysis unit 300. .

시그너쳐 데이터베이스(210)에는 안티바이러스 프로그램에 이미 배포되어 있거나 담당자에 의해 임의로 만들어진 시그너쳐 패턴이 저장되어 있다.The signature database 210 stores a signature pattern that is already distributed in an antivirus program or arbitrarily created by a person in charge.

시그너쳐 패턴의 오진 검증 장치에서는 소정 위치에 시그너쳐를 갖는 시그너 쳐 검증용 파일에 대한 대표 값과 검증 값을 파일 처리부(100)를 이용하여 산출하며, 산출된 시그너쳐 검증용 파일의 대표 값과 검증 값을 비교 및 분석부(300)에 제공한다.In the error verification apparatus of the signature pattern, the representative value and the verification value for the signature verification file having the signature at a predetermined position are calculated using the file processing unit 100, and the representative value and the verification value of the calculated signature verification file are calculated. It provides to the comparison and analysis unit 300.

비교 및 분석부(300)는 시그너쳐 검증용 파일에 대한 시그너쳐 패턴을 시그너쳐 데이터베이스(210)에서 검색하고, 검색된 시그너쳐 패턴을 토대로 어느 블록에 시그너쳐가 존재하는지를 인지한다. The comparison and analysis unit 300 searches for the signature pattern for the signature verification file in the signature database 210 and recognizes in which block a signature exists based on the retrieved signature pattern.

또한, 비교 및 분석부(300)는 오진 테스트를 위해 시그너쳐 검증용 파일에 대응되는 원본 파일을 원본 파일 데이터베이스(120)에서 검색한 후 검색된 원본 파일과 시그너쳐 검증용 파일간의 블록 별 대표 값 비교를 통해 어느 블록이 감염되었는지를 추정하고, 추정된 감염 위치와 시그너쳐 검증용 파일의 시그너쳐 패턴 간의 비교를 통해 시그너쳐 검증용 파일에 대한 시그너쳐 패턴을 검증한다. 즉, 오진 테스트를 위해 원본 파일 데이터베이스(120)에서 시그너쳐 검증용 파일의 대표 값인 C1=0x1234568, C2=0x2234568, C3=0x3234568을 갖는 원본 파일을 검색하고, 시그너쳐 데이터베이스(210)에서 검색된 시그너쳐 검증용 파일에 대응되는 시그너쳐 패턴에서 시그너쳐가 위치한 블록, 예컨대 첫 번째와 네 번째 블록에 해당되는 원본 파일과 시그너쳐 검증용 파일에 대한 대표 값과 검증 값을 비교하는데, 비교 결과 원본 파일과 시그너쳐 검증용 파일의 대표 값과 검증 값이 모두 일치할 경우 비교 및 분석부(300)는 시그너쳐 패턴 오진을 알려주며, 일치하지 않을 경우 시그너쳐 패턴에 대한 검증 완료를 알려준다. 다시 말해서, 원본 파일과 시그너쳐 검증용 파일에 대한 대표 값과 검증 값이 모두 일치하다는 것은 첫 번째 및 네 번째 블 록이 감염 위치가 아니라는 것을 의미하기 때문에 시그너쳐 패턴에 의한 시그너쳐 검증용 파일의 악성 코드 검사 시 오진, 즉 시그너쳐 검증용 파일을 정상 파일로 인식하는 오진이 있을 수 있으며, 일치하지 않을 경우에는 시그너쳐 패턴이 정상이라는 것을 의미한다.In addition, the comparison and analysis unit 300 searches for a source file corresponding to the signature verification file in the original file database 120 for the test of the error, and then compares the representative values for each block between the retrieved original file and the signature verification file. The signature pattern for the signature verification file is verified through a comparison between the estimated infection location and the signature pattern of the signature verification file. That is, the original file having the representative values C1 = 0x1234568, C2 = 0x2234568, and C3 = 0x3234568, which are representative values of the signature verification file, is searched for in the original file database 120, and the signature verification file retrieved from the signature database 210 is tested. In the signature pattern corresponding to, the representative value of the block where the signature is located, for example, the first file and the fourth block, and the representative value of the signature verification file are compared with the verification value. As a result of the comparison, the representative of the original file and the signature verification file are compared. If both the value and the verification value match, the comparison and analysis unit 300 informs the signature pattern of misdiagnosis, and if not, informs the completion of the verification of the signature pattern. In other words, matching both the representative and verification values for the original file and the signature verification file means that the first and fourth blocks are not the location of the infection, so that the signature verification file by the signature pattern is checked for malware. There may be a time error, that is, a mistake that recognizes the signature verification file as a normal file, and if it does not match, it means that the signature pattern is normal.

본 발명의 실시 예에 따르면, 원본 파일과 시그너쳐 검증용 파일의 각 블록 별 대표 값과 검증 값간의 비교를 통해 기존의 시그너쳐 패턴을 검증할 수 있기 때문에 잘못된 시그너쳐 패턴에 의한 오진 가능성을 최소화시킬 수 있다.According to an exemplary embodiment of the present invention, the existing signature pattern may be verified by comparing the representative value and the verification value of each block of the original file and the signature verification file, thereby minimizing the possibility of misunderstanding due to an incorrect signature pattern. .

이상 본 발명의 구체적 실시 형태를 참조하여 본 발명을 설명하였으나, 이는 예시에 불과하며 본 발명의 범위를 제한하는 것이 아니다. 당업자는 본 발명의 범위를 벗어나지 않는 범위 내에서 설명된 실시형태들을 변경 또는 변형할 수 있다. 본 명세서에서 설명된 각 기능 블록들 또는 수단들은 프로그램 형식으로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수 있다. 본 명세서 및 청구범위에서 별개인 것으로 설명된 모듈 등의 구성요소는 단순히 기능상 구별된 것으로 물리적으로는 하나의 수단으로 구현될 수 있으며, 단일한 것으로 설명된 수단 등의 구성요소도 수개의 구성요소의 결합으로 이루어질 수 있다. 또한 본 명세서에서 설명된 각 방법 단계들은 본 발명의 범위를 벗어나지 않고 그 순서가 변경될 수 있고, 다른 단계가 부가될 수 있다. 뿐만 아니라, 본 명세서에서 설명된 다양한 실시형태들은 각각 독립하여서뿐만 아니라 적절하게 결합되어 구현될 수도 있다. 따라서 본 발명의 범위는 설명된 실시형태가 아니라 첨부된 청구범위 및 그 균등물에 의해 정해져야 한다.The present invention has been described above with reference to specific embodiments of the present invention, but this is only illustrative and does not limit the scope of the present invention. Those skilled in the art can change or modify the described embodiments without departing from the scope of the present invention. Each of the functional blocks or means described in the present specification may be implemented in a program form, and may be implemented separately, or two or more may be integrated into one. Components such as modules described as separate in the specification and claims may be merely functionally distinct and may be physically implemented by one means, and components such as means described as a single element may be divided into several components. It can be made in combination. In addition, each method step described herein may be changed in order without departing from the scope of the present invention, and other steps may be added. In addition, the various embodiments described herein may be implemented independently as well as each other as appropriate. Therefore, the scope of the invention should be defined by the appended claims and their equivalents, rather than by the described embodiments.

도 1은 본 발명에 따른 파일 축약 정보 생성 장치를 도시한 블록도이며,1 is a block diagram showing an apparatus for generating file contraction information according to the present invention;

도 2는 본 발명에 따른 시그너쳐 패턴 생성 장치를 도시한 블록도이며,2 is a block diagram showing a signature pattern generating device according to the present invention;

도 3a 내지 도 3b는 원본 파일과 감염 파일의 블록 별 대표 값과 검증 값을 도시한 도면이며,3A to 3B are diagrams illustrating representative values and verification values for each block of an original file and an infected file.

도 4는 본 발명에 따른 시그너쳐 패턴 검증 장치를 도시한 블록도이다.4 is a block diagram illustrating an apparatus for verifying a signature pattern according to the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

100 : 파일 처리부 110 : 축약 정보 생성부100: file processing unit 110: abbreviation information generation unit

120 : 원본 파일 데이터베이스 200 : 시그너쳐 생성부120: source file database 200: signature generator

210 : 시그너쳐 데이터베이스 300 : 비교 및 분석부210: signature database 300: comparison and analysis unit

Claims (29)

원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록별 검증 값과 대표 값을 산출하되, 상기 블록별로 엔트로피 값을 산출하여 상기 블록별 대표 값을 생성하는 파일 처리부와,After dividing the original file into a plurality of blocks having a predetermined size to calculate the block-specific verification value and the representative value, the file processing unit for generating the representative value for each block by calculating the entropy value for each block, 상기 파일 처리부에서 산출된 상기 블록 별 검증 값과 대표 값을 이용하여 상기 원본 파일에 대한 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 축약 정보 생성부An abbreviation information generation unit generating file abbreviation information on the original file by using the verification value and the representative value for each block calculated by the file processing unit and storing it in an original file database. 를 포함하는 파일 축약 정보 생성 장치.File abbreviation information generating device comprising a. 제 1 항에 있어서,The method of claim 1, 상기 파일 처리부는, 상기 원본 파일을 1-10KB 단위의 블록으로 나누는 The file processing unit divides the original file into blocks of 1-10 KB units. 파일 축약 정보 장치.File abbreviation information device. 제 1 항에 있어서,The method of claim 1, 상기 파일 처리부는, 상기 블록 별로 해쉬 값이나 CRC값을 산출하여 상기 블록 별 검증 값을 생성하는 The file processing unit generates a verification value for each block by calculating a hash value or a CRC value for each block. 파일 축약 정보 생성 장치.File abbreviation information generator. 삭제delete 제 1 항에 있어서,The method of claim 1, 상기 축약 정보 생성부는, 상기 원본 파일의 이름, 파일 크기 및 파일 작성 일자 중 적어도 하나 이상을 상기 블록 별 대표 값과 검증 값에 포함시켜 상기 파일 축약 정보를 생성하는 The shortening information generating unit may generate the file shortening information by including at least one or more of a name, a file size, and a file creation date of the original file in the representative value and the verification value for each block. 파일 축약 정보 생성 장치.File abbreviation information generator. 감염 파일 및 원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 각각 산출하는 파일 처리부와,A file processing unit for dividing the infected file and the original file into a plurality of blocks having a predetermined size, and calculating a verification value and a representative value for each block; 상기 파일 처리부에서 산출된 상기 원본 파일에 대한 상기 블록 별 검증 값과 대표 값을 이용하여 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 축약 정보 생성부와,A condensation information generation unit for generating file condensation information by using the block-specific verification value and the representative value of the original file calculated by the file processing unit and storing the condensation information in the original file database; 상기 원본 파일 데이터베이스의 검색을 통해 상기 감염 파일에 대응되는 원본 파일의 파일 축약 정보를 추출하고, 상기 추출된 파일 축약 정보와 상기 감염 파일에 대한 상기 블록 별 검증 값 및 대표 값간의 비교를 통해 시그너쳐 패턴을 생성하는 시그너쳐 생성부Extract the file abbreviation information of the original file corresponding to the infected file through the search of the source file database, and compare the signature file with the signature value and the representative value of each block for the infected file and the infected file. Signature generator to generate 를 포함하는 시그너쳐 패턴 생성 장치.Signature pattern generation device comprising a. 제 6 항에 있어서,The method of claim 6, 상기 파일 처리부는, 상기 원본 파일 또는 상기 감염 파일을 1-10KB 단위의 블록으로 나누는 The file processing unit divides the original file or the infected file into blocks of 1-10KB units. 시그너쳐 패턴 생성 장치.Signature pattern generator. 제 6 항에 있어서,The method of claim 6, 상기 파일 처리부는, 상기 블록 별로 해쉬 값이나 CRC값을 산출하여 상기 블록 별 검증 값을 생성하는 The file processing unit generates a verification value for each block by calculating a hash value or a CRC value for each block. 시그너쳐 패턴 생성 장치.Signature pattern generator. 제 6 항에 있어서,The method of claim 6, 상기 파일 처리부는, 상기 블록 별로 엔트로피 값을 산출하여 상기 블록 별 대표 값을 생성하는 The file processor is configured to generate a representative value for each block by calculating an entropy value for each block. 시그너쳐 패턴 생성 장치.Signature pattern generator. 제 6 항에 있어서,The method of claim 6, 상기 축약 정보 생성부는, 상기 원본 파일의 이름, 파일 크기 및 파일 작성 일자 중 적어도 하나 이상을 상기 블록 별 대표 값과 검증 값에 포함시켜 상기 파일 축약 정보를 생성하는 The shortening information generating unit may generate the file shortening information by including at least one or more of a name, a file size, and a file creation date of the original file in the representative value and the verification value for each block. 시그너쳐 패턴 생성 장치.Signature pattern generator. 제 6 항에 있어서,The method of claim 6, 상기 시그너쳐 생성부는,The signature generation unit, 상기 감염 파일에 대한 블록 별 대표 값과 상기 추출된 파일 축약 정보 내 블록 별 대표 값 간의 비교를 통해 일치하지 않는 부분을 검색하고, 상기 검색된 부분을 감염 부분으로 하는 시그너쳐 패턴을 생성하는 Searching for an inconsistent part by comparing the representative value of each block for the infected file with the representative value of each block in the extracted file abbreviation information, and generating a signature pattern using the retrieved part as an infected part; 시그너쳐 패턴 생성 장치.Signature pattern generator. 다수의 파일에 대한 시그너쳐 패턴이 저장되어 있는 시그너쳐 데이터베이스와,A signature database that stores signature patterns for multiple files, 시그너쳐 검증용 파일 및 원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 각각 산출하는 파일 처리부와,A file processing unit for dividing the signature verification file and the original file into a plurality of blocks having a predetermined size, and then calculating a verification value and a representative value for each block; 상기 파일 처리부에서 산출된 상기 원본 파일에 대한 상기 블록 별 검증 값과 대표 값을 이용하여 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 축약 정보 생성부와,A condensation information generation unit for generating file condensation information by using the block-specific verification value and the representative value of the original file calculated by the file processing unit and storing the condensation information in the original file database; 상기 시그너쳐 검증용 파일에 대응되는 시그너쳐 패턴을 상기 시그너쳐 데이터베이스에서 검색하고, 상기 원본 파일 데이터베이스의 검색을 통해 상기 시그너쳐 검증용 파일에 대응되는 원본 파일의 파일 축약 정보를 추출한 후 상기 추출된 파일 축약 정보와 상기 시그너쳐 검증용 파일에 대한 상기 블록 별 검증 값 및 대표 값간의 비교를 통해 시그너쳐 위치를 추정하고, 상기 추정된 시그너쳐 위치와 상기 검색된 시그너쳐 패턴간의 비교를 통해 상기 검색된 시그너쳐 패턴을 검증하는 비교 및 분석부Search for the signature pattern corresponding to the signature verification file in the signature database, extract file abbreviation information of the original file corresponding to the signature verification file through a search of the original file database, and then extract the file contraction information A comparison and analysis unit estimating a signature position by comparing the verification value and a representative value of each block with respect to the signature verification file, and verifying the retrieved signature pattern by comparing the estimated signature position with the retrieved signature pattern 를 포함하는 시그너쳐 패턴 검증 장치.Signature pattern verification apparatus comprising a. 제 12 항에 있어서,13. The method of claim 12, 상기 파일 처리부는, 상기 원본 파일 또는 상기 시그너쳐 검사용 파일을 1-10KB 단위의 블록으로 나누는 The file processing unit divides the original file or the signature inspection file into blocks of 1-10KB units. 시그너쳐 패턴 검증 장치.Signature pattern verification device. 제 12 항에 있어서,13. The method of claim 12, 상기 파일 처리부는, 상기 블록 별로 해쉬 값이나 CRC값을 산출하여 상기 블록 별 검증 값을 생성하는 The file processing unit generates a verification value for each block by calculating a hash value or a CRC value for each block. 시그너쳐 패턴 검증 장치.Signature pattern verification device. 제 12 항에 있어서,13. The method of claim 12, 상기 파일 처리부는, 상기 블록 별로 엔트로피 값을 산출하여 상기 블록 별 대표 값을 생성하는 The file processor is configured to generate a representative value for each block by calculating an entropy value for each block. 시그너쳐 패턴 검증 장치.Signature pattern verification device. 제 12 항에 있어서,13. The method of claim 12, 상기 축약 정보 생성부는, 상기 원본 파일의 이름, 파일 크기 및 파일 작성 일자 중 적어도 하나 이상을 상기 블록 별 대표 값과 검증 값에 포함시켜 상기 파일 축약 정보를 생성하는 The shortening information generating unit may generate the file shortening information by including at least one or more of a name, a file size, and a file creation date of the original file in the representative value and the verification value for each block. 시그너쳐 패턴 검증 장치.Signature pattern verification device. 제 12 항에 있어서,13. The method of claim 12, 상기 비교 및 분석부는, 상기 추출된 파일 축약 정보와 상기 시그너쳐 검증용 파일에 대한 상기 블록 별 검증 값 및 대표 값간의 비교를 통해 서로 일치하지 않는 블록의 추출을 통해 상기 시그너쳐 검증용 파일의 시그너쳐 위치를 추정하고, 상기 추정된 위치와 상기 검색된 시그너쳐 패턴에서 시그너쳐 위치간의 일치 여부를 통해 상기 검색된 시그너쳐 패턴을 검증하는The comparison and analysis unit may determine the signature position of the signature verification file by extracting blocks that do not coincide with each other by comparing the extracted file contraction information and the verification value and the representative value of each block with respect to the signature verification file. Estimating and verifying the retrieved signature pattern through a match between the estimated position and a signature position in the found signature pattern. 시그너쳐 패턴 검증 장치.Signature pattern verification device. 원본 파일을 입력받는 단계와,Receiving the original file, 상기 원본 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 산출하는 단계와,Calculating a verification value and a representative value for each block after dividing the original file into a plurality of blocks having a predetermined size; 상기 산출된 블록 별 검증 값과 대표 값을 이용하여 상기 원본 파일에 대한 파일 축약 정보를 생성한 후 이를 원본 파일 데이터베이스에 저장하는 단계Generating file abbreviation information for the original file by using the calculated block-by-block verification value and the representative value, and storing the abbreviation information for the original file in the original file database; 를 포함하는 파일 축약 정보 생성 방법.File abbreviation information generation method comprising a. 제 18 항에 있어서,The method of claim 18, 상기 산출하는 단계는, 상기 원본 파일을 1-10KB 단위의 블록으로 나누어 상기 블록 별 검증 값과 대표 값을 산출하는 The calculating may include dividing the original file into blocks having a unit of 1-10KB to calculate a verification value and a representative value for each block. 파일 축약 정보 생성 방법.How to generate file short information. 제 18 항 또는 제 19항에 있어서,The method of claim 18 or 19, 상기 산출하는 단계는, 상기 블록 별로 해쉬 값이나 CRC값을 산출하여 상기 블록 별 검증 값을 산출하는 The calculating may include calculating a verification value for each block by calculating a hash value or a CRC value for each block. 파일 축약 정보 생성 방법.How to generate file short information. 제 18 항 또는 제 19 항에 있어서,20. The method according to claim 18 or 19, 상기 산출하는 단계는, 상기 블록 별로 엔트로피 값을 산출하여 상기 블록 별 대표 값을 산출하는The calculating may include calculating a representative value for each block by calculating an entropy value for each block. 파일 축약 정보 생성 방법.How to generate file short information. 제 18 항에 있어서,The method of claim 18, 상기 저장하는 단계는, 상기 원본 파일의 이름, 파일 크기 및 파일 작성 일자 중 적어도 하나 이상을 상기 블록 별 대표 값과 검증 값에 포함시켜 상기 파일 축약 정보를 생성한 후 이를 상기 원본 파일 데이터베이스에 저장하는The storing may include generating the file abbreviation information by including at least one or more of a name, a file size, and a file creation date of the original file in the representative value and the verification value for each block, and storing the file abbreviation information in the original file database. 파일 축약 정보 생성 방법.How to generate file short information. 소정 크기를 갖는 블록으로 구성된 원본 파일에 대한 블록 별 검증 값과 대표 값을 통해 생성된 파일 축약 정보를 저장된 원본 파일 데이터베이스를 이용하여 시그너쳐 패턴을 생성하는 방법으로서,A method of generating a signature pattern using a source file database storing file contraction information generated by verification values and representative values of a block of a source file composed of blocks having a predetermined size, 감염 파일의 입력됨에 따라 상기 감염 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 각각 산출하는 단계와,Dividing the infected file into a plurality of blocks having a predetermined size as input of an infected file, and calculating a verification value and a representative value for each block, respectively; 상기 원본 파일 데이터베이스의 검색을 통해 상기 감염 파일에 대응되는 원본 파일의 파일 축약 정보를 추출하는 단계와Extracting file abbreviation information of an original file corresponding to the infected file by searching the original file database; 상기 추출된 파일 축약 정보와 상기 감염 파일에 대한 상기 블록 별 검증 값 및 대표 값간의 비교를 통해 시그너쳐 패턴을 생성하는 단계Generating a signature pattern through comparison between the extracted file contraction information and the block-specific verification value and the representative value of the infected file; 를 포함하는 시그너쳐 패턴 생성 방법.Signature pattern generation method comprising a. 제 23 항에 있어서,The method of claim 23, wherein 상기 블록 별 검증 값은, 해쉬 값이나 CRC값인 것을 특징으로 하는The verification value for each block is a hash value or a CRC value. 시그너쳐 패턴 생성 방법.How to create a signature pattern. 제 23 항에 있어서,The method of claim 23, wherein 상기 블록 별 대표 값은, 엔트로피 값인 것을 특징으로 하는 The representative value for each block is an entropy value. 시그너쳐 패턴 생성 방법.How to create a signature pattern. 제 23 항에 있어서,The method of claim 23, wherein 상기 시그너쳐 패턴을 생성하는 단계는, 상기 감염 파일에 대한 블록 별 대표 값과 상기 추출된 파일 축약 정보 내 블록 별 대표 값 간의 비교를 통해 일치하지 않는 부분을 검색하고, 상기 검색된 부분을 감염 부분으로 하는 시그너쳐 패턴을 생성하는 The generating of the signature pattern may include searching for an inconsistent part by comparing a representative value for each infected file with respect to the infected file and a representative value for each block in the extracted file contraction information, and using the searched portion as an infected part. To generate a signature pattern 시그너쳐 패턴 생성 방법.How to create a signature pattern. 다수의 파일에 대한 시그너쳐 패턴이 저장되어 있는 시그너쳐 데이터베이스와, 소정 크기를 갖는 블록으로 구성된 원본 파일에 대한 블록 별 검증 값과 대표 값을 통해 생성된 파일 축약 정보를 저장된 원본 파일 데이터베이스를 이용하여 시그너쳐 패턴을 검증하는 방법으로서,Signature pattern using signature database that stores signature patterns for multiple files, and file abbreviation information generated through block-specific verification and representative values for the original file composed of blocks having a predetermined size. As a way to verify 시그너쳐 검증용 파일이 입력됨에 따라 상기 시그너쳐 검증용 파일을 소정 크기를 갖는 다수 개의 블록으로 나눈 후 블록 별 검증 값과 대표 값을 각각 산출하는 단계와,Dividing the signature verification file into a plurality of blocks having a predetermined size as a signature verification file is input, and calculating a verification value and a representative value for each block, respectively; 상기 시그너쳐 검증용 파일에 대응되는 시그너쳐 패턴을 상기 시그너쳐 데이터베이스에서 검색하는 단계와,Retrieving a signature pattern corresponding to the signature verification file from the signature database; 상기 원본 파일 데이터베이스의 검색을 통해 상기 시그너쳐 검증용 파일에 대응되는 원본 파일의 파일 축약 정보를 추출하는 단계와,Extracting file abbreviation information of an original file corresponding to the signature verification file by searching the original file database; 상기 추출된 파일 축약 정보와 상기 시그너쳐 검증용 파일에 대한 상기 블록 별 검증 값 및 대표 값 간의 비교를 통해 시그너쳐 위치를 추정하는 단계와, Estimating a signature location through comparison between the extracted file contraction information and the block-specific verification value and the representative value for the signature verification file; 상기 추정된 시그너쳐 위치와 상기 검색된 시그너쳐 패턴간의 비교를 통해 상기 검색된 시그너쳐 패턴을 검증하는 단계Verifying the retrieved signature pattern by comparing the estimated signature location with the retrieved signature pattern 를 포함하는 시그너쳐 패턴 검증 방법.Signature pattern verification method comprising a. 제 27 항에 있어서,28. The method of claim 27, 상기 블록 별 검증 값은, 해쉬 값이나 CRC값인 것을 특징으로 하는The verification value for each block is a hash value or a CRC value. 시그너쳐 패턴 검증 방법.Signature pattern verification method. 제 27 항에 있어서,28. The method of claim 27, 상기 블록 별 대표 값은, 엔트로피 값인 것을 특징으로 하는 The representative value for each block is an entropy value. 시그너쳐 패턴 검증 방법.Signature pattern verification method.
KR1020090074791A 2009-08-13 2009-08-13 File summary information generating, signature generating apparatus and signature pattern inspecting apparatus and method Active KR101092342B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090074791A KR101092342B1 (en) 2009-08-13 2009-08-13 File summary information generating, signature generating apparatus and signature pattern inspecting apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090074791A KR101092342B1 (en) 2009-08-13 2009-08-13 File summary information generating, signature generating apparatus and signature pattern inspecting apparatus and method

Publications (2)

Publication Number Publication Date
KR20110017226A KR20110017226A (en) 2011-02-21
KR101092342B1 true KR101092342B1 (en) 2011-12-09

Family

ID=43775332

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090074791A Active KR101092342B1 (en) 2009-08-13 2009-08-13 File summary information generating, signature generating apparatus and signature pattern inspecting apparatus and method

Country Status (1)

Country Link
KR (1) KR101092342B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101277623B1 (en) 2012-01-27 2013-06-21 주식회사 안랩 White list synchronization server and client device

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101870311B1 (en) 2012-03-09 2018-06-25 (주)바이오니아 Compositions for hot start reverse transcription reaction or hot start reverse transcription polymerase chain reaction

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234269A (en) * 2007-03-20 2008-10-02 Nec Corp File management system and method, and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008234269A (en) * 2007-03-20 2008-10-02 Nec Corp File management system and method, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101277623B1 (en) 2012-01-27 2013-06-21 주식회사 안랩 White list synchronization server and client device
WO2013111949A1 (en) * 2012-01-27 2013-08-01 주식회사 안랩 Whitelist synchronization server and client apparatus

Also Published As

Publication number Publication date
KR20110017226A (en) 2011-02-21

Similar Documents

Publication Publication Date Title
McIntosh et al. Ransomware mitigation in the modern era: A comprehensive review, research challenges, and future directions
Muralidharan et al. File packing from the malware perspective: Techniques, analysis approaches, and directions for enhancements
US9946880B2 (en) Software vulnerability analysis method and device
Kapravelos et al. Revolver: An automated approach to the detection of evasive web-based malware
US8261344B2 (en) Method and system for classification of software using characteristics and combinations of such characteristics
Lin et al. Identifying android malicious repackaged applications by thread-grained system call sequences
Carmony et al. Extract Me If You Can: Abusing PDF Parsers in Malware Detectors.
RU2634178C1 (en) Method of detecting harmful composite files
JP5265061B1 (en) Malicious file inspection apparatus and method
US10013555B2 (en) System and method for detecting harmful files executable on a virtual stack machine based on parameters of the files and the virtual stack machine
Ng et al. Expose: Discovering potential binary code re-use
Zolkipli et al. A framework for malware detection using combination technique and signature generation
WO2018127794A1 (en) Management of security vulnerabilities
EP3800570B1 (en) Methods and systems for genetic malware analysis and classification using code reuse patterns
Shabtai et al. F-sign: Automatic, function-based signature generation for malware
Rohith et al. A comprehensive study on malware detection and prevention techniques used by anti-virus
Adkins et al. Heuristic malware detection via basic block comparison
Saha et al. Adapt it! automating apt campaign and group attribution by leveraging and linking heterogeneous files
Shi et al. Recurscan: Detecting recurring vulnerabilities in php web applications
Gokkaya et al. Software supply chain: review of attacks, risk assessment strategies and security controls
Yan et al. DitDetector: Bimodal learning based on deceptive image and text for macro malware detection
Jang et al. Function‐Oriented Mobile Malware Analysis as First Aid
KR101327740B1 (en) apparatus and method of collecting action pattern of malicious code
KR101092342B1 (en) File summary information generating, signature generating apparatus and signature pattern inspecting apparatus and method
KR101311367B1 (en) Method and apparatus for diagnosing attack that bypass the memory protection

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20090813

A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20091221

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20090813

Comment text: Patent Application

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20110302

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20111026

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20111205

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20111205

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20141205

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20141205

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20151207

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20151207

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20161205

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20161205

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20171205

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20171205

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20181205

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20181205

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20191205

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20191205

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20201207

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20211206

Start annual number: 11

End annual number: 11

PR1001 Payment of annual fee

Payment date: 20221205

Start annual number: 12

End annual number: 12

PR1001 Payment of annual fee

Payment date: 20231205

Start annual number: 13

End annual number: 13

PR1001 Payment of annual fee

Payment date: 20241205

Start annual number: 14

End annual number: 14

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载