라자루스(Lazarus) 그룹이 사용한 안티 포렌식 기법

약 1년 전부터 라자루스 공격 그룹의 악성코드가 국내의 방산, 인공위성, 소프트웨어, 언론사 등 다수의 업체들에서 발견되고 있어, 안랩 ASEC 분석팀은 라자루스 공격 그룹의 활동 및 관련 TTP’s를 지속적으로 추적하고 있다. 

본 글에서는 최근 사례 중 라자루스 그룹이 침해한 시스템에서 확인된 안티 포렌식 흔적과 내용을 공유하고자 한다.

개요

안티 포렌식 정의

안티 포렌식이란 범죄 현장에서 증거의 존재를 훼손시켜 부정적인 영향을 미치거나 증거 분석 및 조사 과정을 방해하거나 어렵게 만들려는 시도를 말한다. 일반적으로 침해사고 관점에서의 안티 포렌식의 목적은 다음과 같다.

  • 탐지 회피 및 정보 수집 방해
  • 디지털 포렌식 분석가의 분석 시간 증가
  • 디지털 포렌식 도구가 동작하지 못하도록 하거나 오류 발생 유발
  • 사용 흔적이나 도구 실행 흔적을 발견하지 못하도록 로깅을 차단/우회하거나 삭제

라자루스 그룹은 자신이 수행한 악성행위를 은닉하기 위한 목적으로 안티 포렌식을 수행했다.

안티 포렌식 기법

안티 포렌식 분류에 대해 다양한 기준이 존재하나 본 내용에서는 가장 널리 통용되고 있는 Dr. Marcus Roger가 제시한 안티 포렌식 분류를 사용해, 라자루스 그룹이 수행한 은닉 행위를 구분하고 분석했다.

Dr. Marcus Roger는 포렌식 분석을 방해하는 안티 포렌식 기법을 크게 5가지로 분류했으며, 데이터 은닉(Data Hiding), 흔적 제거(Artifact Wiping), 흔적 난독화(Trail Obfuscation), 포렌식에 대한 공격(Attacks Against Computer Forensics), 물리적 방법(Physical)으로 구분했다.

위 5가지 기준으로 볼 때  라자루스 그룹은 데이터 은닉(Data Hiding), 흔적 제거(Artifact Wiping), 흔적 난독화(Trail Obfuscation)로 총 3가지 기법을 수행했다.

데이터 은닉(Data Hiding)

데이터 은닉은 데이터를 쉽게 탐지할 수 없도록 숨기는 방법을 말하며, 대표적인 예시로, 데이터의 난독화 및 암호화, 스테가노그래피, 비할당 영역에 데이터 은닉 등을 예로 들 수 있다.

암호화(Encryption)

라자루스 그룹은 사용할 악성코드를 3개로 구분하여 사용했다. 각각 로더, 실행 파일, 설정 파일이며, 각 파일들의 주요 기능은 다음과 같다.

  • Loader : 암호화된 PE파일을 복호화하여 메모리에 로드
  • Encrypted PE : 로더 메모리상에서 실행되는 악성코드로, 암호화된 설정 파일을 복호화하여 C2주소와 통신
  • Encrypted Config : 암호화된 설정 파일로, C2정보가 포함된 파일

라자루스 그룹은 보안 제품 탐지를 우회하기 위해 C2 정보가 포함된 설정 파일과 C2 통신을 수행하는 PE 파일은 암호화된 상태로 전달한다. 암호화된 파일들은 로더 파일에 의해 메모리에서 복호화돼 동작을 수행하며, C2로부터 추가 파일을 받아 악성 행위를 수행한다. 

[그림] 백도어 동작 과정

다른 형태의 데이터 은닉(Other Forms of Data Hiding)

라자루스 그룹은 악성코드 은닉을 위해 시스템 폴더를 은닉장소로 사용하거나, 정상 파일명을 사칭해 사용했다. 악성코드 은닉을 위해 주로 사용하는 폴더는 시스템 기본 폴더로 폴더 하위에 유사한 폴더 생성해 사용하거나, 기본적으로 숨김 처리된 시스템 파일에 정상 파일처럼 위장해 악성코드를 은닉시켰다.

  • C:\ProgramData\
  • C:\ProgramData\Microsoft\
  • C:\Windows\System32\

C:\ProgramData 폴더는 시스템 기본 폴더로 기본적으로 숨김 처리된 폴더이다. 해당 폴더에 시스템 기본 폴더명과 유사한 폴더(MicrosoftPackages)를 생성해 악성코드 은닉 장소로 사용하거나, 기본 폴더에 유사한 파일명으로 위장해 악성코드를 은닉했다.

[그림] 유사 폴더를 생성하여  악성코드 은닉 장소로 사용

[그림] 기본 폴더명을 사칭한 악성코드 은닉

흔적 제거(Artifact Wiping)

