엑셀 4.0 매크로 악성코드 실행 예방 가이드!

엑셀 4.0 매크로(XLM) 악성코드는 마이크로소프트 오피스 엑셀 프로그램의 ‘매크로 시트(Macro Sheet)’ 기능을 이용​해 공격을 펼치는 악성코드이다. 매크로 시트(Macro Sheet)를 구성하는 각 셀이 실행 가능한 함수를 포함하고 있는 것이 가장 큰 특징인데, 최근에는 오피스 문서를 이용한 악성코드 유포 방식에서 가장 활발히 사용되고 있다. ​

이번 글에서는 VBA(Visual Basic Application) 매크로 악성코드의 뒤를 이어 새로운 문서 악성코드로 자리 잡은 '엑셀 4.0 매크로 악성코드'의 실행을 예방하기 위한 가이드를 소개한다.​

 

엑셀 4.0 매크로 악성코드의 또다른 특징은 안티바이러스 제품의 탐지가 VBA 방식에 비해 상당히 어렵다는 점이다. 그 이유는 매크로 코드가 저장되는 파일 바이너리의 특징과 코드 난독화 등 때문이다.

 


[그림 1] 매크로 시트 셀 안에 포함되어 있는 실행 가능한 함수

이에 대응하기 위해 마이크로소프트는 2021년에 [그림 2]와 같이 자사 블로그를 통해 '엑셀 메크로(XLM) 보안 강화 방안'에 대해 발표했다. 이는 악성 파일을 탐지하고 실행 단계에서 차단하는 것은 아니지만, 근본적인 실행 방지 대책이 될 수 있기에 주목할만하다.

 


[그림 2] 마이크로소프트 XLM 보안 강화 방안에 관한 블로그 게시글

마이크로소프트는 자사 테크 커뮤니티 블로그를 통해 안티멀웨어 스캔 인터페이스(Anti-malware Scan Interface; 이하 AMSI) 기능을 확장해 오피스 365 제품에서도 엑셀 4.0 매크로 실행을 스캔할 수 있도록 지원하겠다고 발표했다. 이를 통해 안랩 V3를 포함한 AMSI를 활용하는 안티멀웨어 제품에서는 엑셀 4.0 매크로 악성코드 실행을 탐지할 수 있게 되었다.

아래는 실제 엑셀 4.0 매크로 악성코드 실행을 V3 제품에서 스캔한 결과이다. 화면처럼 난독화 되어 있는 매크로 코드가 실행되더라도, Windows API를 이용하여 파일을 다운로드하는 행위가 그대로 기록된다. 이는 Build 2104 이상​의 마이크로소프트 오피스 365 엑셀 제품에 새로 추가된 기능이다. ​

 


[그림 3] V3가 엑셀 4.0 악성코드 실행을 스캔한 결과

다음 설정 위치에 새로운 사용자 선택 옵션이 추가되었는데, 체크 박스를 해제하면 매크로 설정을 허용하더라도 VBA 매크로만 실행되고 엑셀 4.0 매크로는 실행되지 않는다.

현재 대부분의 사용자가 매크로 작성 및 실행 시 VBA를 이용하고 있고, 엑셀 4.0 매크로는 악성코드에서 주로 쓰인다는 점을 고려하면 체크 박스를 ‘해제’하는 것을 권고한다. 회사나 조직 규모에서 오피스 365 제품을 이용하는 사용자라면 관리자 정책에 따라서도 이 설정을 일괄 지정할 수 있다.

 


[그림 4] 매크로 설정에서 '​ VBA 매크로 실행 시 엑셀 4.0 매크로 실행 허용'하는 체크 박스 해제

체크 박스 해제를 위한 경로는 다음과 같다.
• 경로: 파일 > 옵션 > 보안 센터 > 보안 센터 설정 > 매크로 설정 > 'VBA 매크로를 실행 시 엑셀 4.0 매크로 실행 허용' 체크 박스 해제

참고로 이 설정은 2021년 말까지 오피스 365 엑셀 제품 사용자는 기본적으로 비활성화되었다. 본인 시스템 환경을 확인해 보고 ‘VBA 매크로를 실행 시 Excel 4.0 매크로 실행 허용’ 옵션이 비활성화되어 있는지 확인해보기를 바란다.

 

출처 : AhnLab