보안이슈 돋보기2014.05.07 13:06
Exploit.HWP.Agent -ALYac Division Malware Research
최근 사회∙정치적으로 여러 이슈들이 등장하면서, 이슈들을 교묘하게 악용한 악성코드의 유포가 꾸준히 지속되고 있습니다. 겉으로는 그저 이슈를 담은 문서파일이지만, 그 속에는 악의적인 공격 코드가 담겨있습니다. 공격자는 이를 이메일을 통해 무차별적으로 유포함으로써, 메일 수신자에게 호기심을 유발하여 해당 파일을 실행시킵니다.
이번에 발견된 악성코드도 최근 언론에서 한국 주요기관의 정보 유출을 노리는 사이버 스파이, 일명 'Kimsuky'와 비슷한 유형으로 판단됩니다.
정보 유출의 역할을 하는 악성코드는 이미 다양한 유형이 존재하고 활동하고 있습니다. 그러나 이것이 특정 국가를 노리는 사이버전의 전초전이라고 생각하면 **‘공격 전 정보 수집의 목적’**에 사용될 수 있습니다. 따라서 기업 및 공공기관의 보안 관리자들의 각별한 주의가 필요합니다.
악성코드 순서도
악성코드 상세 분석
**1. 악성파일 분석 : *.hwp
[그림1] 문서 파일 첫 페이지의 내용
HWP 문서파일의 역할은 사용자로 하여금 호기심을 유발하여, 문서파일을 열어보도록 합니다. 공격자는 이 문서파일로써 취약점이 존재하는 ‘한컴 오피스’를 이용했습니다. 해당파일을 열게 되면, 내부에 삽입된 악성코드가 드롭 및 실행됩니다. [그림 1]은 악성 HWP 문서파일을 실행했을 때 나타나는 첫 페이지의 내용입니다.
[그림2] 실행중인 악성코드
문서파일을 실행하면, 한 때 논란이 되었던 정치적 이슈에 관한 내용을 확인할 수 있습니다. 사용자가 이 내용을 눈으로 확인했다면, 이미 악성코드는 실행되었다고 볼 수 있습니다. [그림 2]에서 확인할 수 있듯, 프로세스 목록을 살펴보면 아래와 같이 악성코드가 이미 실행중인 것을 확인할 수 있습니다.
그렇다면 어떤 이유로 인해서 HWP 문서파일 내부에 숨겨진 악성코드가 실행되었는지 파악해야 합니다. 일단 기본적으로 이 HWP 문서파일은 분명히 정상 HWP파일이 아니라, 조작된 파일일 가능성이 높습니다.
해당 HWP 문서파일은 사이즈를 줄이기 위해서 압축 저장되어 있으며, 내부에는 본문 데이터를 담은 6개의 섹션이 존재합니다. 이 6개의 섹션 개수는 이 문서파일이 총 6페이지로 구성되어 있다는 것과 일치합니다. 그 중에서 섹션 0번은 앞서 [그림 1]의 내용을 담은 정상적인 섹션이지만, 섹션1번부터 섹션5번까지는 [그림 3]과 같이 숨은 설명 형태로 눈에 안보이게 삽입되어 있습니다.
[그림3] 숨은 설명 형태로 삽입된 섹션1 - 섹션5의 본문 데이터
숨은 설명 데이터를 가지고 있는 섹션1번~섹션5번은 정상적인 섹션으로 보일 수 있으나, 압축 해제된 섹션의 데이터를 검증해보면 HWPTAG_PARA_TEXT TagID부분에서 ****데이터의 길이가 비정상적으로 긴 것을 확인할 수 있습니다. HWPTAG_PARA_TEXT는 본문을 의미하는데, 공격자는 한글의 본문과 관련된 취약점을 노린 것으로 보입니다.
[그림4] 비정상적으로 긴 본문 데이터
해당 부분을 살펴보면, 아래 [그림 5]에서 확인할 수 있듯이 수많은 0x09가 연속적으로 나열되어 있고, 끝 부분에 쉘코드로 의심되는 부분을 발견할 수 있습니다. 데이터의 길이가 0x01000000을 넘는데, 이는 약 16Mb의 크기이며 섹션1 ~ 섹션5가 모두 이와 동일합니다.
[그림5] 숨은 설명 형태로 삽입된 쉘코드
[그림6] 메모리 힙스프레이