DOI QR코드

DOI QR Code

코드은닉을 이용한 역공학 방지 악성코드 분석방법 연구

A New Analysis Method for Packed Malicious Codes

  • 이경률 (순천향대학교 정보보호학과) ;
  • 임강빈 (순천향대학교 정보보호학과)
  • Lee, Kyung-Roul (Dept. of Information Security Engineering, Soonchunhyang University) ;
  • Yim, Kang-Bin (Dept. of Information Security Engineering, Soonchunhyang University)
  • 투고 : 2012.04.13
  • 심사 : 2012.06.30
  • 발행 : 2012.06.30

초록

본 논문은 악성코드가 사용하는 자기방어기법을 방식에 따라 분류하고, 악의적인 코드를 보호하는 방법의 일종인 패킹에 대해 소개하였으며, 패킹을 이용하는 악성코드를 보다 빠르게 분석할 수 있는 방안을 제시하였다. 패킹기법은 악의적인 코드를 은닉하고 실행 시에 복원하는 기술로서 패킹된 악성코드를 분석하기 위해서는 복원 후의 진입점을 찾는 것이 필요하다. 기존에는 진입점 수집을 위하여 악성코드의 패킹 관련 코드를 자세히 분석하여야만 했다. 그러나 본 논문에서는 이를 대신하여 악성코드를 생성한 표준 라이브러리 코드 일부를 탐색하는 방법을 제시하였다. 제시한 방안을 실제로 구현하여 보다 신속히 분석할 수 있음을 증명하였다.

This paper classifies the self-defense techniques used by the malicious software based on their approaches, introduces the packing technique as one of the code protection methods and proposes a way to quickly analyze the packed malicious codes. Packing technique hides a malicious code and restore it at runtime. To analyze a packed code, it is initially required to find the entry point after restoration. To find the entry point, it has been used reversing the packing routine in which a jump instruction branches to the entry point. However, the reversing takes too much time because the packing routine is usually obfuscated. Instead of reversing the routine, this paper proposes an idea to search some features of the startup code in the standard library used to generate the malicious code. Through an implementation and a consequent empirical study, it is proved that the proposed approach is able to analyze malicious codes faster.

키워드

참고문헌

  1. 천재홍, 박대우. "VoIP의 DoS 공격 차단을 위한 IPS의 동적 업데이트엔진" 한국컴퓨터정보학회논문지, 제10권 제5호, pp.317-226, 2006년 12월
  2. 안철수연구소, "악성코드 동향 연간 보고서", ASEC, 2009년
  3. 배성훈, "'7.7 DDoS 사고' 대응의 문제점과 재발방지 방안", 국회입법조사처, 현안보고서 제48호, 2009
  4. Mark Vincent Yanson, "The Art of Unpacking", IBM Internet Security Systems
  5. Christian Collberg, Clark Thomborson and Duglas Low, "A Taxonomy of Obfuscating Transformations", Department of Computer Science, The University of Auckland, Thechnical Report #148, 1997
  6. J. Bergeron, M. Debbabi, J. Desharnais, M. M. Erhioui, Y. Lavoie and N. Tawbi, "Static Detection of Malicious Code in Executable Programs", International Journal of Req. Eng., 2001
  7. Mihai Christodorescu, Somesh Jha, Sanjit A. Seshia, Dawn Song, Randal E. Bryant, "Semantic-Aware Malware Detection", In the Proceedings of the IEEE Symposium on Security and Privacy, pp.32-46, May 2005
  8. Gogu Balakrishnan, Thomas Reps., "Analyzing Memory Accesses in x86 Executables", In Proceedings of Compiler Construction(LNCS 2985), pp.5-23, April 2004
  9. Arun, Lakhotia and Eric Uday Kumar, "Abstracting Stack to Detect Obfuscated Calls in Binaries", IEEE International Workshop on Source Code Analysis and Manipulation, pp.17-26, 2004
  10. Virus Bullentin Conference, 2007
  11. "Microsoft Portable Executable and Common Object File Format Specification", Microsoft, 2008

피인용 문헌

  1. 분석기법을 우회하는 악성코드를 분석하기 위한 프로세스 설계 vol.24, pp.4, 2012, https://doi.org/10.22693/niaip.2017.24.4.068
  2. Classification and Analysis of Security Techniques for the User Terminal Area in the Internet Banking Service vol.2020, pp.None, 2020, https://doi.org/10.1155/2020/7672941
  3. 악성메일 훈련 모델에 관한 연구 vol.30, pp.2, 2012, https://doi.org/10.13089/jkiisc.2020.30.2.197