오퍼레이션 아라비안 나이트 공격그룹 글로벌 활동 확대
안녕하세요? 이스트시큐리티 시큐리티대응센터(ESRC)입니다.
2017년 동안 한국의 특정 가상화폐 거래소를 대상으로 활동했던 이른바 정부 차원의 후원을 받는 것으로 추정되는 공격자(state-sponsored actor)가 2018년에는 글로벌을 상대로 공격을 시도하는 정황이 다수 포착되고 있습니다.
한국에서는 HWP 문서파일 취약점을 악용한 스피어피싱이 주로 활용된 반면, 해외는 DOC 문서 등의 매크로 기능을 활용하는 특징이 있고, 내부 코드를 숨기는데 나름의 노력을 기울이고 있다는 것이 특징입니다.
이들의 사이버 위협 활동은 지속적으로 진행되고 있는데, 얼마 전 알약 블로그를 통해 포스팅됐던 [3.20 공격 조직의 최신 오퍼레이션 '코인 매니저 (Coin Manager)'] 내용의 연장선이라 할 수도 있습니다.
▶ 문서파일 취약점을 활용한 파일리스(Fileless) 악성코드의 스텔스 위협
▶ 3.20 공격 조직의 최신 오퍼레이션 '코인 매니저 (Coin Manager)'
▶ 문서파일 취약점 공격과 한국 가상화폐 거래자 대상 공격간의 연관성 분석
▶ [주의] 가상화폐 거래 관계자를 대상으로 한 스피어피싱 지속
먼저 2018년 01월 24일 베트남에서 발견된 DOC 기반의 악성파일은 매크로 기능을 이용해 추가 악성파일을 설치하는 종류입니다.
해당 문서가 실행되면 아래와 같이 매크로 실행을 유도하는 영문 내용이 보여집니다.
[그림 1] 악성 문서 실행된 화면
만약 사용자가 매크로를 실행할 경우 아래와 같이 가상화폐와 블록체인 기술 등이 언급된 영문 직무기술서 내용이 보여지게 됩니다.
이것으로 보아 공격 대상 분야는 가상화폐 거래(소) 관계자 쪽으로 추정해 볼 수 있습니다.
[그림 2] 매크로가 실행된 후 보여지는 정상적인 영문 직무기술서 화면
그러나 해당 DOC 문서파일은 한국어 기반으로 작성된 것을 알 수 있습니다.
Codepage: 949 (https://en.wikipedia.org/wiki/Unified_Hangul_Code)
Author: HP
Last author: Windows User
Application name: Microsoft Office Word
Editing : 00:01:00 01.01
Creation : 월 9 11 09:20:00 2017
Last save : 수 1 24 00:21:00 2018
내부에 포함된 매크로 코드를 살펴보면 스트링 데이터로 EXE 악성파일이 포함되어 있고, 특정코드로 XOR 연산을 통해 복호화 후 실행되어집니다.
[그림 3] DOC 문서에 포함되어 있는 매크로 코드 화면 일부
참고로 이스트시큐리티 대응센터(ESRC)에서는 이와 유사한 위협을 2017년 5월 위협 인텔리전스 보고서인 오퍼레이션 '아라비안 나이트(Arabian Night)' 이름으로 작성한 바 있습니다. (기업 서비스 전용 보고서)
해당 분석 보고서의 내용처럼 공격자들은 과거 수년 전부터 한국을 대상으로 지속적인 사이버 위협 활동을 수행하고 있고, 2014년 미국 소니픽처스 공격 등에도 유사한 코드가 사용된 바 있습니다.
그런 가운데 영문 직무기술서(Job Description) 내용으로 해외에서 다수의 공격 사례가 발견되고 있으며, 2018년 1월 베트남에서 악성 DOC 문서가 추가 발견된 것입니다.
이 공격에 사용된 매크로에서는 '/haobao' 인자값을 통해 EXE 파일이 실행되도록 제작이 된 특징이 있습니다.
[그림 4] 특정 파라미터 값으로 실행되는 코드 화면
해당 DOC 파일은 변종이 다수 존재하며 그 중에는 'pumpingcore' 파라미터를 쓰는 경우도 존재합니다.
[그림 5] pumpingcore 파라미터를 사용하는 변종 화면
'hao bao' 표현은 베트남어로 '돈주머니' 라는 의미도 가지고 있습니다.
[그림 6] hao bao 베트남어 사전 화면
매크로가 작동되면 임시폴더(Temp) 경로에 'lsm.exe' 이름의 악성 파일이 생성되고 실행되는데, 이 파일은 2018년 01월 23일 제작되었습니다.
이 악성 파일은 메모리 맵핑 과정을 통해 외부의 명령제어 서버와 통신을 수행하게 되는데, 명령제어 서버는 한국의 특정 호스트(worker.co.kr/210.122.7.129)입니다.
[그림 7] 한국의 호스트로 접속을 시도하는 화면
그런데 이 악성 파일의 내부 코드는 2017년 8월 한국의 특정 가상 화폐 거래소를 상대로 공격이 수행됐던 HWP 취약점 활용 공격에서도 목격이 된바 있습니다.
이 공격에는 정교한 한국어를 포함하며, 마치 수사기관에서 마약류 비트코인 수익자 추정 지갑주소 추적을 위한 협조의뢰 메일로 사칭하고 있지만, 모두 임의 조작된 내용의 스피어 피싱 공격입니다.
[그림 8] 마약 수사 협조로 사칭한 스피어 피싱 메일 화면
해당 공격에 사용된 HWP 문서 파일에는 악성 포스트 스크립트(Post Script) 데이터가 포함되어 있습니다. 해당 포스트 스크립트 파일은 다음과 같습니다.
[그림 9] 악성 HWP 문서 내부에 포함되어 있는 악성 포스트 스크립트
특히, 코드 내부에는 중국식 영문 표기가 다수 포함되어 있으며, 공격자가 중국어에도 관심이 많다는 것을 알 수 있습니다.
[그림 10] 포스트 스크립트 내부에 포함된 중국식 영문 표기 화면
XOR 연산 등으로 암호화된 내부 코드를 복호화하면 32비트와 64비트용 악성 파일이 존재합니다. 또한, 32비트용 악성파일은 내부 인코딩 함수를 통해 한번 더 내부 코드를 숨기고 있습니다.
32비트용 악성 파일은 내부 분석을 어렵게 하도록 한번 더 암호화가 되어 있습니다. 해당 코드를 복호화하면 다음과 같이 내부의 'Core.dll' 파일을 확인할 수 있습니다.
[그림 11] 내부에 숨겨져 있는 'Core.dll' 파일 화면
2017년 08월 한국의 가상화폐 거래소를 상대로 HWP 취약점으로 공격했던 악성 코드와 2018년 01월 베트남에서 DOC 매크로 기법으로 발견된 악성 코드를 비교해 보면 아래와 같습니다.
명령제어 서버(C2) 주소만 다르고 내부 코드가 동일하다는 것을 알 수 있으며, 두 명령제어 서버 모두 한국의 웹 사이트라는 점도 공통점입니다.
[그림 12] HWP 문서취약점과 DOC 매크로 기법을 이용해 설치된 악성 코드 비교 화면
여기서 비교한 영문식 직무기술서는 가장 최근 발견된 것이지만, 다양한 국가에서 변종들이 다수 발견된 바 있습니다.
또한, 내부에 사용된 Export 함수명도 공통적으로 'Core.dll' 이름을 사용하고 있습니다.
[그림 13] 악성 파일이 사용하는 Export 함수 테이블명 Core.dll 화면
참고로 2013년 08월 제작된 이른바 Kimsuky 계열의 악성 파일이 우연하게도 'core.dll' 파일명으로 발견된 바 있고, 2017년 06 제작된 유사 시리즈의 변종에서도 'core.dll' 이름이 사용된 바 있습니다.
[그림 14] 2013년 제작된 Kimsuky 계열 악성 코드 화면
이와 같이 국가 차원의 지원을 받는 것으로 추정되는 공격자(state-sponsored actor)의 활동이 지금도 매우 활발하다는 점을 명심해야 합니다.
공개되지 않은 다양한 보안위협들이 지금도 지속적으로 진행되고 있으므로, 개인 및 기업 보안 강화에 항상 주의를 기울여야 할 것입니다.