보안 위협 분석

온라인 문의

Earth Kurma 캠페인

악성코드 분석        2025-07-09

 

1) 개요

최근 필리핀, 말레이시아 등 동남아시아를 대상으로 하는 APT 캠페인이 발견됐다. APTAdvanced Persistent Treat의 약자로, 지속 가능한 공격 즉, 시스템에 장기간 상주하며 데이터를 훔치거나 시스템을 파괴하는 공격을 말한다. 연구원들은 해당 캠페인의 배후에 있는 위협 그룹을 Earth Kurma라고 이름 붙였다Earth Kurma202011월부터 활동을 시작해, 주로 정부기관을 노리며 데이터 유출에 초점을 두고 있다. 초기 침투부터, 악성코드 다운로드, 지속성 유지를 위해 다양한 오픈소스를 사용했다. 또한 맞춤형 악성코드를 사용했으며, 탈취한 정보들을 DropboxOneDrive같은 합법적인 플랫폼을 활용한다Earth Kurma가 사용한 도구 및 악성코드와 다른 APT 그룹에서 사용한 것이 일치하는 부분이 발견되기도 했다. 캠페인에 사용된 MORIYA 루트킷의 경우 Operation TunnelSnake에 사용된 것과 동일한 코드가 발견되었으며 SIMPOBOXSPY의 경우 ToddyCat이라는 APT그룹과 연관되어 있다. 이처럼 일부 유사한 부분이 발견되었지만 공격 패턴은 달라 동일 위협그룹보단 다른 그룹으로 분류된 상태다. Earth KurmaAPT 캠페인을 전략, 기술, 절차(TTPs)를 바탕으로 분석해보고자 한다.


 

 

2) 측면 이동(Lateral Movement)

측면이동은 손상된 네트워크나 시스템을 탐색하여 다른 시스템으로 이동하는 것을 말한다. .Earth Kurma는 측면 이동 단계에서 NBTSCAN, LADON, FRPC, WMIHACKER, ICMPinger 등 여러 도구를 사용했다. 인프라 조사 및 검사를 위해 ICMPingerLadon 이라는 오픈소스 도구를 사용했다. ICMPingerICMP 프로토콜을 기반으로 하는 네트워크 스캔 도구로 지정된 호스트가 살아 있는지 확인한다. Ladon의 경우 탐지 우회를 위해 PyInstaller컴파일된 반사형 로더(reflective loader)에 포함되어 있다

 

 
<그림 1> Ladon 반사 로딩 절차<그림 1> Ladon 반사 로딩 절차

 

 

또한 SMB가 필요 없이 153 포트를 통해 명령을 내릴 수 있는 WMIHACKER라는 오픈소스 도구도 사용했다. 일부는 SMB를 통해 명령을 실행하기도 했다. 측면이동을 위해 맞춤형 키로거를 사용해 시스템 사용자의 자격증명을 훔치려고 했다.

 

 

<그림 2> WMIHACKER 스크립트 본문

 

 

<그림 3> 키로거

 

3) 지속성(Persistence)

Mitre Attack에서 Persistence는 지속성 유지 , 공격자가 시스템에 대한 지속적인 접근 권한을 유지하는 것을 말한다. Earth Kurma는 이 단계에서 DUNLOADER, TESDAT, DMLOADER 등 다양한 로더를 사용했다. 로더들은 DorpboxOneDrive 같은 클라우드 서비스를 통해 악성코드를 배포하고 데이터를 유출하는 데 사용되기도 한다.DUNLOADER의 경우 DLL 파일이며, 부모 프로세스 이름에 fnw가 포함되어 있는지 확인한다. TESDATSwitchToFiber라는 API를 이용해 쉘 코드를 호출한다. 이는 탐지를 피하기 위한 것으로 보인다. 로더에 임의의 문자열을 사용하여 이름을 지정하고, 피해자가 자주 접근하는 폴더에 저장하기도 한다.

  •  c:\Users\{사용자}\Downloads\wcrpc.dll
  •  c:\Users\{사용자}\documents\ViberDownloads\mfsvc.dll
  •  c:\Users\{사용자}\Downloads\1\2\3\prick.exe
  •  c:\Users\{사용자}\Downloads\Rufus\gpupdat.exe

 

 

 

