봔하는 수달

HWP 악성코드 - 북한 APT Lazarus ‘스타 크루저 작전’ 본문

정보보안/악성코드분석

HWP 악성코드 - 북한 APT Lazarus ‘스타 크루저 작전’

봔수달 2023. 1. 10. 12:01

1. 개요

요새 랜섬웨어만 분석을 하다보니 문서형 악성코드에 대한 분석 능력이 떨어지는거 같아서 오래된 샘플에 대해서 분석을 진행하면서 감을 다시 살리고자 해당 샘플을 분석을 진행하였다.

 

해당 악성코드는 북한의 Lazarus 그룹의 ‘스타 크루저’ 작전에 사용된 APT 공격으로 밝혀졌다.

Lazarus는 한글문서에 악성코드를 삽입하여 이메일에 첨부하여 발송하여 공격을 진행한다.

 

2. 분석

도식도

 

문서 파일 정보 및 내용

  • 문서 파일은 2018년 10월에 작성되었으며 내용으로는 국가핵심기술 보유인력등에 대한 내용을 다루고있다.

 

 

SSView를 통해 EPS 파싱(PostScript)

  • BinData영역에 존재하는 압축된 PostScript를 파싱
  • 파싱한 데이터는 압축되어 존재하기 때문에 압축을 해제하기 위한 코드가 필요함.

import zlib
import sys

def unzip(flist):
    flist = flist[0]
    obj1 = open(flist,"rb").read()
    obj2 = zlib.decompress(obj1, -15)
    file = open("unpack.ps.stream",'wb')
    file.write(obj2)

if __name__ == '__main__':
    flist = sys.argv[1:]
    unzip(flist)

 

PostScript 분석

  • 해당 PostScript는 난독화가 마지막 영역에서 복호화 된디 exec를 통해 실행되는 코드다.
  • 해당 코드를 복호화하기 위해 exec를 print로 변경한 뒤 GhostScript를 통해 난독화를 해제하여 ShellCode를 획득한다.

 

GhostScript

  • PostScript를 print문을 통해 해제하게되면 중간 영역에 Shell Code를 획득하게된다.
  • 해당 Shell Code를 ShellCode 2 EXE(http://sandsprite.com/sc2exe/shellcode_2_exe.php) 사이트를 통해서 EXE 파일로 변경한 뒤 분석을 진행한다.

 

ShellCode 분석

  • 해당 악성코드는 Explorer.exe에 인젝션을 진행하여 Ws2_32.dll를 통해 Win 소켓을 이용하여 추가적인 악성코드를 다운로드 받게된다.

Explorer.exe를 찾고 인젝션을 수행하기위한 반복문
추가적인 악성코드를 다운로드 받기위한 서버 주소
전체적인 흐름도 with sysmon

여기까지가 EPS 쉘코드를 이용하여 C&C서버를 통해 드롭파일을 받아오는 과정.

이후 과정은 C&C 서버가 닫혀있기 때문에 벤더에서 직접 구하여 분석을 진행.

 

DLL파일 분석 

32bit DLL File

ws2_32.dll 또는 Wsock32.dll을 불러오고 하드 코딩된 C&C 서버를 통해서 연결을 시도한다.

C&C
hxxps://theinspectionconsultant.com/wp-content/plugins/akismet/index1[.]php
hxxp://danagloverinteriors.com/wp-content/plugins/jetpack/common[.]php
hxxps://as-brant.ru/wp-content/themes/shapely/common[.]php

 

해당 과정에서 C&C 서버와 통신하기 위해 사용된 인자가 특이하여 OSINT를 진행한 결과 Lazarus의 아티팩트로 판명.

 

이후 RAT 기능으로 보이는 명령어 스위치들이 존재하는 것 또한 확인되었음.

 

 

결론

해당 샘플은 실행파일이 아닌  한글 문서로 위장하여 포스트스크립트를 실행 시킨뒤  악성행위를 수행하는 악성코드이다. 이러한 악성코드는 사용자 관점에서 의심하기 어렵기 때문에 보안 담당자로서는 지속적인 보안 인식에 대한 교육과 이에 대한 대응 솔루션 또한 필요하다.

악성코드에 적용되는 취약점은 나날이 바뀌지만, 방법론적인 침투 방식은 바뀌기 힘들기 때문에 기술적인 보안만큼 중요한 건 관리적 관점에서의 보안을 통한 집단 사이버 면역 체계를 갖추는것이 중요하다고 생각이 된다.

Comments