$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

[국내논문] 가상화 난독화 기법이 적용된 실행 파일 분석 및 자동화 분석 도구 구현
Analysis of Virtualization Obfuscated Executable Files and Implementation of Automatic Analysis Tool 원문보기

情報保護學會論文誌 = Journal of the Korea Institute of Information Security and Cryptology, v.23 no.4, 2013년, pp.709 - 720  

석재혁 (고려대학교 정보보호대학원) ,  김성훈 (고려대학교 정보보호대학원) ,  이동훈 (고려대학교 정보보호대학원)

초록
AI-Helper 아이콘AI-Helper

가상화 난독화 기법은 보호하고자 하는 코드영역에 가상화 기법을 적용함으로써 코드의 분석을 어렵게 하는 기법이다. 상용 가상화 난독화 도구로 보호된 프로그램은 가상화된 코드가 원본코드로 복원되는 시점이 존재하지 않고 다양한 난독화 기법으로 가상화 영역이 보호되어 있어 분석하기 어렵기로 잘 알려져 있다. 그러나 이러한 가상화 난독화 기법이 악성코드 보호에 악용되면서 악성코드의 분석 및 대응에 어려움을 겪고 있는 현실이다. 본 논문에서는 상용 가상화 난독화 기법의 핵심 요소들을 자동으로 추출하고 실행 과정을 트레이스 할 수 있는 도구를 구현함으로써 상용 가상화 난독화 도구로 보호되어 있는 악성코드의 분석 및 대응에 활용할 수 있도록 한다. 이를 위하여 가상화 난독화 기법의 기본 구조와 동작 과정을 정리하고, 상용 가상화 난독화 기법으로 보호된 실행 파일을 대상으로 프로그램 분석 기법 중 하나인 Equation Reasoning System을 활용한 분석 결과를 제시한다. 또한 상용 가상화 난독화 도구로 보호되어 있는 실행 파일에서 가상화 구조를 추출하고 프로그램 실행 순서를 도출할 수 있는 자동화 분석 도구를 구현한다.

Abstract AI-Helper 아이콘AI-Helper

Virtualization obfuscation makes hard to analyze the code by applying virtualization to code section. Protected code by common used virtualization obfuscation technique has become known that it doesn't have restored point and also it is hard to analyze. However, it is abused to protect malware recen...

Keyword

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 본 논문에서는 가상화 난독화 기법이 적용된 프로그램의 구조와 동작 방식을 파악하기 위하여 가상화 구조에 대해서 알아보고 가상화 난독화 기법을 적용한 테스트 파일의 분석 결과를 제시한다. 또한 핸들러 코드가 실행되는 순서를 정적으로 계산할 수 있게 한다.
  • 본 연구는 분석 대상 파일이 가지고 있는 모든 가상화 요소의 위치를 정확히 파악해내고 실행되는 모든 핸들러 코드를 실행 순서대로 로그 형태로 출력한 결과를 제시한다.
  • ∙ 일반적으로 핸들러 코드 영역을 찾는데 성공하더라도 코드 자체가 jmp문에 의해 산재되어 있기 때문에 디버거로 분석할 경우 엄청난 집중력이 요구된다. 본 논문에서는 산재된 핸들러 코드를 연속된 형태의 로그로 출력하여 악성코드 분석가가 분석하기 용이하게 하였다.
  • 본 논문에서는 위와 같은 어려움을 해결하기 위해 가상화 요소의 위치와 코드를 자동으로 추출하고 실제로 실행되는 핸들러 코드를 로그로 남기는 가상화 난독화 분석 도구를 구현하였다. 분석 도구의 구현을 위해 동적 에뮬레이터인 QEMU를 사용하였다.
  • 본 논문에서는 가상화 난독화 기법이 적용된 프로그램에 Equation Reasoning System 기법을 적용하여 가상화 구조를 밝혀내고 이를 분석한 결과를 제시하였으며 가상화 구조를 자동으로 추출할 수 있는 도구를 구현하였다. 본 논문에서 구현한 도구는 가상화 난독화로 보호되어 있는 악성코드를 분석할 때 필요한 정보를 추출하며, 분석가가 직접 복잡한 언패킹 루틴을 거치지 않아도 분석을 시작할 수 있다.

