보안정보
전문화된 보안 관련 자료, 보안 트렌드를 엿볼 수 있는
차세대 통합보안관리 기업 이글루코퍼레이션 보안정보입니다.
북미정상회담을 겨냥한 인보이스 위장 악성메일 대량 유포
2019.04.03
6,205
1. 개요
지난 2월 27일부터 이틀간 베트남 하노이에서 북미정상회담이 개최되었다. 과거 사례를 보면 이런 큰 사회적 이슈를 앞두고 사이버 범죄자들은 사이버 공격을 감행하는 경우가 많았다. 이들은 정치적 목적이나 금전적 목적을 위해 다양한 방법으로 사이버공격을 시도한다.
북미정상회담을 2주 앞두고 있던 지난 2월 13일부터 국내 공공기관 및 민간을 대상으로 대량 유포된 인보이스 위장 메일은 MS Office 계열의 문서 첨부파일을 포함하고 있었다. 첨부파일을 열람할 경우 악성코드 유포지로부터 악성코드가 다운로드 된 후 지속적으로 정보 탈취가 발생한다. 사이버 범죄자들은 북미정상회담 전에 각종 정보를 수집하기 위해 국내 공공기관과 민간을 대상으로 해킹을 시도한 것으로 판단된다.
2. 기본 정보
1) 악성메일 정보
아래 [표 1]은 북미정상회담을 앞두고 접수되었던 인보이스 위장 악성메일에 대한 정보를 나타낸다.
CODE |
악성메일 발신자 |
악성메일 제목 |
첨부파일 명 |
해시(MD5) |
URL 정보 |
INVOCE-01 |
조효상 |
인보이스 12-2-2019 |
인보이스 12-2-2019.xls |
da0dc5e26a4dd2f85c1c56f65999f79b |
hxxp://update365office[.]com |
hxxp://185.17.123.201/dat3.omg | |||||
169.239.128.148 | |||||
INVOCE-02 |
조효상 |
요청한 문서 |
temp_15453003 99719-0746835 213.Doc |
93e5af41b2994e60fe1655994dcc1fc3 |
hxxp://185.17.120.235/select |
hxxp://185.17.120.235/dat1.omg | |||||
185.99.133.2 | |||||
INVOCE-03 |
이진희 |
인보이스 |
A[숫자6자리].wiz |
29edf07b254e8b67d25d7f34b8fcda6a |
hxxp://91.200.41.236/vsupdate |
hxxp://91.200.41.236/s.dat | |||||
INVOCE-04 |
김희경 |
자료요청 |
의뢰_022718_001.xls |
5a14f11eaf60df42536de577d00e0da2 |
hxxp://91.200.41.236/vsupdate/qksw= |
hxxp://91.200.41.236/s.dat | |||||
hxxp://91.200.41.236/s.dat | |||||
hxxp://91.200.41.236/vsupdate | |||||
hxxp://91.200.41.236/vsupdate |
[표 1] 악성메일 정보
정보공유시스템을 확인한 결과 위 [표 1]에서 나타난 악성메일의 첨부파일들은 해시가 다르지만 모두 동일한 악성행위 프로세스를 가진다. 왜 공격자들은 동일한 악성코드를 다른 발신계정이나 해시 값, 또는 다른 URL을 통해 유포하는 것일까? 이에 대한 물음은 다음과 같은 답으로 추측해 볼 수 있다.
① 사회공학적 관점 : 신뢰할 만한 발신자(임직원 등) 또는 기관을 도용함으로써 첨부파일 열람 및 실행 유도
② 엔드포인트 관점 : 해시 값 변경을 통한 안티바이러스(이하 AV) 제품 탐지 우회 목적
③ 네트워크 관점 : IP/URL 변경을 통한 방화벽/IPS 보안장비 차단 우회 목적
2) 악성코드 정보
본 보고서에서는 [표 1]에 나타난 INVOICE-01, INVOICE-02 샘플에 대해서만 분석을 수행하였다.
아래 [그림 1], [그림 2]는 각 샘플에 대한 전체 악성행위 구성도이다.
[그림 1] INVOICE-01 악성코드 구성도
[그림 2] INVOICE-02 악성코드 구성도
3) 침해지표 정보
아래 [표 2]는 INVOICE-01, INVOICE-02 샘플 분석을 통해 식별된 침해지표 정보를 나타낸다.
CODE |
순 번 |
파일명 |
파일 형식 |
MD5 |
IP 주소 |
URL 주소 |
INVOICE-01 |
1 |
인보이스 12-2-2019.xls |
MS Office Excel |
DA0DC5E26A4DD2F8 5C1C56F65999F79B |
213.183.51.122 |
hxxp://update365office[.]com |
2 |
MSIxxxx.tmp |
Win32 EXE |
44E085912972F41328 E51771C27C14F7 |
185.17.123.201 |
hxxp://185.17.123.201/dat3.omg | |
3 |
wsus.exe |
Win32 EXE |
25D48C3A71A5F8777A D4DB67C2A4F649 |
169.239.128.148 |
- | |
INVOICE-02 |
1 |
temp_1545300399719-0746835213.doc |
MS Office Word |
93E5AF41B2994E60FE 1655994DCC1FC3 |
185.17.120.235 |
hxxp://185.17.120.235/select |
2 |
MSIxxxx.tmp |
Win32 EXE |
023E41B9897D446B9537 F2966B5F53CB |
185.17.120.235 |
hxxp://185.17.120.235/dat1.omg | |
3 |
wsus.exe |
Win32 EXE |
30B4E109CAAEBAB50007 872085E8D208 |
185.99.133.2 |
- |
[표 2] 침해지표 정보
3. INVOICE-01 샘플 분석
1) 첨부파일 “인보이스 12-2-2019.xls” 분석
코드번호 INVOICE-01 샘플의 첨부파일 “인보이스 12-2-2019.xls”을 열람할 경우 아래 [그림 3-3]과 같은 화면을 볼 수 있다. 편집 사용 클릭 후 콘텐츠 사용을 허용할 경우, 숨겨진 시트에 작성된 함수에 의해 추가 악성코드를 다운로드 한 후 실행한다.
[그림 3] 콘텐츠 사용
[그림 4] 추가 악성코드 다운로드 및 실행
2) 추가 악성코드 “MSIxxxx.tmp” 분석
첫 번째 악성코드 유포지로부터 다운로드 된 MSI 설치 패키지인 agp.msi 파일은 [그림 3-5]와 같이 그 내부에서 MZ 시그니처를 가지는 PE 포맷의 파일을 포함하고 있다.
[그림 5] agp.msi 파일 내 MZ 시그니처
agp.msi 설치 패키지가 실행되면서 내부에 존재하는 PE 포맷의 추가 악성코드 MSIxxxx.tmp 파일이 C:WindowsInstaller 디렉터리에 생성되고, MSIxxxx.tmp 프로세스가 실행되면서 해당 파일은 삭제된다.
[그림 6] MSIxxxx.tmp 파일 생성/실행/삭제
추가 악성코드 MSIxxxx.tmp 프로세스는 먼저 시스템에서 구동 중인 특정 AV 엔진을 검사한다. 일치하는 AV 엔진 프로세스가 존재할 경우 강제 종료를 시도한다.
[그림 7] 구동 중인 AV 엔진 검사
검사 대상 AV 엔진 이름 |
QHACTIVEDEFENSE.EXE, QHSAFETRAY.EXE, QHWATCHDOG.EXE, CMDAGENT.EXE, CIS.EXE, V3LITE.EXE, SPIDERAGENT.EXE, DWENGINE.EXE, DWARKDAEMON.EXE, BULLGUARDTRAY.EXE, BDAGENT.EXE, BULLGUARD.EXE, BDSS.EXE, BULLGUARD.EXE, V3MAIN.EXE, V3SP.EXE, EGUI.EXE, EKRN.EXE |
[표 3] 검사 대상 AV 엔진 이름
최종 악성코드인 wsus.exe 프로세스의 중복 실행 방지를 위해 해당 프로세스가 동작 중이라면 종료하고, 최종 악성코드 wsus.exe 관련 파일 및 서비스를 시스템에서 모두 제거한다.
[그림 8] 최종 악성코드 중복 실행 방지
두 번째 악성코드 유포지로부터 파일을 다운로드 받을 디렉터리를 생성한다. 해당 디렉터리 이름은 정상 디렉터리인 Micrsoft Help와 유사한 Microsofts Help라는 이름을 사용하고 있다.
[그림 9] 파일 다운로드용 디렉터리 생성
두 번째 악성코드 유포지(hxxp://185.17.123.201/dat3.omg)로 접속하여 추가 파일을 다운로드 한다.
[그림 10] 파일 다운로드
두 번째 악성코드 유포지로부터 다운로드 되는 파일은 C:ProgramDataMicrosofts Help 디렉터리에 template_41e330.DATAHASH라는 파일 이름으로 생성된다.
[그림 11] 다운로드 된 파일
디코딩 루틴은 1바이트 XOR 연산을 통해 디코딩을 수행한다. 디코딩 후 C:ProgramDataMicrosofts Help 디렉터리에 32-bit PE 포맷 실행파일(wsus.exe)이 생성된다.
[그림 12] 1바이트 XOR 연산 디코딩 루틴
[그림 13] 디코딩 (전)
[그림 14] 디코딩 (후)
[그림 15] 추가 악성코드 wsus.exe 파일
MSIxxxx.tmp 악성코드가 관리자 계정(Administrator)으로 실행된 경우에는 wsus.exe 악성코드를 foundation이라는 서비스 이름으로 등록되어 매 부팅마다 자동 실행되도록 한다. 서비스로 등록된 wsus.exe 프로세스는 로컬시스템 계정 권한으로 동작되기 때문에 악성행위의 파급력이 더 커질 것으로 판단된다.
[그림 16] foundation 서비스 등록
MSIxxxx.tmp 악성코드가 일반 사용자 계정으로 실행된 경우에는 매 부팅마다 wsus.exe 악성코드가 자동 실행되도록 레지스트리에 등록된다.
[그림 17] 자동 실행 등록
MSIxxxx.tmp 악성코드는 자기 자신 파일을 삭제하며 종료된다.
[그림 18] MSIxxxx.tmp 파일 삭제
3) 추가 악성코드 “wsus.exe” 분석
wsus.exe 악성코드는 MSIxxxx.tmp 악성코드에 의해 생성 및 자동 실행 등록되므로 시스템의 매 부팅마다 자동으로 실행된다. MSIxxxx.tmp 악성코드와 마찬가지로 가장 먼저 구동 중인 AV 엔진을 검사한 후 일치할 경우 강제 종료한다. 검사 대상 AV 엔진은 아래 [표 3-4]와 같다.
검사 대상 AV 엔진 이름 |
QHACTIVESDEFENSE.EXE, QHSAFETRAY.EXE, QHWATCHDOG.EXE, CMDAGENT.EXE, CIS.EXE, V3LITE.EXE, V3MAIN.EXE, V3SP.EXE, SPIDERAGENT.EXE, DWENGINE.EXE, DWARKDAEMON.EXE |
[표 4] 검사 대상 AV 엔진 이름
wsus.exe 악성코드는 중복 실행 방지를 위해 -*(^%#@(*&%R*(#라는 이름의 뮤텍스를 생성한다. 해당 뮤텍스가 이미 존재하는 경우 나중에 실행된 wsus.exe 프로세스가 종료된다.
[그림 19] 중복 실행 방지
wsus.exe 프로세스를 실행한 계정의 SID를 이용해 로컬시스템 계정(S-1-5-18)으로 동작하고 있는지 검사한다. 일반적으로 서비스 프로그램은 로컬시스템 계정으로 동작한다는 사실에 착안한 것으로 판단된다.
[그림 20] 계정 SID 검사
wsus.exe 악성코드는 시스템 정보를 탈취한 후 C2 서버로 전송한다.
[그림 21] C2 서버 전송
탈취되는 시스템 정보는 다음과 같다.
① id : 각 시스템 별 부여되는 고유번호
② os : Windows 운영체제 버전 / 서비스 팩 / CPU 비트 수 정보
③ priv : 사용자 계정 권한
④ cred : 도메인 이름컴퓨터 이름
⑤ pcname : 컴퓨터 이름
⑥ avname : 구동 중인 AV 엔진 관련 정보
⑦ build_time : wsus.exe 빌드 시간
⑧ card : 스마트 카드 가용 여부
그 외 정적 분석을 통해 예측되는 악성행위 모듈 목록은 다음과 같다.
[그림 22] 악성행위 모듈
4. INVOICE-02 샘플 분석
1) 첨부파일 “temp_1545300399719-0746835213.doc” 분석
코드번호 INVOICE-02 샘플의 첨부파일 “temp_1545300399719-0746835213.doc”을 열람할 경우 아래 [그림 3-24]와 같은 화면을 볼 수 있다. 콘텐츠 사용을 허용할 경우, 내포된 악성 매크로가 동작하여 추가 악성코드를 다운로드 한 후 실행한다. INVOICE-01 샘플은 엑셀(Excel)의 정상적인 함수 기능인 EXEC() 함수를 이용해 악성행위를 수행했다면, INVOICE-02 샘플은 MS Office 문서의 공통 기능인 매크로를 이용해 악성행위를 수행한다는 차이점이 있다.
[그림 23] INVOICE-01 (Excel 문서)
[그림 24] INVOICE-02 (Word 문서)
[그림 25] INVOICE-01 (함수 기능)
[그림 26] INVOICE-02 (매크로 기능)
2) 추가 악성코드 “MSIxxxx.tmp” 분석
MSIxxxx.tmp 악성코드의 경우 INVOICE-01 샘플과 INVOICE-02 샘플의 악성행위 프로세스는 모두 동일하고, 접속하는 악성코드 유포지의 주소만 변경되었다. 2개의 샘플에서 사용된 악성코드 유포지의 IP 대역을 살펴보면 공격자는 185.17.0.0/16 네트워크 대역의 유포지 서버를 보유하고 있는 것으로 추측된다.
INVOICE-01 샘플 |
INVOICE-02 샘플 |
hxxp://185.17.123.201/dat3.omg |
hxxp://185.17.120.235/dat1.omg |
[표 5] 악성코드 유포지 URL 비교
[그림 27] INVOICE-01 (유포지 주소)
[그림 28] INVOICE-02 (유포지 주소)
3) 추가 악성코드 “wsus.exe” 분석
wsus.exe 악성코드 또한 INVOICE-01 샘플과 INVOICE-02 샘플의 악성행위 프로세스가 서로 동일하다.
아래는 2개의 샘플 간의 차이점에 대해 기술한 것이다.
① 중복 실행 방지를 위한 뮤텍스 이름 변경
INVOICE-01 샘플 |
INVOICE-02 샘플 |
-*(^%#@(*&%R*(# |
klsdajkg23hyjugy2342 |
[표 6] 뮤텍스 이름 비교
[그림 29] INVOICE-01 (뮤텍스 이름)
[그림 30] INVOICE-02 (뮤텍스 이름)
② 접속하는 C2 서버 IP 주소 변경
INVOICE-01 샘플 |
INVOICE-02 샘플 |
169.239.128.148 |
185.99.133.2 |
[표 7] C2 서버 주소 비교
[그림 31] INVOICE-01 (C2 서버 주소)
[그림 32] INVOICE-02 접수 (C2 서버 주소)
공격자는 위에서 나타난 차이점을 통해 다음과 같은 효과를 얻을 수 있다.
① 엔드포인트 관점 : 소스코드 내 뮤텍스 이름 변경을 통한 악성코드의 해시 값 변경 → AV 제품 탐지 우회
② 네트워크 관점 : C2 서버의 IP/URL 주소 변경 → 방화벽/IPS 보안장비 차단 우회
이는 공격자로 하여금 새로운 악성코드를 제작하는 대신 기존 악성코드 내 문자열 변경이나 IP/URL 주소 변경만으로도 보안장비들을 우회하면서 마치 새로운 악성코드를 유포하는 것과 동일한 효과를 가질 수 있다.
5. 대응방안
본 보고서에서 기술된 샘플들은 사용자가 인보이스 위장 메일에 첨부된 MS Office 계열의 문서를 열어 ‘콘텐츠 사용’ 버튼을 클릭할 경우 악성코드 유포지 접속, 추가 악성코드 다운로드 및 실행하여 시스템 정보를 지속적으로 유출한다. 따라서 다음과 같은 대응방안을 권고한다.
① 신뢰할 수 없는 문서의 ‘콘텐츠 사용’ 버튼 클릭 금지
[그림 33] ‘콘텐츠 사용’ 버튼 클릭 금지
② 안티 바이러스 제품 실시간 검사 및 업데이트
③ 방화벽 또는 IPS에서 IoC 정보 탐지 및 차단
순 번 |
파일명 |
MD5 |
1 |
temp_[숫자13자리]_[숫자10자리].doc |
93e5af41b2994e60fe1655994dcc1fc3 |
2 |
인보이스 12-2-2019.xls |
876d3b0f761bdbea8ca86be0bb50b77f |
3 |
인보이스 12-2-2019.xls |
24047b923271c1915b0668179827d4e6 |
4 |
인보이스 12-2-2019.xls |
da0dc5e26a4dd2f85c1c56f65999f79b |
5 |
인보이스 18-02-2019.xls |
8432fdb4f71bb8ec20bbf25862a4ecb8 |
6 |
인보이스 18-02-2019.xls |
92963239011dfab663516aca01ccd319 |
7 |
인보이스 18-02-2019.xls |
df84893d492a78ea417ed9d185946b5d |
8 |
인보이스_12-2-2019.xls |
355115367c70b8463daa901919db2fc7 |
9 |
의뢰_022718_001.xls |
5a14f11eaf60df42536de577d00e0da2 |
10 |
A[숫자6자리].wiz |
29edf07b254e8b67d25d7f34b8fcda6a |
11 |
wsus.exe |
6b04afd46c6f2bd0c612b11c1b022c25 |
12 |
wsus.exe |
30b4e109caaebab50007872085e8d208 |
13 |
wsus.exe |
931cbee05c321fe0e8133d11452898a2 |
14 |
wsus.exe |
670566dc756db98424c92611237da107 |
15 |
wsus.exe |
bdc280c61577a53eef500e81e7066833 |
16 |
wsus.exe |
ce0f37d5932ff0b583b79c6dcf7dac7e |
17 |
wsus.exe |
cff93da112d9a2b013751840fbabafe8 |
18 |
wsus.exe |
25d48c3a71a5f8777ad4db67c2a4f649 |
19 |
xls |
7b2487dd2c7dbacdc4137249d6da262d |
[표 8] 인보이스 위장 악성코드 IoC 정보
④ 콘텐츠 무해화(CDR) 솔루션을 이용한 문서 내 악성 콘텐츠 무력화