흔적 제거란 특정 파일 또는 전체 파일 시스템을 영구적으로 제거하는 작업을 말하며, 기본적인 파일 삭제뿐만 아니라 전문 도구를 사용하여 사용 흔적을 없앨 수도 있다. 예시로, 디스크 정리 유틸리티, 파일 지우기 및 디스크 자기 소거/파괴 등은 모두 흔적 제거에 포함된다.

파일 삭제 (File Wiping)

라자루스 그룹은 백도어 목적의 악성코드를 제외하고 사용했던 악성코드 및 악성 행위를 수행하는 동안 발생했던 아티팩트들을 삭제했다. 악성코드의 경우 데이터를 덮어씌운 후 파일명을 변경하여 삭제했다. 

파일 삭제 시 데이터 부분을 덮어씌우게 되면, 파일 복원이나 데이터 카빙 기법을 통해 데이터 복구가 힘들어지기 때문에 원본 내용을 확인할 수 없게 된다.

[그림] USNJrnl에서 확인한 악성코드 삭제 기록

라자루스 그룹은 악성코드 실행 관련 아티팩트 삭제 행위도 병행하여 수행했다. 예시로 응용프로그램 실행관련 아티팩트인 프리패치(Prefetch) 파일을 일괄 삭제함으로써 사용한 악성코드 실행 흔적을 삭제했다.

[그림] 프리패치 파일 일괄 삭제 기록

흔적 난독화(Trail Obfuscation)

흔적 난독화란 포렌식 분석을 혼란스럽게 하여 악성 행위를 숨기는 작업을 말하며, 로그 변조/삭제, 스푸핑, 잘못된 정보 삽입, 백본 호핑 등 분석을 방해하거나 분석가의 판단을 흐리는 행위를 예로 들 수 있다.

시간 정보 조작(Timestamp Changes)

라자루스 그룹은 흔적 제거 과정을 통해 거의 모든 기록 및 사용했던 파일을 지웠으나, 유일하게 시스템에 남겨놓은 악성코드가 존재하는데 바로 백도어 악성코드다. 백도어 악성코드 특성상 존재를 들키지 않으며 장시간 시스템에 유지해야 하기 때문에 라자루스 그룹은 피해 시스템에 생성한 악성코드의 시간 정보를 조작해 은닉시켰다.

시간 정보를 조작한 가장 큰 이유는 타임라인 분석을 회피하기 위한 목적이 가장 큰 것으로 보인다. 타임라인 분석이란 사건이 일어난 시점을 중심으로 생성/수정/삭제/접근한 파일을 추적하여 분석하는 기법을 말하는데 시간 정보를 조작할 경우 분석 과정에서 악성코드의 기록이 누락되어 분석의 방향을 혼란시키거나, 잘못된 판단을 하게 될 수 있다.

피해 시스템에서 발견된 악성코드와 시스템에 존재하는 일부 파일의 시간 정보가 완전히 일치하는 것을 확인할 수 있었다.

[그림] 시스템 기본 파일(notepad.exe)과 악성코드(DapowSyncProvider.dll) 시간 정보 비교

윈도우 파일시스템(NTFS)에는 $STANDARD_INFORMATION 속성과 $FILE_NAME 속성에서 각각 4개의 시간 정보를 가지고 있으며, 각각 파일의 생성, 수정, 접근, 엔트리 수정 시간이다. 윈도우 파일 속성 정보에 표기된 시간 정보는 $STANDARD_INFORMATION의 정보이다.

  • $STANDARD_INFORMATION : 모든 파일에 기본적으로 존재하는 속성으로 파일의 시간 정보, 특성, 소유자 및 보안 ID와 같은 파일에 대한 기본적인 속성 정보를 가지고 있다.
  • $FILE_NAME : 모든 파일에 기본적으로 존재하는 속성이며 파일의 이름을 저장하기 위한 속성으로 파일 이름외 다양한 부가 정보가 포함되있다.

상세한 시간 정보 비교를 위해 $MFT를 추출하여 시간 정보를 비교한 결과 시스템 기본 파일(notepad.exe)과 악성코드(DapowSyncProvider.dll)의 $STANDARD_INFORMATION 속성 시간 정보가 정확하게 일치하는 것으로 확인됐다.

[표] 악성코드와 시스템 기본 파일 시간 정보 비교

라자루스 그룹은 타임라인 분석을 회피하기 위해 시간 정보를 시스템 기본 파일과 동일하게 변경하여 시스템 기본 파일처럼 위장시켰다. 

최근 라자루스 그룹에 의해 침해된 시스템들에서 확인된 악성코드의 시간 정보가 조작된 내용은 다음과 같다.

[그림] 악성코드 시간 정보 조작

정리된 내용을 통해 라자루스 그룹의 악성코드 시간 정보 조작 방식의 특징은 다음과 같이 정리할 수 있다.

  • 모든 악성코드의 시간 정보를 조작하지는 않는다.
  • 시간 정보는 임의로 지정하는 것이 아닌 시스템 기본 파일의 시간 정보를 복사해 변경한다.
  • 동일한 사건에서도 시간 조작이 발생한 시스템과 발생하지 않은 시스템이 있는 것을 보아 시간 변경은 선택 사항으로 보인다.
  • 동일한 악성코드 더라도 시간을 복사하는 시스템 파일의 대상이 다른 것을 보아 복사 대상을 선택할 수 있는 것으로 보인다.

