2024-03-29 01:35 (금)
최근 발견된 한글문서 악용한 최신 APT 공격...'작전명 유령 꼭두각시'
상태바
최근 발견된 한글문서 악용한 최신 APT 공격...'작전명 유령 꼭두각시'
  • 길민권 기자
  • 승인 2018.09.26 11:01
이 기사를 공유합니다

악성 한글 문서 파일 ‘유사수신행위 위반통보.hwp’ 발견돼...주의

e-3.jpg
2018년 8월, 악성 한글 문서 파일 ‘유사수신행위 위반통보.hwp’가 발견되었다. 해당 문서 파일은 특정인의 유사 수신 행위에 대한 고발 내용을 담고 있지만 파일 내부에 ‘GhostScript’ 취약점 코드를 포함하고 있다. 이용자가 무심결에 실행할 경우, 취약점으로부터 원격 제어 기능을 수행하는 악성코드에 감염된다.

공격 과정에서 주목할 점은 공격자는 악성코드 감염을 위해 한글 문서 파일을 사용했다는 것이다. 공격자가 한글 문서를 사용한 이유는 ‘한글’ 워드프로세서 제품은 사용처가 주로 국가 기관이기에 공격 대상이 명확하기 때문이다.

이스트시큐리티 시큐리티대응센터(ESRC) 측은 보고서에서 "‘GhostScript 엔진의 취약점’과 ‘페이로드의 원격제어 기능’과 같은 공격 특징을 토대로 오퍼레이션(Operation, 작전) 이름을 ‘Ghost Puppet(유령 꼭두각시)’로 명명한다"고 밝혔다.

보고서의 ‘Ghost Puppet’에서 사용된 ‘유사수신행위 위반통보.hwp’ 악성 한글 문서 사례에 대한 상세 분석은 다음과 같다.

◇'유사수신행위 위반통보' 악성 한글 문서 파일 사례

‘유사수신행위 위반통보.hwp’는 취약점이 포함된 포스트스크립트를 실행해 악성코드를 다운로드 하는 기능을 수행한다.

악성 한글 문서 파일은 취약점 코드가 포함된 포스트스크립트로 악성 행위를 수행한다. 포스트스크립트는 한글 파일(HWP) 구조 중 ‘BinData’의 ‘BIN0001.ps’에 존재한다. ‘BinData’는 ‘그림이나 OLE 개체와 같이 문서에 첨부된 바이너리 데이터’를 의미하며, ‘BinData’ 하위의 ‘BIN0001.ps’는 악성 포스트스크립트 파일으로서 ‘zlib’ 압축 모듈로 압축(Compress)되어 있다.

▲ 악성 한글 문서에 포함된 포스트 스크립트(BIN0001.ps). 보고서이미지
▲ 악성 한글 문서에 포함된 포스트 스크립트(BIN0001.ps). 보고서 이미지

한글 워드프로세서에서는 ‘포스트스크립트(PostScript)’를 ‘고스트 스크립트’로 처리한다. ‘gbb.exe’에서 실행된 ‘EMB00000cf808e8.ps’는 포스트스크립트로, 디코딩을 통해 인젝션 및 다운로드 기능을 가진 쉘코드를 로드한다.

로드된 쉘코드는 ‘explorer.exe’에 Thread 인젝션 한 후 C&C 로부터 페이로드를 다운로드 하는 기능을 수행한다. ‘explorer.exe’ 메모리에서 실행되는 ‘gcoin2.swf’ 악성코드는 원격 제어 기능을 수행한다. C&C에서 명령을 받은 경우, 공격자가 전송한 명령어에 따라 악성 기능이 수행된다.

◇메타 데이터 분석 내용

문서 메타데이터로 봤을 때, 해당 악성 파일은 KST 기준으로 약 오전 10시 54분경 ‘User’ 계정으로 최초 문서가 만들어졌고, 약 40분 뒤에 최종 작성 완료되었다. 또한 ‘gcoin2.swf’ 악성 코드의 경우 빌드 시간이 ‘2018년 08월 03일 01:34:02(UTC)’다. 따라서 한글 악성 파일과 ‘gcoin2.swf’ 파일은 별도의 시간 조작이 되지 않은 것으로 추정된다.

