PebbleDash와 RDP Wrapper를 악용한 Kimsuky 그룹의 최신 공격 사례 분석 - ASEC

PebbleDash와 RDP Wrapper를 악용한 Kimsuky 그룹의 최신 공격 사례 분석

PebbleDash와 RDP Wrapper를 악용한 Kimsuky 그룹의 최신 공격 사례 분석

개요

 

AhnLab SEcurity intelligence Center(ASEC)은 Kimsuky 그룹이 최근 다수의 공격 사례에서 PebbleDash와 RDP Wrapper를 사용하는 정황을 확인하였다. 일반적으로 Kimsuky 그룹의 공격 대상은 방위산업, 언론, 외교, 국가기관, 학술 등 다양한 분야를 대상으로 하며 조직의 내부 정보 및 기술 탈취를 목적으로 한다. 그리고 최초 침투를 위해 스피어 피싱 공격을 주로 사용한다. 과거에는 문서형 악성코드를 통해 최초 침투를 수행하였지만 최근 들어 문서 파일을 위장한 LNK 악성코드 공격 사례가 지속적으로 확인되고 있다. 근래에 여러 차례 확인된 Kimsuky 공격은 LNK를 통해 파워쉘 악성코드를 감염 시스템에 설치한다. 파워쉘 악성코드는 작업 스케줄러에 등록된 VBS 악성코드에 의해 지속적으로 실행되면서 공격자가 지정한 추가 페이로드를 다운로드 실행한다. 이때 공격자가 실행하는 추가 악성코드는 대부분의 공격 사례에서 RDP Wrapper가 확인되고 있다. 공격자는 RDP를 활성화하고 백도어 계정을 등록하며 이후 RDP Wrapper를 이용해 원격에서 감염 시스템을 제어한다. 이 과정에서는 자체 제작한 Proxy 악성코드가 함께 사용된다.

 

2024년 상반기 부터는 RDP Wrapper 사용뿐만 아니라 PebbleDash를 사용하는 사례 또한 확인되고 있다. PebbleDash는 과거 Lazarus로 알려진 그룹이 사용하였지만 AppleSeed와 함께 Kimsuky 그룹의 스피어 피싱 공격에서 사용된 사례가 존재한다. Kimsuky 그룹의 백도어로 알려진 AppleSeed, HappyDoor가 많은 공격 사례에 사용되었지만 2024년부터는 PebbleDash가 다수 확인되었다. 이번 블로그에서는 2024년부터 새롭게 확인되고 있는 Kimsuky 그룹의 공격 사례를 정리한다. 스피어 피싱 공격을 활용한 최초 침투 사례부터 지속성 유지를 위해 설치한 파워쉘 스크립트를 다루며 이후 감염 시스템을 제어하기 위해 설치한 PebbleDash 등의 백도어와 RDP Wrapper 및 Proxy 도구들을 분석한다. 나아가 Kimsuky 그룹이 직접 제작한 다양한 정보 탈취 및 권한 상승 도구들과 함께 공격자가 직접 실행한 명령들을 정리한다.

 


[그림 1] 공격 흐름도

 

 

본문

 

1. 최초 침투

 

Kimsuky 그룹은 LNK 악성코드를 첨부한 스피어 피싱 공격을 통해 최초 침투를 수행한다. LNK 악성코드의 파일명에 이름이나 회사명이 포함되는 것으로 보아 특정 사용자를 대상으로 악성코드를 유포하고 있음을 알 수 있다. 특히 공격자는 LNK 악성코드 파일의 제목과 아이콘 모양을 문서로 위장하고 이중 확장자 방식을 사용해 사용자에게 바로가기 파일이 마치 문서 파일인 것 처럼 속이는 기법을 사용한다. LNK 악성코드가 실행되면 파워쉘 혹은 Mshta 프로그램을 이용하여 공격자 서버로 부터 추가 악성코드 스크립트를 다운로드 실행한다. 이때 다양한 스크립트가 다운로드되지만 최종적으로는  ‘다른 스크립트 파일 실행’, ‘스크립트 파일 런키 등록 및 작업 스케줄러 등록’, ‘추가 파일 다운로드 및 실행’ 이상 3가지의 기능을 수행하는 스크립트를 다운로드 실행한다.

 

파일명

문의사항.docx.lnk

20241015_56801.docx.lnk

CSO_20240524.xlsx.lnk

[표 1] LNK 악성코드 파일명

 

 

2. 지속성 유지

 

공격자는 피해 시스템에 상주하여 공격자 C&C 서버와의 지속적인 연결 유지를 위해 작업스케줄러 및 자동 실행 레지스트리 키에 스크립트 실행 관련 명령어를 등록하여 시스템 재부팅 시에도 악성 스크립트가 실행될 수 있도록 하였다.

 


