본문 바로가기
KERD
논문KCI 등재

행위 그래프 기반의 변종 악성코드 탐지

Metamorphic Malware Detection using Subgraph Matching

0

조회

0

다운로드

4

인용

0

참고문헌

키워드

주제분류컴퓨터학

초록

네트워크 및 컴퓨터의 발전에 따라 악성코드 역시 폭발적인 증가 추이를 보이고 있으며, 새로운 악성코드의 출현과 더불어 기존의 악성코드를 이용한 변종 역시 큰 몫을 차지하고 있다. 특히 실행압축 기술과 코드 난독화를 이용한 변종들은 제작이 쉬울 뿐만 아니라, 자신의 시그너쳐 혹은 구문적 특징을 변조할 수 있어, 악성코드 제작자들이 널리 사용하는 기술이다. 이러한 변종 및 신종 악성코드를 빠르게 탐지하기 위해, 본 연구에서는 행위 그래프 분석을 통한 악성코드 모듈별 유사도 분석 기법을 제안한다. 우리는 우선 악성코드들에서 일반적으로 사용하는 2,400개 이상의 API들을 분석하여 총 128개의 행위로 추상화 하였다. 또한 동적 분석을 통해 악성코드들의 API 호출 순서를 추상화된 그래프로 변환하고 부분 그래프들을 추출하여, 악성코드가 가진 모든 행위 부분 집합을 정리하였다. 마지막으로, 이렇게 추출된 부분 집합들 간의 비교 분석을 통하여 해당 악성코드들이 얼마나 유사한지를 분석하였다. 실험에서는 변종을 포함한 실제 악성코드 273개를 이용하였으며, 총 10,100개의 분석결과를 추출하였다. 실험결과로부터 행위 그래프를 이용하여 변종 악성코드가 모두 탐지 가능함을 보였으며, 서로 다른 악성코드들 간에 공유되는 행위 모델 역시 분석할 수 있었다.

Abstract

In the recent years, malicious codes called malware are having shown significant increase due to the code obfuscation to evade detection mechanisms. When the code obfuscation technique is applied to malwares, they can change their instruction sequence and also even their signature. These malwares which have same functionality and different appearance are able to evade signature-based AV products. Thus, AV venders paid large amount of cost to analyze and classify malware for generating the new signature. In this paper, we propose a novel approach for detecting metamorphic malwares. The proposed mechanism first converts malware’s API call sequences to call graph through dynamic analysis. After that, the callgraph is converted to semantic signature using 128 abstract nodes. Finally, we extract all subgraphs and analyze how similar two malware’s behaviors are through subgraph similarity. To validate proposed mechanism, we use 273 real-world malwares include obfuscated malware and analyze 10,100 comparison results. In the evaluation, all metamorphic malwares are classified correctly, and similar module behaviors among different malwares are also discovered.

참고문헌 (34)

  1. Symantec global internet security threat report, "Symantec Co", ~ (2010)
  2. AVV, "Antiheuristics", 29A Magazine, 1(1) (1999)
  3. M. Driller, "Metamorphism in practice", 29A Magazine, 1(6) (2002)
  4. L. Julus, "Metamorphism", 29A Magazine, 1(5) (2000)
  5. "Anti-virus evasion techniques and countermeasures" (2005)[URL]
  6. Rajaat, "Polimorphism", 29A Magazine, 1(3) (1999)
  7. G. Jeong, "Generic unpacking using entropy analysis", IEEE MALWARE, pp.98~105 (2010)
  8. R. Lyda, "Using entropy analysis to find encrypted and packed malware", IEEE Security & Privacy, 5(2), pp.40~45 (2007)
  9. M. Christodorescu, "Testing malware detectors", ISSTA, pp.34~44 (2004)
  10. C.Nachenberg, "Computer virus- antivirus coevolution", Comm. ACM, 40(1), pp.46~51 (1997)
  11. G. Jacob, "Behavioral detection of malware: from a survey towards an established taxonomy", Journal in Computer Virology, 4(3), pp.251~266 (2008)
  12. M.G. Schultz, "Data mining methods for detection of new malicious executables", IEEE Security and Privacy, pp.38~49 (2001)
  13. C.J.C. Burges, "A tutorial on support vector machines for pattern recognition", Data Min. Knowl. Discov, 2(2), pp.121~167 (1998)
  14. J.Z. Kolter, "Learning to detect malicious executables in the wild", KDD, pp.470~478 (2004)
  15. J.H. Wang, "Virus detection using data mining techniques", IEEE Int. Carnahan Conf, pp.71~76 (2003)
  16. F. Cohen, "Computer viruses: Theory and experiments", DOD, 1987, pp.통권 : 6, 22~35
  17. D. Chess, "An undetectable computer virus", Virus Bulletin Conf (2000)
  18. A. Moser, "Limits of static analysis for malware detection", ACSAC, pp.421~430 (2007)
  19. A. Moser, "Exploring multiple execution paths for malware analysis", IEEE Security and Privacy, pp.231~245 (2007)
  20. D. Bruschi, "Code normalization for self-mutating malware", IEEE Security & Privacy, 5(2), pp.46~54 (2007)
  21. Malware normalization, "M. Christodorescu", University of Wisconsin, ~ (2005)
  22. M. Christodorescu, "Semantics-aware malware detection", IEEE Security and Privacy, pp.32~46 (2005)
  23. A. Walenstein, "Normalizing metamorphic malware using term rewriting", SCAM, pp.75~84 (2006)
  24. M.D. Preda, "A semantics-based approach to malware detection", ACM Trans. Program. Lang. Syst, 30(5) (2008)
  25. V.S. Sathyanarayan, "Signature generation and detection of malware families", ACISP, pp.336~349 (2008)
  26. C. Willems, "Toward automated dynamic malware analysis using cwsandbox", IEEE Security & Privacy, 5(2), pp.32~39 (2007)
  27. C.K. Ulrich Bayer, "Ttanalyze: A tool for analyzing malware", 15th Ann. Conf. of European Inst. for Computer Antivirus Research (EICAR), pp.180~192 (2006)
  28. J. Lee, "Detecting Metamorhpic Malware using Code Graphs", ACM Int'l Symp. on Applied Computing (ACM SAC), pp.1970~1977 (2010)
  29. K. Rieck, "Learning and Classification of Malware Behavior", Detection of Intrusions and Malware, and Vulnerability Assessment, 5137, pp.108~125 (2008), Springer
  30. K. Thomas, "The Koobface botnet and the rise of social malware", IEEE Int. Conf. Malicious and Unwanted Software (Malware'10), pp.63~70 (2010)
  31. "Offensive Computing"[URL]
  32. "Vx chaos file server"[URL]
  33. "Vx heavens"[URL]
  34. G. Taha, "Counterattacking the packers", McAfee Avert Labs, ~

관련 논문AI추천

이 간행물의 다른 논문 (7건)