신종 정보 탈취 악성코드 LummaC2, 불법 크랙 위장 유포

신종 정보 탈취 악성코드인 “LummaC2″가 크랙, 시리얼 등의 불법 프로그램을 위장하여 유포 중이다.

동일한 방식으로 CryptBot, RedLine, Vidar, RecordBreaker(Raccoon V2) 등의 악성코드가 유포되며 본 블로그를 통하여 여러 차례 소개하였다.

LummaC2 Stealer는 올해 초부터 다크웹에서 판매되는 것으로 보이며 보이며, 올해 3월부터는 크랙 위장 공격 그룹에 의해 유포 중이다. 해당 방식으로의 악성코드 유포는 대부분 RecordBreaker(Raccoon V2) 악성코드가 사용되나, LummaC2 Stealer가 종종 모습을 보이고 있다. 3월 3일 최초 발견되었으며, 3월 12일, 3월 20일에도 유포된 이력이 확인되어 약 일주일 간격으로 모습을 보이고 있다.

 


#유포 방식

유명 소프트웨어의 Crack, Serial 등을 검색하여 악성 사이트로 접속한다. 해당 사이트에서 다운로드 버튼을 누를 경우 다수의 리디렉션을 거쳐 악성코드 유포 페이지에 도달한다. 해당 페이지에 명시된 URL에 접속하거나, 다운로드 버튼을 누를 경우 압축된 악성코드를 다운로드한다. 공격자 자체 개설 서버를 통하거나 MediaFire, MEGA 등의 서비스를 활용하기도 한다.

본 방식으로 최초 유포된 샘플은 “NewSetupV4-Pass-55551.rar” 이름의 압축 파일이 다운로드되며, 내부에 “setup.rar” 이름의 또 다른 압축 파일이 존재하고 이를 해제 시 “setupfile.exe” 파일명의 LummaC2 악성코드가 생성된다.

유포 파일명으로 보아 아래 사진의 페이지로부터 다운로드 되었을 것으로 추정된다. 현재는 해당 페이지에서 Vidar 악성코드가 유포 중이다.

그림1. 악성코드 유포 페이지 예시

크랙으로 위장하여 유포된 LummaC2는 지금까지 3가지 유형으로 유포되었다. 각 유형별 대표 샘플 정보는 다음과 같다.

  1. CryptBot과 동일한 외형으로, ClipBanker를 함께 설치하는 유형

    File Name

    Compressed

    NewFileV1-Pass_10101.rar

    Executable

    setup.exe

    MD5

    3f4533e8364f96b90d7fcb413fc8b57c

    File Size

    328476672

    Timestamp

    2023‎/0‎3/0‎4‎ 05:22:08 UTC




  2. C2로부터 악성 DLL을 다운로드하는 유형

    File Name

    Compressed

    FullFile1-2022-PasS.rar

    Executable

    Setup.exe

    MD5

    9355477f043a6c5c01fcb4cc6a2ea851

    File Size

    779218610

    Timestamp

    Manipulated, Collected on 2023‎/0‎3/12‎ 11:02:59 KST

  3. 유포 파일 자체로 LummaC2 악성코드인 유형

    File Name

    Compressed

    NewSetupV4-Pass-55551.rar

    Executable

    setupfile.exe

    MD5

    4589fa36cb0a7210fe79c9a02966a320

    File Size

    762345984

    Timestamp

    2023‎/0‎3/02‎ 10:32:26 UTC

LummaC2 샘플들은 아래와 같은 특징을 가진다.

#분석 방해

  • 문자열 난독화

악성 행위에 사용되는 문자열 사이에 “edx765” 문자열을 다수 끼워 넣어 난독화하였다.

그림2. 문자열 난독화
  • 코드 난독화

대부분의 코드에서, 특정 변수에 값을 변경해가며 수많은 조건문, Jump문을 사용하는 방식으로 실행 흐름을 제어한다. 분석을 어렵게 하기 위함으로 풀이된다.

그림3. 코드 난독화 예시
  • 동적 API 호출

악성 행위와 관련된 API 사용 시 Import Table, 또는 GetProcAddress 등의 함수를 사용하지 않고 로드된 대상 DLL에 직접 접근하여 API 주소를 얻는다. 악성코드는 함수명을 연산한 값만 가지고 있으며 대상 DLL의 Export Table에 정의된 함수명 중 동일 값이 나오는 함수를 찾는 방식이다. 행위에 사용되는 API를 숨기기 위해 악성코드에서 자주 사용되는 방식이다.

그림4. 동적 API 호출
  • Anti-Sandbox

실행 초기, 샌드박스 우회 행위로 보이는 3가지 함수가 존재한다. 각 함수에서 특정 조건에 부합할 경우 무한 재귀 함수를 실행하여 Crash와 함께 프로세스가 종료된다.

  1. DLL 로딩 확인

“ters-alreq-std-v19.dll” 이름의 DLL 로드가 성공할 경우 Crash가 발생한다. 이 DLL은 일반적인 시스템에는 없기 때문에 특정 분석 환경(샌드박스 등)을 우회할 목적이거나 Kill-Switch 등으로 사용될 것으로 추정된다.

그림5. DLL 로딩 확인
  1. Sleep 함수 우회 확인

Sleep() 함수와 GetSystemTimeAsFileTime() 함수를 사용하여 Sleep 함수 사이 경과 시간 값을 확인한다. 만일 Sleep 함수가 무시되었다면 Crash가 발생한다.