시간 정보 조작 기법은 라자루스 그룹뿐만이 아닌 몇몇 APT 그룹에서도 악성코드를 은닉하기 위한 방법으로 사용하고 있는 것으로 확인됐다.

[표] 시간 정보 조작 기법 사용하는 그룹

결론

라자루스 그룹은 공격 과정에서 보안 프로그램의 탐지를 우회하기 위해 악성코드를 암호화하거나, 시스템 파일명으로 위장했으며, 분석을 방해하기 위해 파일의 시간 정보를 조작했다. 또한 실행 흔적을 삭제 할때도 데이터를 덮어씌우는 방법을 사용해 데이터 복구를 방해하는 등의 치밀한 행동을 보였다.

라자루스 공격 그룹이 사용 중인 안티 포렌식 기법을 분석하다보니, 라자루스 그룹외에도 여러 APT 그룹이 자신들의 공격 흔적을 지우기 위한 목적으로 사용하고 있는 것으로 확인됐다.

사고 조사 및 분석 시에는 공격자가 안티 포렌식을 수행했을 가능성을 열어두고 분석해야 하며, 안티 포렌식 기법이 적용된 경우에도 이를 추적할 수 있는 방안에 대해 지속적인 연구가 필요할 것으로 보인다.

[파일 진단]

  • Trojan/Win.LazarShell (2021.11.30)
  • Trojan/BIN.Encoded (2021.12.15)
  • Trojan/BIN.Encoded (2021.12.15)
  • Trojan/Win.LazarLoader (2022.09.06)
  • Data/BIN.EncPe (2022.09.06)
  • Data/BIN.Encoded (2022.10.04)
  • Backdoor/Win.Lazardoor (2022.09.06)
  • Data/BIN.EncPe (2022.09.06)
  • Data/BIN.Encoded (2022.10.04)
  • Trojan/Win.LazarLoader (2022.09.06)
  • Data/BIN.EncodedPE (2022.09.06)
  • Trojan/Win.Lazardoor (2022.12.09)
  • Data/BIN.Lazarus (2022.12.09)
  • Trojan/Win.Lazardoor (2022.12.09)
  • Data/BIN.Lazarus (2022.12.09)
  • Data/BIN.Lazarus (2022.12.10)
  • Trojan/Win.Lazardoor (2023.01.11)
  • Data/BIN.EncodedPE (2023.01.12)
  • Data/BIN.Encoded (2023.01.12)
  • Trojan/Win.Lazardoor (2023.01.11)
  • Data/BIN.EncodedPE (2023.01.12)
  • Data/BIN.Encoded (2023.01.11)

[파일 MD5]

  • B3E03A41CED8C8BAA56B8B78F1D55C22
  • 1E7D604FADD7D481DFADB66B9313865D
  • 7870DECBC7578DA1656D1D1FF992313C
  • B457E8E9D92A1B31A4E2197037711783
  • 1F1A3FE0A31BD0B17BC63967DE0CCC29
  • C16A6178A4910C6F3263A01929F306B9
  • 202A7EEC39951E1C0B1C9D0A2E24A4C4
  • 1F1A3FE0A31BD0B17BC63967DE0CCC29
  • 8543667917A318001D0E331AEAE3FB9B
  • CA9B6B3BCE52D7F14BABDBA82345F5B1
  • 97BC894205D696023395CBD844FA4E37
  • C7256A0FBAB0F437C3AD4334AA5CDE06
  • FC8B6C05963FD5285BCE6ED51862F125
  • 27DB56964E7583E19643BF5C98FFFD52
  • 61B3C9878B84706DB5F871B4808E739A
  • 6EA4E4AB925A09E4C7A1E80BAE5B9584
  • BD47942E9B6AD87EB5525040DB620756
  • 67D306C163B38A06E98DA5711E14C5A7
  • C09B062841E2C4D46C2E5270182D4272
  • 747177AAD5AEF020B82C6AEABE5B174F
  • E73EAB80B75887D4E8DD6DF33718E3A5
  • BA741FA4C7B4BB97165644C799E29C99
  • 064D696A93A3790BD3A1B8B76BAAEEF3

연관 IOC 및 관련 상세 분석 정보는 안랩의 차세대 위협 인텔리전스 플랫폼 ‘AhnLab TIP’ 구독 서비스를 통해 확인 가능하다.

5 2 votes
별점 주기
guest

53 댓글
Inline Feedbacks
View all comments
trackback

[…] “The Lazarus group performed a total of three techniques: data hiding, artifact wiping, and trail obfuscation,” ASEC researchers said. […]

trackback

[…] “The Lazarus group performed a total of three techniques: data hiding, artifact wiping, and trail obfuscation,” ASEC researchers said. […]

trackback

[…] “The Lazarus group performed a total of three techniques: data hiding, artifact wiping, and trail obfuscation,” ASEC researchers said. […]