Gamaredon’s GammaLoad Uses Three-Stage Loader Chain to Deliver GammaSteel

· Original article ↗

Summary

Sekoia analyzes Gamaredon’s three-stage GammaLoad chain, which uses registry-cached C2 addresses and trusted services to retrieve payloads, establish scheduled-task execution, and load the GammaSteel stealer in memory.

Key points

  • GammaLoad consists of three VBScript loader stages that ultimately retrieve and execute the GammaSteel stealer.
  • The first stage fingerprints infected hosts and checks cached C2 URLs in the Windows registry before using Telegraph, Telegram, or Check-Host as dead-drop resolvers.
  • Loaders store active C2 configuration under HKCU\Console and use randomized request paths and crafted User-Agent strings.
  • The second stage writes a loader to an Alternate Data Stream in %TEMP% and creates a scheduled task to run it every 11 minutes.
  • The third stage launches hidden PowerShell, retrieves a payload, Base64-decodes and XOR-decrypts it, then executes it in memory.
  • Sekoia reports that the loaders themselves do not survive a reboot; persistence is likely established separately by Gamaredon.
  • The activity is attributed to Gamaredon, an intrusion set described as FSB-operated and historically targeting Ukrainian government and critical infrastructure.

Article Details

Attack Vectors
  • GammaLoad is delivered as a multi-stage chain of VBScript loaders, with earlier stages attributed to GammaWorm or GammaPhish.
  • The loaders retrieve subsequent payloads through cached C2 URLs or Dead Drop Resolvers hosted on Telegraph, Telegram, and Check-Host.
  • The second stage writes a payload to an Alternate Data Stream in %TEMP% and creates a scheduled task to execute it every 11 minutes.
  • The third stage launches hidden PowerShell, retrieves an encoded payload over HTTP, decodes and XOR-decrypts it, and executes it in memory.
Defensive Notes
  • Monitor HKCU\Console values HistoryURL, WindowsResponby, CloudURL, and IpURL for suspicious C2 configuration.
  • Monitor for the scheduled task \Windows\ApplicationData\DsSvcCleanup and execution of an Alternate Data Stream in %TEMP%.
  • Inspect hidden PowerShell executions using -nol, -nop, and -encodedcommand, including scripts that download, Base64-decode, XOR-decrypt, and execute content in memory.
  • Review outbound requests to the listed C2 and Dead Drop Resolver indicators, including suspicious traffic using legitimate third-party services to retrieve C2 addresses.

Indicators of compromise

TypeIndicatorContext
DOMAINbold[.]zsjtn41091[.]workers[.]devC2 domain listed among GammaLoad indicators.
DOMAINdayobtvoyu[.]ruHardcoded domain used by the second-stage dropper as a Dead Drop Resolver.
DOMAINexemption-transportation-kilometers-berkeley[.]trycloudflare[.]comC2 domain formed by appending the Dead Drop Resolver response string to .trycloudflare[.]com.
DOMAINpdt-resulting-hospitality-mesh[.]trycloudflare[.]comC2 domain listed among GammaLoad indicators.
DOMAINsweet[.]csxvl00328[.]workers[.]devAttacker-used C2 hostname serving the second-stage loader.
DOMAINvids-road-christina-guards[.]trycloudflare[.]comC2 domain written to the registry and used to retrieve the next loader.
DOMAINwandering[.]lexkv18877[.]workers[.]devC2 domain listed among GammaLoad indicators.
DOMAINwhite[.]febul89300[.]workers[.]devC2 domain listed among GammaLoad indicators.
IPV4139[.]162[.]90[.]180C2 IP address listed among GammaLoad indicators.
IPV4144[.]172[.]88[.]24C2 address returned by a Dead Drop Resolver.
IPV4172[.]86[.]127[.]216C2 IP address listed among GammaLoad indicators.
IPV4172[.]86[.]72[.]243C2 address written to the registry by the second-stage dropper.
IPV4172[.]86[.]76[.]132C2 address returned by a Dead Drop Resolver and stored in the registry.
IPV489[.]185[.]82[.]188C2 IP address listed among GammaLoad indicators.
MD5a2c6e01001c62f6198e31a9d603977c6MD5 hash of the second-stage GammaLoad dropper.
MD5bf94f4056627907d86ce1cae8b44c67aMD5 hash of the first-stage GammaLoad loader.
MD5d2a6009587b3cb73355c2d1e53d5cdfaMD5 hash of the third-stage GammaLoad loader.
URLhxxp[:]//check-host[.]net/ip-info?host=sngredient[.]selltosell[.]ruDead Drop Resolver URL listed among GammaLoad indicators.
URLhxxp[:]//iguessillgoout[.]myvnc[.]comC2 URL listed among GammaLoad indicators.
URLhxxp[:]//lateinsomnia[.]ruC2 URL listed among GammaLoad indicators.
URLhxxps[:]//check-host[.]net/ip-info?host=norosta[.]ruDead Drop Resolver URL listed among GammaLoad indicators.
URLhxxps[:]//check-host[.]net/ip-info?host=snterval[.]selltosell[.]ruDead Drop Resolver request used to obtain a C2 address.
URLhxxps[:]//e097[.]yggjf81487[.]workers[.]dev/libertarianC2 URL retrieved from a Dead Drop Resolver.
URLhxxps[:]//insight-sweet-drainage-appreciated[.]trycloudflare[.]com/log/C2 URL queried to retrieve the final GammaSteel payload.
URLhxxps[:]//lesma[.]eu/qowuzeco?rawDead Drop Resolver URL listed among GammaLoad indicators.
URLhxxps[:]//surgud[.]online/clonusC2 URL listed among GammaLoad indicators.
URLhxxps[:]//sweet[.]csxvl00328[.]workers[.]dev/vehisC2 URL used to deliver the second-stage VBScript loader.
URLhxxps[:]//te[.]legra[.]ph/auuoyeipkudjgjnw-01-17Dead Drop Resolver URL listed among GammaLoad indicators.
URLhxxps[:]//te[.]legra[.]ph/fxpppscdlw-12-27Dead Drop Resolver URL used to retrieve a C2 address.
URLhxxps[:]//telegram[.]me/s/akatachiDead Drop Resolver URL used to retrieve a C2 address.
URLhxxps[:]//telegram[.]me/s/oberfarirDead Drop Resolver URL used to retrieve a C2 address.
URLhxxps[:]//www[.]telegram[.]me/s/bicotipusDead Drop Resolver URL listed among GammaLoad indicators.

MITRE ATT&CK

People

Threat Actors

Malware

Products

Tools

Countries

Industries

Related Articles