PE Header Characteristics Analysis Technique for Malware Detection

악성프로그램 탐지를 위한 PE헤더 특성 분석 기술

  • 최양서 (한국전자통신연구원 보안게이트웨이연구팀) ;
  • 김익균 (한국전자통신연구원 보안게이트웨이연구팀) ;
  • 오진태 (한국전자통신연구원 보안게이트웨이연구팀) ;
  • 류재철 (충남대학교 컴퓨터공학과)
  • Published : 2008.06.20

Abstract

In order not to make the malwares be easily analyzed, the hackers apply various anti-reversing and obfuscation techniques to the malwares. However, as the more anti-revering techniques are applied to the malwares the more abnormal characteristics in the PE file's header which are not shown in the normal PE file, could be observed. In this letter, a new malware detection technique is proposed based on this observation. For the malware detection, we define the Characteristics Vector(CV) which can represent the characteristics of a PE file's header. In the learning phase, we calculate the average CV(ACV) of malwares(ACVM) and normal files(ACVN). To detect the malwares we calculate the 2 Weighted Euclidean Distances(WEDs) from a file's CV to ACVs and they are used to decide whether the file is a malware or not. The proposed technique is very fast and detection rate is fairly high, so it could be applied to the network based attack detection and prevention devices. Moreover, this technique is could be used to detect the unknown malwares because it does not utilize a signature but the malware's characteristics.

최근 발생하는 다양한 악성 프로그램을 분석해 보면, 해당 악성 프로그램을 쉽게 분석할 수 없도록 하기 위해 다양한 분석 방해 기법들이 적용되고 있다. 그러나, 분석 방해 기법들이 적용될수록, 악성프로그램의 PE파일 헤더에는 정상적인 일반 PE파일의 헤더와는 다른 특징이 더 많이 나타난다. 본 논문에서는 이를 이용하여 악성 프로그램을 탐지할 수 있는 방법을 제안하고자 한다. 이를 위해, PE파일 헤더의 특징을 표현할 수 있는 특징 벡터(Characteristic Vector, CV)를 정의하고, 정상 실행 파일의 특징 벡터의 평균(ACVN)과 악성 실행 파일의 특징 벡터의 평균(ACVM)을 사전 학습을 통해 추출한다. 이후, 임의 파일의 특징 벡터와 ACVN, ACVM간의 Weighted Euclidean Distance(WED)를 계산하고, 이를 기반으로 해당 파일이 정상파일인지 혹은 악성 실행 파일인지를 판단하는 기술을 제안한다.

Keywords