최근 몇 년간 새로운 악성코드(malware)와 함께 매크로(macro) 악성코드를 이용한 공격이 발생되고 있는 가운데, 꾸준히 지능화 및 고도화 되고 있다. 최근 이슈가 되는 사건을 통해 사회공학 기법을 이용한 표적 공격이 발생하고 있다. 지능화된 수법을 통해 표적 공격이 이루어짐에 따라 사용자는 면밀한 주의를 기울이지 않으면 공격자의 표적이 되기 쉽다. 개인뿐만 아니라 기업을 대상으로 매크로 악성코드 감염 사례도 빈번히 발생하고 있어 기업은 물론 국가적인 손해를 입을 수 있다.
물론 개인, 기업 또는 정부기관에서 보안업체를 통해 분석을 의뢰하거나 백신 이용 등과 같은 다양한 탐지 툴을 사용 하지만 사용자 부주의로 하여금 침해사고가 빈번히 이루어지고 있다.
본 논문에서는 난독화된 매크로 악성코드에 대해서 파악하고, 악성 매크로를 포함한 비정상 문서에 대해 탐지할 수 있도록 절차적 난독화 해제를 통해 정적 분석을 시도하여 난독화된 매크로 악성코드를 포함하는 의심 파일을 분석 후 탐지할 수 있는 모델을 제안한다. 절차적 난독화 해제 방안으로는 알려진 API 함수를 통한 코드 교체와 함수 내부 변수 및 전역 변수 정리, XOR, base64 encoding, 문자열 분리 등을 이용한 부분적으로 난독화되어 있는 변수 값 정리 등을 통하여 단계적으로 변환 후 코드를 분석하기 쉽도록 구분 및 변환한다. 코드 구분 및 변환 후 의심되는 카테고리별로 특정 조건에 만족하게 되면 악성 의심코드를 포함하는 비정상 문서를 탐지할 수 있도록 한다. 기존 업체를 통한 의존적인 탐지 방식에서 벗어나 외부 이메일 등을 통해 수신된 의심스러운 문서를 사용자에게 직접 경고를 해줄 수 있는 모델을 구현하여 사용자가 직접 악성여부를 파악할 수 있으며 정형화된 탐지 방법이 아닌 조금 더 유연한 탐지 방식을 통해 난독화된 매크로 악성코드의 효과적인 탐지 방안을 제안하고자 한다.