GUI 속에 숨어 있는 짐승, Beast 랜섬웨어 악성코드

GUI 속에 숨어 있는 짐승, Beast 랜섬웨어 악성코드

Beast 랜섬웨어 그룹은 Monster로 알려진 변종에서 진화하여 활동을 시작한 랜섬웨어 그룹이다. 2025년 2월에 RaaS로 등장했으나, 7월에 Tor 기반 데이터 유출 사이트를 공식적으로 런칭했다. 2025년 8월 기준으로 미국, 유럽, 아시아, 라틴아메리카 등지의 16개 피해 조직을 공개했다. 피해 조직들은 제조업, 건설업, 의료, 비즈니스 서비스, 교육 등 다양한 산업 분야에 걸쳐 있다. 각 피해자별로 개별 협상 이메일이 기재되어 있어, 실제 데이터 유출 및 금전 요구가 다양한 제휴자들에 의해 독립적으로 수행되는 구조임을 알 수 있다. 피해 규모나 몸값 요구 금액의 구체적인 범위에 대해서는 공식적으로 공개된 자료가 없으며, 현재 Beast 그룹은 지속적이고 활발한 활동을 이어가고 있다.

주요 유포 방식으로는 침해된 시스템 내에서 활성 SMB 포트를 스캔하여 네트워크상의 공유 폴더로 확산을 시도하는 방법이 사용된다. 피싱 이메일의 경우 저작권 침해 경고나 가짜 이력서로 위장하며, Vidar 인포스틸러와 함께 배포되기도 한다.


[그림 1] BEAST 랜섬웨어 그룹의 DLS

 

초기 루틴

1. 공격 대상 시스템 필터링

GetLocaleInfo, GetSystemDefaultUILanguage 함수를 이용하여 해당 랜섬웨어 악성코드가 동작하는 대상 국가를 필터링한다. 각 WINAPI로부터 시스템의 기본 설정된 국가나 언어 설정을 기반으로, 공격자가 사전에 명시한 지역일 경우에는 랜섬웨어 행위를 수행하지 않고 곧바로 종료된다.

 

WINAPI

제외 국가

GetLocaleInfo 아르메니아, 아제르바이잔, 벨라루스, 조지아, 카자흐스탄, 키르기스스탄, 몰도바, 러시아, 타지키스탄, 투르크메니스탄, 우크라이나, 우즈베키스탄, 아르헨티나, 키프로스, 베트남
GetSystemDefaultUILanguage 아르메니아, 아제르바이잔(라틴·키릴), 벨라루스, 조지아, 카자흐스탄, 키르기스스탄, 몰도바, 러시아(러시아·몰도바), 타지키스탄, 투르크메니스탄, 우크라이나, 우즈베키스탄(라틴·키릴)

[표 1] 공격 대상 시스템 필터링 목록

 

두 API에서 제외되는 국가들은 대부분 구(舊) 소련에 속했거나 러시아의 정치·경제적 영향권에 있는 지역이다. 아르메니아, 아제르바이잔, 벨라루스, 조지아, 카자흐스탄, 키르기스스탄, 몰도바, 러시아, 타지키스탄, 투르크메니스탄, 우크라이나, 우즈베키스탄 등은 모두 과거 소비에트 연방 구성국으로, 현재도 CIS(독립국가연합) 혹은 러시아 주도의 지역 협력체에 포함된다.

따라서 이러한 국가들을 코드 상에서 제외하거나 실행을 회피하는 로직은 일반적으로 “러시아 및 CIS 지역 사용자는 감염·탐지 리스크가 높으므로 악성코드가 실행을 회피하는 지역 제한” 목적으로 사용되는 것으로 해석된다.

 

2. .data 섹션 복호화

프로그램은 실행 시 .data 영역에서 “!!!CONFIG!!!”와 “!!!PASSWORD!!!” 문자열의 존재 여부를 확인하며, 두 문자열이 모두 존재하지 않을 경우 .data 영역의 상위 0x30바이트 데이터를 추출하여 특정 문자열과 결합한 값을 활용해 ChaCha20 알고리즘을 구성한다. 이를 기반으로 .data 영역의 나머지 암호화된 데이터를 복호화한다.


[그림 2] ChaCha20 알고리즘의 구성요소 “expand 32-byte k”


[그림 3] ChaCha20 알고리즘으로 복호화되는 .data 섹션

 

복호화 하기 전 “!!!CONFIG!!!”와 “!!!PASSWORD!!!” 문자열이 존재하는 경우에는 .data 영역의 복호화 과정이 생략되고 인자 값을 확인하는 절차가 추가된다. 인자 값으로 설정 파일이나 패스워드를 전달받아 실행되는 버전도 존재할 것으로 추정된다.
 

암호화 준비

1. 자가복제 및 Run키 등록

랜섬웨어 악성코드임에도 불구하고 특정 조건(Flag 설정 여부)에서 자가복제하여 Run키에 등록하는 방식으로 지속성을 유지하는 로직을 가지고 있다.

 

