• 제목/요약/키워드: VMProtect

검색결과 3건 처리시간 0.015초

VMProtect 동작원리 분석 및 자동 역난독화 구현 (VMProtect Operation Principle Analysis and Automatic Deobfuscation Implementation)

  • 방철호;석재혁;이상진
    • 정보보호학회논문지
    • /
    • 제30권4호
    • /
    • pp.605-616
    • /
    • 2020
  • 난독화 기술은 프로그램의 기능성은 그대로 유지하면서 자료구조, 제어흐름 등 내부 로직을 변형함으로써 프로그램의 분석을 지연시키는 기술이다. 그러나 이러한 난독화 기술을 악성코드에 적용함으로써 안티바이러스 소프트웨어의 악성코드 탐지율을 저하시키는 사례가 빈번하게 발생하고 있다. 소프트웨어 지적재산권을 보호하기 위하여 적용되는 난독화 기술이 역으로 악성코드에 적용됨으로써 악성코드 탐지율을 저해할 뿐만 아니라 이의 분석을 어렵게 하여 악성코드의 기능성 파악에도 어려움을 주게 되므로 난독화가 적용된 코드를 원본에 가깝게 복원할 수 있는 역난독화 기술의 연구 또한 꾸준히 지속 되어야 한다. 본 논문에서는 상용 난독화 도구 중 대중적으로 널리 알려져 있는 도구인 VMProtect 3.4.0에서 제공하는 세부 난독화 기술 중 Pack the Output File, Import Protection의 옵션이 적용되어 난독화 된 코드의 특징을 분석하고 이의 역난독화 알고리즘을 제시하고자 한다.

VMProtect의 역공학 방해 기능 분석 및 Pin을 이용한 우회 방안 (Analysis of Anti-Reversing Functionalities of VMProtect and Bypass Method Using Pin)

  • 박성우;박용수
    • 정보처리학회논문지:컴퓨터 및 통신 시스템
    • /
    • 제10권11호
    • /
    • pp.297-304
    • /
    • 2021
  • 상용 난독화 도구(프로텍터)들은 소프트웨어 역공학 과정에서 프로그램의 분석을 지연시키고 방해하는 난독화 기술 및 역공학 방해(안티리버싱) 기법을 적용시킴으로써 소프트웨어의 동작 과정을 분석하는데 어려움을 발생시키는데 목적이 있다. 특히, 가상화 탐지와 안티디버깅 기능 같은 경우 분석 도구가 발견되면 정상적인 실행 흐름을 벗어나 프로그램을 종료시킨다. 본 논문에서는 상용 난독화 도구(프로텍터) 중 하나인 VMProtect 3.5.0을 통해 Debugger Detection, Virualization Tools Detection 옵션을 적용시킨 실행 파일의 안티리버싱 기법을 분석하고 Pin을 이용한 우회 방안을 제안한다. 또한, 적용된 안티리버싱 기법을 분석하는 과정에서 Amti-VM 기술과 Anti-DBI 기술에 의해 프로그램이 종료되는 문제가 발생하기 때문에 API 분석을 통해 특정 프로그램 종료 루틴을 알아내어 적용된 안티리버싱 기법의 위치를 예상하고 위치를 바탕으로 안티리버싱 기법 우회 방안 알고리즘 순서도를 작성하였다. 실험에 사용된 소프트웨어들의 버전의 차이로부터 발생하는 호환성 문제, 기법의 변화 등을 고려하여 최신 버전의 소프트웨어(VMProtect, Windows, Pin)에서 Pin 자동화 우회 코드를 작성하고 실험을 진행하여 성공적으로 우회됨을 확인하였다. 제안된 분석 방안을 개선하여 기법이 제시되지 않은 난독화 도구의 안티리버싱 기법을 분석하고 우회 방안을 찾아낼 수 있다.

N-gram Opcode를 활용한 머신러닝 기반의 분석 방지 보호 기법 탐지 방안 연구 (A Study on Machine Learning Based Anti-Analysis Technique Detection Using N-gram Opcode)

  • 김희연;이동훈
    • 정보보호학회논문지
    • /
    • 제32권2호
    • /
    • pp.181-192
    • /
    • 2022
  • 신종 악성코드의 등장은 기존 시그니처 기반의 악성코드 탐지 기법들을 무력화시키며 여러 분석 방지 보호 기법들을 활용하여 분석가들의 분석을 어렵게 하고 있다. 시그니처 기반의 기존 연구는 악성코드 제작자가 쉽게 우회할 수 있는 한계점을 지닌다. 따라서 본 연구에서는 악성코드 자체의 특성이 아닌, 악성코드에 적용될 수 있는 패커의 특성을 활용하여, 단시간 내에 악성코드에 적용된 패커의 분석 방지 보호 기법을 탐지하고 분류해낼 수 있는 머신러닝 모델을 구축하고자 한다. 본 연구에서는 패커의 분석 방지 보호 기법을 적용한 악성코드 바이너리를 대상으로 n-gram opcode를 추출하여 TF-IDF를 활용함으로써 피처(feature)를 추출하고 이를 통해 각 분석 방지 보호 기법을 탐지하고 분류해내는 머신러닝 모델 구축 방법을 제안한다. 본 연구에서는 실제 악성코드를 대상으로 악성코드 패킹에 많이 사용되는 상용 패커인 Themida와 VMProtect로 각각 분석 방지 보호 기법을 적용시켜 데이터셋을 구축한 뒤, 6개의 머신러닝 모델로 실험을 진행하였고, Themida에 대해서는 81.25%의 정확도를, VMProtect에 대해서는 95.65%의 정확도를 보여주는 최적의 모델을 구축하였다.