악성문서는 유사 수신 등의 법률과 관련된 전문적인 지식을 가지고 작성된 것이 아니라 인터넷에 업로드된 양식을 토대로 수정된 것이다. 내용에서 ‘명목’ 대신 ‘명복’이라는 오타를 그대로 사용한 점은 이를 뒷받침하는 근거다.

◇과거 악성 한글 파일과 유사성 분석

또 마지막 문서 저장 시간을 기준으로 정렬한 각 악성 한글 문서에 저장된 메타 데이터다. 메타 데이터로 볼 때, Author(문서 생성자)나 Last_Saved_by(마지막으로 문서를 저장한 사람)는 문서마다 상이하다. 하지만 4월부터 6월 중순까지 발견된 문서가 대부분 ‘TATIANA’ 계정으로 작성되었음을 알 수 있다.

시기별로 문서의 본문 내용을 보면, 각 문서는 이력서, 논문, 보도자료 등의 상이한 내용을 담고 있지만 대체적으로 가상화폐, 유사수신행위, 부동산 등의 금융과 관련된 내용이 많다는 점을 알 수 있다.

이번 악성 한글 문서 파일의 포스트스크립트는 모두 XOR 연산으로 디코딩을 수행하며, 각 악성 한글 문서 파일 별 XOR 디코딩 방식 및 XOR 키를 정리한 표는 다음과 같다.

▲ 각 한글 문서 메타 데이터. 보고서 이미지
▲ 각 한글 문서 메타 데이터. 보고서 이미지

◇과거 악성 한글 파일과 유사성 분석

1)파일 및 폴더 수집 함수의 문자열 유사성

특징적으로 7.7 디도스 사건, 중앙일보 해킹 사건, ‘Ghost Puppet‘에서 파일 및 폴더 이름을 구분하기 위해 시그니처 문자열을 사용한다. ‘Ghost Puppet‘에서는 ‘폴더’는 ‘:FZ:’, 파일은 ‘:GY:’, 수집이 완료된 경우에는 ‘;**;’ 시그니처(Signature) 문자열을 사용한다. 특징적으로 관련 사건 모두 사용한 특수기호 및 사용 위치가 유사하다.

2)cmd 문자열 유사성

명령제어 기능 중 명령 프롬프트(cmd.exe)를 실행하는 코드를 보면, 2009년 7.7 디도스 사건과 2011년 4월 12일 농협 해킹 사건 등에서 발견된 악성코드는 ‘‘%sd.e%sc "%s > %s", 2012년 6월 중앙일보 해킹 사건부터 ‘Ghost Puppet’까지는 ‘%sd.e%sc "%s > %s" 2>&1’ 명령어 문자열을 사용한다. 해당 명령어 문자열은 명령프롬프트에서 명령어 수행 결과를 파일로 출력하는 기능을 하며, ‘2>&1’는 명령어 실행에 따른 에러 메시지를 파일로 출력한다.

이스트시큐리티 시큐리티대응센터(ESRC) 측은 "지금까지의 사례외에도 동일한 IoC 코드나 메타 데이터를 사용하는 유사한 침해사고가 한국에서는 수년간 계속 이어지고 있으며, 그 변화 과정을 지속적으로 추적 연구하고 있다"고 밝혔다.

이번 ESRC의 '작전명 유령 꼭두각시' 분석보고서는 데일리시큐 자료실에서 다운로드 가능하다.

★정보보안 대표 미디어 데일리시큐!★


■ 보안 사건사고 제보 하기

▷ 이메일 : mkgil@dailysecu.com

▷ 제보 내용 : 보안 관련 어떤 내용이든 제보를 기다립니다!

▷ 광고문의 : jywoo@dailysecu.com

★정보보안 대표 미디어 데일리시큐 / Dailysecu, Korea's leading security media!★