<그림 4> DUNLOADER 부모 프로세스명 확인

 

<그림 5> TESDAT 쉘 코드 호출

 

[루트킷] 

루트킷은 공격자가 시스템에 침입한 뒤, 자신의 존재를 숨기고 장기적으로 시스템에 명령을 내리기 위해 사용되는 악성 도구 또는 기법이다. Earth Kurma로더를 피해자 시스템에 다운로드한 후 해당 로더를 이용해 루트킷을 설치한다첫번째 루트킷인 MORIYATCP 트래픽에 악성 페이로드를 숨기는 기능을 가지고 있다. TCP 패킷이 C2 서버에서 오는 것인지 확인하기 위해 6개의 매직 바이트를 확인한다. 일치하는 패킷이 있으면 악성 스크립트를 응답 패킷 본문에 삽입한다.

<그림 6> TCP 패킷 검사


또한 추가적인 쉘 코드 삽입 기능을 가지고 있다. SystemRoot\\system32\\drivers\\ {driver_name}.dat 위치에서 페이로드를 로드하려고 한다. 해당 페이로드는 암호화되어 svchost.exe 프로세스에 삽입된다.

<그림 7> svchost.exe 쉘코드 주입

 

쉘 코드는 NtCreateThreadEx API를 사용하여 호출된다. 탐지 우회를 위해 Zw 또는 Nt로 시작하는 함수를 찾아 각 함수의 시스템 호출 번호를 저장한다. 

 

 

<그림 8> 함수 탐색 및 저장 루틴

 

MORIYA 외에 Earth Kurma가 사용한 것은 KRNRAT 이다. KRNRAT은 쉘 코드 실행, 통신 등 기능을 갖춘 백도어이다. KRNRAT는 다양한 오픈소스 프로젝트를 기반으로 한다. 악성 페이로드를 svchost.exe에 삽입하는데 이 부분은 MORIYA와 비슷하게 동작한다. C2와 연결해 페이로드를 추가로 다운로드 하려고 하며, 프로세스 연결을 은닉한다.

 

 

<그림 9> 프로세스 은닉

 

 

<그림 10> 통신 IP 은닉

 

4) 수집 및 유출(Collection and Exfiltration)

로더가 .pdf, .doc, .docx 등의 확장자를 가진 문서 파일을 수집한다. 해당 문서들은 tmp라는 이름으로 생성된 폴더에 저장되고, 이후 WinRAR 통해 비밀번호와 함께 압축된다.

 

 

 

5) 결론

Earth Kurma2020년 부터 시작해 지금까지도 지속적으로 매우 활발한 활동을 유지하고 있다. 사용하는 로더와 악성코드를 그대로 사용하는 것이 아니라 목표 시스템의 인프라에 따라 수정하여 사용하고 있다. 그렇기 때문에 공격 성공률이 높으며, 측면이동이 정교하게 수행되어 확산성이 강해, 공격 당했을 때 피해가 상당하다. 또한 합법적인 플랫폼을 이용하여 탈취한 정보를 유출하고 있으므로 탐지 회피 기술 또한 탁월하다. 발견된 시점부터 꾸준하게 정부, 공공기관을 대상으로 공격을 수행하고 있으므로 해당 분야에 포함될 경우 모니터링을 좀 더 면밀하게 할 필요가 있다.

 

 

 

 

 

 

[참고 자료]

https://www.trendmicro.com/ko_kr/research/25/d/earth-kurma-apt-campaign.html

https://industrialcyber.co/ransomware/earth-kurma-apt-targets-southeast-asian-government-telecom-sectors-in-latest-cyberespionage-campaigns/

 

 

 

 

  • 목록
문의