[그림 2] 지속성 유지 관련 파워쉘 스크립트

 

 

3. RDP Wrapper, PebbleDash 실행

 

공격자는 최초 침투와 지속성 유지 이후에 RDP Wrapper, PebbleDash 악성코드를 추가로 유포하여 피해 PC를 완전히 제어하였다. RDP Wrapper는 원격 데스크탑 기능을 지원하는 오픈 소스 유틸리티이다. 윈도우 운영체제는 모든 버전에서 원격 데스크탑을 지원하지 않기 때문에 이러한 환경에서는 RDP Wrapper를 설치하여 원격 데스크탑을 활성화할 수 있다. 2023년 하반기 이후 부터 Kimsuky 그룹은 RDP Wrapper의 터미널 서비스 역할을 하는 rdpwrap.dll 파일과 설정 파일을 직접 제작하여 사용하는 것으로 추정된다.

 

PebbleDash 악성코드를 사용하는 사례는 2024년 상반기부터 확인되고 있다. 지난 2021년 ASEC 블로그를 통해 소개한 “Kimsuky 그룹의 APT 공격 분석 보고서 (AppleSeed, PebbleDash)“에서도 언급하였듯이 과거 Lazarus에서 사용하였지만 최근에는 AppleSeed, AlphaSeed, HappyDoor와 같이 Kimsuky 그룹이 자주 사용하는 백도어 중 하나이다. 기능 자체는 일반적인 백도어처럼 파일 생성/삭제, 쉘 명령 실행 등의 백도어 기능을 포함하고 있다. 이번에 확인된 PebbleDash 공격 사례는 실행 방식이 과거의 실행 방식과 다르다. 기존에는 Regsvr32.exe를 통해 DLL이 구동되었다면 현재는 Windows Local Security Authority 관련 레지스트리 키에 DLL을 등록하여 lsass.exe 프로세스에 DLL이 로드되어 동작하도록 변경되었다. 이는 기존에 알려진 실행 방식에서 벗어나 보안 제품 탐지 회피하여 은밀하게 백도어 기능을 수행하기 위한 것으로 보인다.

 

 

결론

 

북한의 지원을 받고 있다고 알려진 Kimsuky 위협 그룹은 2013년부터 활동하고 있다. 최근에 확인된 공격 사례에서는 공공, 법률, 학술 분야에 종사하는 개인이나 기관을 대상으로 공격을 수행하였으며 기업을 대상으로한 사례들도 다수 확인되었다. Kimsuky 그룹은 초기 침투 경로로서 스피어 피싱 공격을 주로 사용하는데 최근에는 문서형 악성코드가 아닌 LNK 포맷의 바로 가기 악성코드를 이용하고 있다. 특히 2024년부터는 공격 방식에 많은 변화가 생겼는데 최초 침투 과정에서 LNK 악성코드가 자주 사용되는 점은 동일하지만 이후 백도어를 설치하는 방식이 아닌 RDP Wrapper와 Proxy 도구를 활용해 감염 시스템을 원격으로 제어하는 경향이 늘어났다. 물론 자체 제작한 악성코드를 사용하는 경우도 존재하며 PebbleDash 악성코드를 다시 활용하고 있다는 점이 특징이다. 공격자는 이외에도 RATClient, AsyncRAT과 같은 백도어를 포함하여 다양한 정보 탈취 도구들과 권한 상승 도구들을 사용하고 있다. 

 

사용자는 메일의 발신자를 상세하게 확인해야 하며 출처가 불분명한 파일의 경우 열람을 자제해야 한다. 그리고 OS 및 인터넷 브라우저 등의 프로그램들에 대한 최신 패치 및 V3를 최신 버전으로 업데이트하여 이러한 악성코드의 감염을 사전에 차단할 수 있도록 신경 써야 한다.

 

상세한 분석 보고서와 전체 IoC 그리고 Yara 룰들에 대한 정보는 ATIP를 통해 확인이 가능하다.

MD5

06c04a8ba382a27b7676f3591246dcbb
07866f30a8b4a3453fd0ff0e82143a83
0808710ecfdb1fb2274209853a256b82
0993cf18121be84f5b1511318df80f44
0aea7e23c016a2bb0b48c1779044b285
URL

http[:]//103[.]5[.]144[.]50[:]8000/rev[.]exe
http[:]//27[.]102[.]115[.]154[:]8000/revsocks[.]exe
https[:]//drive[.]google[.]com/uc?export=download&id=1B0Iw3GYJvI-jwpEwY7wJ-8UWBhSTwgD5
IP

103[.]5[.]144[.]26
159[.]100[.]13[.]216
206[.]206[.]127[.]152
216[.]107[.]137[.]73
64[.]49[.]14[.]181