가설 설정

  • Themida2 섹션은 그 크기가 작고 또한 섹션의 대부분이 예외 코드로 구성되어 있기 때문에, Themida2 섹션에는 가상화 난독화에 필요한 가상화 요소(가상화 코드, 디스패치 루프, 핸들러 테이블, 핸들러 코드)가 존재하지 않음을 알 수 있다. 따라서 가상화 요소는 섹션의 크기가 가장 큰 Themida1 섹션에 존재할 것이라고 가정하고 분석하였다. 최초의 Themida1 섹션에는 패킹 기법이 적용되어 있었으며, Themida1 섹션 내에 존재하는 여러 개의 언패킹 루틴이 실행된 후에 분석할 수 있는 형태가 되었다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
가상화 난독화 기법은 무엇인가? 가상화 난독화 기법은 보호하고자 하는 코드영역에 가상화 기법을 적용함으로써 코드의 분석을 어렵게 하는 기법이다. 상용 가상화 난독화 도구로 보호된 프로그램은 가상화된 코드가 원본코드로 복원되는 시점이 존재하지 않고 다양한 난독화 기법으로 가상화 영역이 보호되어 있어 분석하기 어렵기로 잘 알려져 있다.
Equation Reasoning System 기법의 특징은 무엇인가? Equation Reasoning System 기법은 사용하는 각 레지스터에 인덱싱을 하여 데이터 흐름을 파악하기 쉽게 하며, 해당 인스트럭션이 메모리에 접근하는 경우에는 ValueAt(Memory Address)의 형식을 사용하여 등식으로 표현한다. 이 기법은 인덱스가 높은 인스트럭션에서부터 값을 대입해나가면 여러 줄로 표현되는 어셈블리어도 한 줄의 등식으로 표현이 가능하다는 특징이 있다.
상용 소프트웨어 보호도구를 이용 사 장점은 무엇인가? 상용 소프트웨어 보호도구를 이용하면 누구라도 프로그램에 가상화 난독화 기법을 적용할 수 있기 때문에 보호 대상 프로그램을 쉽게 보호할 수 있는 장점이 있다. 그러나 이러한 도구가 악성코드 보호에 악용되면서 문제가 되고 있다.
질의응답 정보가 도움이 되었나요?

참고문헌 (11)

  1. C. Collberg, C. Thomborson, and D. Low, "A taxonomy of obfuscating transformations," Department of Computer Science, The University of Auckland, New Zealand, July. 1997. 

  2. F. Bellard, "QEMU, a fast and portable dynamic translator," In USENIX Annual Technical Conference. USENIX, pp. 41-46, April 2005. 

  3. K. Coogan, G. Lu, and S.K. Debray. "Deobfuscation of virtualization obfuscated software: a semantics-based approach," ACM Conference on Computer and Communications Security. ACM, pp. 275-284, Oct. 2011. 

  4. K. Coogan, G. Lu, and S.K. Debray. "Equational reasoning on x86 assembly code," Source Code Analysis and Manipulation (SCAM), 2011 11th IEEE International Working Conference on. IEEE, pp. 75-84, Sep. 2011. 

  5. M. Sharif, A. Lanzi, J. Giffin, and W. Lee, "Automatic reverse engineering of malware emulators," In Proc. of the 30th IEEE Symposium on Security and Privacy, pp. 94-109, May 2009. 

  6. R. Rolles, "Unpacking virtualization obfuscators," In Proc. 3rd USENIX Workshop on Offensive Technologies (WOOT '09), pp. 1-1, Aug. 2009. 

  7. M.V. Yason, "The Art of Unpacking," Blackhat USA 2007. 

  8. Oreans Technologies. Code virtualizer: Total obfuscation against reverse engineering, Dec. 2008. http://www.oreans.com/codevirtualizer.php. 

  9. Oreans Technologies. Themida: Advanced Windows Software Protection System, Jul. 2012. http://www.oreans.com/themida.php. 

  10. PEiD. 2009. http://www.peid.info, 

  11. VMProtect Software. VMProtect software protection, 2008. http://vmpsoft.com/. 

저자의 다른 논문 :

LOADING...

활용도 분석정보

상세보기
다운로드
내보내기

활용도 Top5 논문

해당 논문의 주제분야에서 활용도가 높은 상위 5개 콘텐츠를 보여줍니다.
더보기 버튼을 클릭하시면 더 많은 관련자료를 살펴볼 수 있습니다.

관련 콘텐츠

오픈액세스(OA) 유형

FREE

Free Access. 출판사/학술단체 등이 허락한 무료 공개 사이트를 통해 자유로운 이용이 가능한 논문

유발과제정보 저작권 관리 안내
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로