
HEAVYGRAM: A Telegram-based Surveillance Backdoor Linked to Handala Hack
Group-IB documents previously undocumented samples of HEAVYGRAM, a Python/PyInstaller-based Windows backdoor that uses the Telegram bot API for command-and-control, screen/audio capture, data exfiltration, and DLL side-loading, alongside the related CRUDEEXCLUDE loader that adds Windows Defender exclusions. The research corroborates and extends a March 2026 US DOJ affidavit and FBI FLASH report, attributing the malware with moderate confidence to the Handala Hack persona — assessed as a false-flag "hacktivist" front for Void Manticore (aka Storm-0842/Banished Kitten), operating on behalf of Iran's MOIS — used since Fall 2023 against Iranian dissidents, journalists, and critics of the Iranian government via Telegram-delivered, Delphi-packaged lures (fake KeePass, Telegram, Pictory apps). It details four infection-chain variants (WSF/VBS downloaders, HTA Telegram-polling scripts, Delphi droppers with embedded archives), the implant's command prefixes (@@/**/##) and attachment handlers, dual-bot C2 configurations, and provides IOCs and detection/hardening recommendations.
What it is
HEAVYGRAM is a Python/PyInstaller Windows backdoor used by Handala Hack (assessed as a false-flag front for Iran-aligned Void Manticore/Storm-0842) since at least September 13, 2023. The companion loader CRUDEEXCLUDE adds Windows Defender exclusions ahead of HEAVYGRAM deployment. Group-IB's research extends a March 19, 2026 US DOJ affidavit and March 20, 2026 FBI FLASH report, adding 29 newly identified samples.
How it works
Delivery occurs via four variants, all requiring the C: drive to exceed 50GB before executing (likely a sandbox-evasion check):
- WSF/VBS scripts running a PowerShell cradle that downloads a decoy PPTX and a ZIP from Vultr Object Storage, extracting the implant (
RuntimeSSH.exe) toC:\ProgramData\ssh-cache-default\{guid}\. - HTA files with an embedded decoy MP4, running VBScript that checks in via Telegram bot API, then polls
getUpdatesin an infinite loop; aBringContentfunction downloads attachments and either extracts a ZIP toC:\ProgramData\Kee_Passand launchesKeePass.exe, or runs the file directly if non-exe. - Delphi
.scrdroppers (e.g., a Persian-named "Supplementary and expelled list" screensaver) with an embedded RCDATA resource dropped asRuntime_SSH.zip, extracting and launchingRuntimeSSH.exe, paired with a decoy document. - CRUDEEXCLUDE Delphi executables mimicking Pictory/Telegram UIs, which add three Defender exclusion paths via PowerShell, decode a base64 resource from
%APPDATA%\downloaded_file26.txtintoExtractedFile26.dat, rename itFile26.zip, extract toC:\ProgramData\SMQDServicePackages\488ht1-8ww648q, and launch the implant viaCreateProcessW.
The persistent implant stores config at %APPDATA%\Config\config.xml and uses a mutex for single-instance enforcement. Two Telegram-driven handlers: analyze_command routes text by prefix — @@ runs arbitrary commands via os.popen and returns output; ** writes message body to C:\ProgramData\ur.txt; ## triggers a backdoor command suite. downloader handles attachments by filename pattern: DLLs prefixed dev/bit/kee are side-loaded by copying the legitimate bthudtask.exe into a spoofed C:\Windows \SysWOW64\ (trailing space) directory, then deleting the spoofed path after execution; ZIPs prefixed reg extract to the SMQDServicePackages path; generic ZIPs/EXEs land in %APPDATA%\SMQDService. C2 uses send_initial_message (beacons the full domain name) and send_health_msg (24-hour heartbeat), over either single-bot or dual-bot (check-in bot + separate logging/polling bot) Telegram configurations.
Preconditions / Affected
Windows hosts; initial access requires the victim to execute a first-stage file delivered via Telegram social engineering (masquerading as Telegram, KeePass, WhatsApp, or Pictory apps). Sandbox/VM evasion check requires C: drive >50GB to proceed.
What to do
- Isolate hosts matching listed IOCs (file hashes and network indicators are provided on the page).
- Audit
HKCU\Software\Microsoft\Windows\CurrentVersion\Runand the HKLM equivalent for unauthorized entries. - Search for the spoofed directory pattern
C:\Windows \(trailing space). - Review outbound traffic to
api.telegram.orgfor anomalous bot API calls; block/monitor this endpoint at the perimeter where Telegram isn't a sanctioned business tool. - Deploy detection for
bthudtask.exeexecution outside its legitimate path, directory creation with trailing spaces,os.popen/shell invocations from non-standard processes, and unauthorized access to%APPDATA%\Telegram Desktop/TelegramMessengerLLP. - Restrict execution from
%APPDATA%,C:\ProgramData, and other user-writable paths via application control; enforce code-signing validation to block unsigned DLL side-loading.
Caveats
Attribution to Handala Hack is held at moderate confidence, based on the DOJ affidavit's probable-cause linkage, Iran International's July 2025 confirmation of Telegram-account compromises aligning with HEAVYGRAM's session-data exfiltration capability, and tradecraft overlap (Vultr Object Storage, Persian-language decoys, Delphi tooling) — not direct technical proof. Much of the identified Telegram C2 infrastructure (bots, users, groups) remains live as of 2026 rather than taken down, though some accounts have since been taken over by unrelated actors.
Organisations named here
- Banished Kitten
- bthudtask.exe
- Iran International
- Karma
- KarmaBelow80
- MOIS
- Operation Epic Fury
- Red Sandstorm
- RuntimeSSH.exe
- Storm-0842
Technologies named here
- Group-IB Threat Intelligence Portal
- Vultr Object Storage
- Telegram
- KeePass
- PowerShell
- Pictory
- Telegram Bot API
- WSF/VBS scripts
- Microsoft Windows Defender
- HTML Application files
- PyInstaller
- Python
- Windows
- Windows Defender
- Delphi
Techniques named here
- Social engineering via messaging apps
- Masquerading as legitimate applications
- Multi-stage malware delivery
- PowerShell-based download and execution cradles
- Defense evasion via Windows Defender exclusions
- DLL sideloading
- Persistence via Windows registry
- Mutex-based single-instance enforcement and lockfile checks
- Command execution via os.popen
- Data exfiltration via Telegram
- Embedded resource/archive extraction
- Anti-analysis/environment checks
- Decoy documents/content
- Beaconing/heartbeat C2
Threat actors named here
- Handala Hack
- Void Manticore
- Homeland Justice
- Karma / KarmaBelow80
- HEAVYGRAM
- CRUDEEXCLUDE
Related in Threat Intel
Reverse Engineering the Six Stages of MacSync Stealer and RAT
AI-Coded Malware | Analyzing Vibe-Coded AD Enumeration | Huntress