종류

경로

자가복제

%ALLUSERPROFILE%\{GUID-like string}\gugbuhan.exe

Run키

HKCU\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run

[표 2] 대상 경로

2. 확장자 구성

Beast 랜섬웨어 악성코드에 감염된 파일은 {원본파일명}.{GUID-like-string}.{확장자} 형태를 가진다. GUID-like 문자열은 악성코드 내부의 SHA-512 처리로 생성된 18바이트 식별자이며, 이 전체가 확장자 또는 파일명 식별자로 사용된다.

18바이트 중 상위 9바이트는 호스트의 시스템 정보(환경·식별자 등)를 합쳐 SHA-512로 해시한 결과에서 추출한 값으로 환경마다 달라진다. 하위 9바이트는 바이너리에 하드코딩된 고정값으로 생성되며, 이에 따라 같은 랜섬웨어 악성코드가 다른 환경에서 동작할 경우 동일한 하위 9바이트를 가진다.

제일 마지막에 추가되는 확장자는 복호화된 .data 영역에 미리 정의되어 있으며, 런타임에 해당 문자열을 획득하여 사용한다.

 

3. ShadowCopy 삭제

랜섬웨어 피해 복구의 핵심인 ShadowCopy를 삭제하여 파일 복구를 방해한다. 공격자는 WMI 쿼리를 사용하여 해당 기능을 구현했다. 우선, IWbemLocator, IWbemContext의 CLSID를 기반으로 CoCreateInstance()를 호출한다. 이후 획득한 COM 인터페이스를 이용하여 아래와 같은 흐름으로 메소드가 호출된다.

이러한 방식은 COM 객체를 이용하여 WMI 쿼리를 발생시키는 방식으로, “ROOT\CIMV2” 경로에 접근하여 ExecQuery()함수를 통해 시스템에 존재하는 모든 ShadowCopy 클래스를 열거할 수 있다. 이후 각각의 경로를 Get() 함수로부터 획득하여 ShadowCopy 클래스를 DeleteInstance() 함수를 통해 삭제한다.

index Method 주요 Argument

1

IWbemContext::SetValue() __ProviderArchitecture, 64

2

IWbemLocator::ConnectServer() ROOT\\CIMV2

3

IWbemServices::ExecQuery() SELECT * FROM Win32_ShadowCopy

4

IWbemClassObject::Get() “__PATH”

5

IWbemServices::DeleteInstance()

[표 3] ShadowCopy를 삭제하기 위해 호출되는 COM 인터페이스

 

 

4. Process, Service 종료

암호화 성공률과 피해를 극대화 하기 위해, 파일을 암호화할 때 걸림돌 역할을 수행하는 프로세스와 서비스들을 종료한다. 종료를 시도하는 항목을 살펴보면 데이터베이스 계열과 백업 및 복구와 관련된 항목, 안티바이러스 제품, 오피스, 파일 편집기, 메일 등의 항목이 존재하는 것으로 확인된다

Target Process

agntsvc.exe, agntsvc.exeagntsvc.exe, agntsvc.exeencsvc.exe, agntsvc.exeisqlplussvc.exe,

apache.exe, backup.exe, dbeng50.exe, dbsnmp.exe, encsvc.exe, excel.exe, firefox.exe,

firefoxconfig.exe, infopath.exe, isqlplussvc.exe, kingdee.exe, msaccess.exe, msftesql.exe,

mspub.exe, mydesktopqos.exe, mydesktopservice.exe, mysqld-nt.exe, mysqld-opt.exe,

mysqld.exe, ncsvc.exe, notepad.exe, ocautoupds.exe, ocomm.exe, ocssd.exe, onenote.exe,

oracle.exe, outlook.exe, powerpnt.exe, sqbcoreservice.exe, sql.exe, sqlagent.exe,

sqlbrowser.exe, sqlserver.exe, sqlservr.exe, sqlwriter.exe, steam.exe, synctime.exe,

tbirdconfig.exe, thebat.exe, thunderbird.exe, tomcat.exe, tomcat6.exe, u8.exe, ufida.exe,

visio.exe, winword.exe, wordpad.exe, xfssvccon.exe

[표 4] 종료 대상 프로세스 목록

 

Target Service

AcronisAgent, AcrSch2Svc, backup, BackupExecAgentAccelerator,

BackupExecAgentBrowser, BackupExecDiveciMediaService, BackupExecJobEngine,

BackupExecManagementService, BackupExecRPCService, BackupExecVSSProvider,

CAARCUpdateSvc, CASAD2DWebSvc, ccEvtMgr, ccSetMgr, DefWatch, GxBlr, GxCIMgr,

GxCVD, GxFWD, GxVss, Intuit.QuickBooks.FCS, memtas, mepocs, msexchange,

PDVFSService, QBCFMonitorService, QBFCService, QBIDPService, RTVscan, SavRoam,

