엑셀 4.0 매크로 (XLM) 악성코드는 마이크로소프트 오피스 엑셀 문서 파일을 이용한 공격 방식으로, VBA (Visual Basic Application)을 뒤이어 새로운 문서 악성코드 흐름으로 자리 잡았다. 엑셀 4.0 매크로 악성코드는 엑셀 프로그램의 ‘매크로 시트’ 기능을 이용한다. 시트를 구성하는 각 셀이 실행 가능한 함수 흐름으로 되어 있는 것이 특징이다.

엑셀 4.0 매크로 악성코드는 최근 오피스 문서를 이용한 악성코드 유포 방식에서 가장 활발하게 쓰이고 있다. 매크로 코드가 저장되는 파일 바이너리의 특징과 코드 난독화 등을 이유로 안티바이러스 제품의 탐지가 VBA 방식에 비해 상당히 어렵다는 점을 악성코드 제작자가 노리는 것이다. 이 때문에 마이크로소프트는 2021년에 다음과 같은 보안성 강화 방안을 발표하였다. 이는 악성 파일을 탐지하고 실행 단계에서 차단하는 것이 아닌, 마이크로소프트에서 제공하는 근본적인 실행 방지 대책이 될 수 있다는 점에서 의미가 있다.
XLM + AMSI: New runtime defense against Excel 4.0 macro malware
“We have recently expanded the integration of Antimalware Scan Interface (AMSI) with Office 365 to include the runtime scanning of Excel 4.0 (XLM) macros, to help antivirus solutions tackle the increase in attacks that use malicious XLM macros.”
2021년 3월 3일, 마이크로소프트 시큐리티 공식 블로그[1]
“Runtime inspection of XLM macros is now available in Microsoft Excel and can be used by antivirus solutions like Microsoft Defender Antivirus that are registered as an AMSI provider on the device.”

마이크로소프트는 Antimalware Scan Interface (AMSI) 기능을 확장하여 오피스 365 제품에서 엑셀 4.0 매크로 실행을 스캔할 수 있도록 하겠다고 발표하였다. 이를 통해 안랩 V3를 포함하여 AMSI를 활용하는 안티바이러스 제품 등에서 엑셀 4.0 매크로 악성코드 실행을 탐지할 수 있다. 아래는 실제 엑셀 4.0 매크로 악성코드 실행을 V3 제품에서 스캔 한 결과이다. 화면처럼 난독화 되어 있는 매크로 코드가 실행되더라도, Windows API를 이용하여 파일을 다운로드하는 행위가 그대로 기록된다.


Restrict usage of Excel 4.0 (XLM) macros with new macro settings control
“A new Excel Trust Center settings option to further restrict the usage of Excel 4.0 (XLM) macros is now generally available.”
2021년 7월 22일, 마이크로소프트 엑셀 공식 블로그[2]
“Found in the Trust Center Macro Settings, this new checkbox setting, “Enable Excel 4.0 macros when VBA macros are enabled”, allows users to individually configure the behavior of XLM macros without impacting VBA macros.”

마이크로소프트 오피스 365 엑셀 제품 (Build 2104 이상)에 새로 추가된 기능이다. 다음 설정 위치에 새로운 사용자 선택 옵션이 추가되었는데, 체크 박스를 해제하면 매크로 설정을 허용하더라도 VBA 매크로만 실행되고 Excel 4.0 매크로는 실행되지 않는다. 현재 대부분의 사용자가 매크로 작성 및 실행 시 VBA를 이용하고 있고, Excel 4.0 매크로는 악성코드에서 주로 쓰인다는 점을 고려하면 체크 박스를 ‘해제’하는 것을 권고한다. 회사나 조직 규모에서 오피스 365 제품을 이용하는 사용자라면 관리자 정책에 따라서도 이 설정을 일괄 지정할 수 있다.
- 파일 > 옵션 > 보안 센터 > 보안 센터 설정 > 매크로 설정 > VBA 매크로를 사용하도록 설정하면 Excel 4.0 매크로 사용
참고로 이 설정은 2021년 말까지 오피스 365 엑셀 제품 사용자는 기본적으로 비활성화되었다.[3] 본인 시스템 환경을 확인해 보고 ‘VBA 매크로를 사용하도록 설정하면 Excel 4.0 매크로 사용’ 옵션이 비활성화되어 있는지 확인해 볼 필요가 있다.

[1] https://www.microsoft.com/security/blog/2021/03/03/xlm-amsi-new-runtime-defense-against-excel-4-0-macro-malware
[2] https://techcommunity.microsoft.com/t5/excel-blog/restrict-usage-of-excel-4-0-xlm-macros-with-new-macro-settings/ba-p/2528450
[3] https://twitter.com/GelosSnake/status/1446192775087722497/photo/1
연관 IOC 및 관련 상세 분석 정보는 안랩의 차세대 위협 인텔리전스 플랫폼 ‘AhnLab TIP’ 구독 서비스를 통해 확인 가능하다.
Categories:조치 가이드
[…] MS Office 제품군의 파일을 악성코드 유포 매개체로 사용하는 비중이 크게 감소한 것은 2021년 초/중순부터 공지된 Microsoft의 Excel 매크로 사용설정이 기본적으로 비활성화 된 조치로부터 기인하여, AntiVirus 제품의 탐지 회피를 위한 공격자의 다양한 시도가 엿보이는 부분이다.[7][8] […]