그림6. Sleep 우회 확인
  1. 계정명, 컴퓨터명 확인

계정명과 컴퓨터명을 연산 후 특정 값과 비교하여 일치할 경우 Crash를 발생시킨다. 비교 대상 값은 0x56CF7626, 0xB09406C7이며 이는 각각 “JohnDoe”, “HAL9TH”로 확인되었다. 해당 계정명과 컴퓨터명은 Windows Defender 에뮬레이터 환경값으로 알려져 있으며 동일 공격으로 유포되는 Vidar 악성코드에도 존재하는 기능이다.

하지만 해당 기능은 정상적으로 동작하지 않는다. 유저명 확인은 제대로 구현되어 있지만, 컴퓨터명 문자열 길이 비교에서 6이 아닌 7과 비교한다.(GetComputerNameW 함수는 GetUserNameW와는 다르게, 문자열 길이 반환 시 Null 문자를 포함하지 않음) 이는 악성코드 제작자의 실수로 추정된다.

그림7. 컴퓨터명 확인 코드

만일 공격자의 의도 대로 구성되었을 경우 해당 컴퓨터명, 계정명의 환경에서는 Crash 가 발생할 것이다.

 

#C2 통신

C2로부터 명령이나 설정값 등을 수신하는 행위는 확인되지 않는다. 탈취 대상은 악성코드 자체에 지정되어 있으며 유포 샘플마다 조금씩 다르다.

각각의 정보를 수집할 때마다 ZIP 압축하여 다음과 같은 형식으로 전송한다. C2 전송 시에는 HTTP POST 방식을 사용하며 Path는 “/c2sock”, User-Agent는 “TeslaBrowser/5.5” 이다.

그림8. C2 전송 데이터 예시

hwid”는 감염 PC의 고유 식별자이며 “pid”는 탈취 정보 종류에 따라 1~3의 숫자로 지정된다. “lid”Lumma ID로 설명되며, 유포 악성코드의 캠페인 식별자로 사용될 것으로 추정된다. 현재까지 유포에 사용된 lid는 다음과 같다.

  • iOqpIq
  • RIIoQe–p5
  • RIIoQe–p10

 

C2 전송 데이터 중 다음 정보가 포함된다. 악성코드의 이름과, 빌드 버전으로 추정되는 문자열이다. 최근(3월 20일) 유포 중인 샘플 또한 동일한 빌드 버전이다.

“LummaC2, Build 20233101”

그림9. C2 전송 데이터 생성 코드

#탈취 대상

실행 흐름과 문자열을 기반으로 탈취 대상 정보를 분석한 결과는 다음과 같다. 탈취 대상 목록은 샘플별로 상이할 수 있다.

  1. Browser 데이터
    Chrome, Chromium, Edge, Kometa, Opera Stable, Opera GX Stable, Opera Neon, Brave-Browser, Comodo Dragon, CocCoc, Firefox
  2. Browser 확장 프로그램
    MetaMask, TronLink, RoninWallet, BinanceChainWallet, Yoroi, Nifty, Math, Coinbase, Guarda, EQUAL, JaxxLiberty, BitApp, iWlt, EnKrypt, Wombat, MEWCX, Guild, Saturn, NeoLine, Clover, Liquality, TerraStation, Keplr, Sollet, Auro, Polymesh, ICONex, Nabox, KHC, Temple, TezBox, DAppPlay, BitClip, SteemKeychain, NashExtension, HyconLiteClient, ZilPay, Coin98, Authenticator, Cyano, Byone, OneKey, Leaf, Authy, EOSAuthenticator, GAuthAuthenticator, TrezorPasswordManager, Phantom
  3. 암호화폐 지갑 프로그램
    Binance, Electrum, Ethereum, Exodus, Ledger Live, Atomic, Coinomi
  4. 스크린샷
  5. %UserProfile% 하위 2단계 깊이 까지의 모든 txt 파일
  6. 시스템 정보
  7. 설치된 프로그램 정보
  8. 메일 클라이언트
    Windows Mail, The Bat, Thunderbird, Pegasus, Mailbird, eM Client
  9. 기타 응용 프로그램
    AnyDesk, FileZilla, KeePass, Steam, Telegram,

[IOC 정보]

  • MD5

4589fa36cb0a7210fe79c9a02966a320 (Infostealer/Win.LummaC2.C5394249, 2023.03.13.02)
3f4533e8364f96b90d7fcb413fc8b57c (Infostealer/Win.CryptBot.C5360421, 2023.01.18.00)
9355477f043a6c5c01fcb4cc6a2ea851 (Infostealer/Win.LummaC2.C5394246, 2023.03.13.02)
d2203e004c5b22e2d6a84fcbef36c454 (Infostealer/Win.LummaC2.R562894, 2023.03.15.04)
a4c1335750fa105529f1ddea90b54117 (Infostealer/Win.LummaC2.R562894, 2023.03.21.03)
bf0b20fd593a5e886afef2cad348b079 (Trojan/Win.Generic.C5397321, 2023.03.20.00)

86c8d08a436374893e2280e05aec2f26 (Trojan/Scrip.Clipbanker, 2023.03.21.03)

  • C2

hxxp://82.118.23.50/c2sock

Categories:악성코드 정보

5 2 votes
별점 주기
Subscribe
Notify of
guest

0 댓글
Inline Feedbacks
View all comments