sophos, sql, stc_raw_agent, svc$, veeam, VeeamDeploymentService, VeeamNFSSvc,

VeeamTransportSvc, VSNAPVSS, vss, wscsvc, wuauserv, YooBackup, YooIT,

zhudongfangyu, MSSQLFDLauncher, MSSQLSERVER, SQLSERVERAGENT, SQLBrowser,

SQLTELEMETRY, MsDtsServer130, SSISTELEMETRY130, SQLWriter,

MSSQL$VEEAMSQL2012, SQLAgent$VEEAMSQL2012, MSSQL, SQLAgent,

MSSQLServerADHelper100, MSSQLServerOLAPService, MsDtsServer100, ReportServer,

SQLTELEMETRY$HL, TMBMServer, MSSQL$PROGID, MSSQL$WOLTERSKLUWER,

SQLAgent$PROGID, SQLAgent$WOLTERSKLUWER, MSSQLFDLauncher$OPTIMA,

MSSQL$OPTIMA, SQLAgent$OPTIMA, ReportServer$OPTIMA, msftesql$SQLEXPRESS,

postgresql-x64-9.4

[표 5] 종료 대상 서비스 목록

5. GUI

Beast 랜섬웨어 악성코드는 Debug모드 형태로 GUI 창을 활성화할 수 있다. [Ctrl+Alt+666] 단축키를 통해 창에 진입할 수 있다. 해당 창에서는 암호화 대상 폴더를 지정할 수 있으며 “암호화 준비”단계에서 다루었던 기능 중 다수를 수동으로 실행할 수 있다. 또한, 현재 암호화 진행 상황을 실시간으로 확인이 가능하다.


[그림 4] Beast 랜섬웨어 GUI 창

 

암호화

파일은 chacha20 암호화 알고리즘을 이용하여 암호화된다.


[그림 5] chacha20 암호화

 

암호화가 완료된 파일은 파일의 마지막에 8byte 크기의 Magic 값을 갖는다. 이 Magic 값은 암호화 대상 파일이 선정되었을 경우 파일 데이터의 마지막 부분과 비교하여 이미 암호화된 파일인지 판단하기 위해 사용된다. 해당 Magic 값은 악성코드 내부 로직에 하드코딩 되어있으며 버전에 따라 바뀔 수 있다.

  • Magic(Hex) : 66 6B EA 57 1A BE 16 66

 위 Magic 값을 포함하여, 암호화가 완료된 파일은 원본 크기보다 0xA0만큼 크기가 증가한다. 암호화에 사용된 값들이 Metadata 형태로 파일의 끝에 삽입되기 때문이다. Metadata에는 파일의 원본 크기, 암호화에 사용된 키 값과 기타 복호화에 필요한 데이터들이 함께 저장된다.


[그림 6] 암호화된 파일의 내부 구조

 

최종적으로 암호화된 파일의 확장자 변경은 MoveFile() 함수를 이용해 진행된다.


[그림 7] 확장자 변경 방식(MoveFile)

 

최근 Beast 랜섬웨어는 다양한 기업 환경을 대상으로 활발히 유포되고 있으며, 특정 산업군에 국한되지 않고 광범위한 시스템을 공격 대상으로 삼고 있다. 본 보고서에서 분석한 바와 같이 Beast 랜섬웨어는 내부에 고정된 공개키 및 ChaCha20 기반의 하이브리드 암호화 알고리즘을 사용하여 파일을 암호화하며, 복호화에 필요한 개인키는 공격자 측 서버에만 존재한다. 또한, 암호화된 파일에는 0xA0 크기의 메타데이터가 삽입되어 복호화 검증용 정보가 포함되며, ZIP 구조를 포함한 대용량 파일에 대해서도 일부 블록 암호화 및 헤더 덮어쓰기 방식을 적용하여 데이터 복구 가능성을 차단한다.
이러한 특성으로 인해, 암호화 알고리즘 또는 키 관리 체계 자체가 무력화되지 않는 한 복호화는 사실상 불가능하다. 따라서 기업은 피해 발생 이후 복호화를 시도하기보다는, 사전에 시스템 취약점 점검, 백업 체계 강화, 외부 접근 통제, 중요 자산의 네트워크 분리 및 정기 보안 점검을 철저히 수행하여 감염 가능성을 최소화해야 한다. 
Beast 랜섬웨어는 단순한 파일 암호화 수준을 넘어, 구조적 복구 방지 기법과 정보 유출을 병행하는 복합형 공격 형태를 보이므로, 조기 탐지 및 신속한 격리 대응 체계를 갖추는 것이 무엇보다 중요하다.

 

MD5

059ac4569026c1b74e541d98b6240574
11395b5231b765348d210660ea1f68e1
2623a27403f3c247bf0f404bf249ac02
2a976f4af95e9275056cd534d55e4011
3b5950325efd4aa6865a776daed6a515
URL

https[:]//iplogger[.]co/1v1i85[.]torrent