JS.MonoGlyphRAT is a newly identified JavaScript backdoor and loader that is being delivered through phishing lures such as purchase orders, quotes, and business proposals, primarily targeting U.S. organizations. It uses monoglyph obfuscation, registry-based persistence, and an HTTP C2 protocol to maintain access, collect host data, and download additional payloads. #JSMonoGlyphRAT #ANYRUN #VirusTotal #ThreatFox
Keypoints
- JS.MonoGlyphRAT is an active JavaScript-based backdoor/loader identified by ANY.RUN researchers.
- The malware is primarily targeting organizations in the United States, especially technology, MSSP, telecommunications, and education sectors.
- Infection begins when a victim opens a disguised .js attachment presented as a purchase order, quote, RFP, or similar business document.
- The malware uses monoglyph-style obfuscation, making its JavaScript difficult to analyze and reducing the effectiveness of static detection.
- Persistence is achieved through the HKCU Run registry key, and the malware can communicate with its C2 server over HTTP using custom headers.
- MonoGlyphRAT can collect system information, enumerate processes, execute PowerShell commands, download further payloads, and run in-memory .NET stages.
- Public threat feeds currently classify related activity as unknown malware, so behavioral detection and sandbox analysis are critical for defense.
MITRE Techniques
- [T1204.002] User Execution: Malicious File – The attack starts when a user opens a disguised JavaScript attachment (‘user executes a JS script disguised as a business document’).
- [T1059.007] JavaScript – The core implant is written in JavaScript and executed via Windows Script Host (‘core implant written in JavaScript, executed via wscript.exe’).
- [T1059.001] PowerShell – The malware launches encoded PowerShell for download, decryption, command execution, and staging (‘launched via powershell -nop -enc; used for download, AES decryption, command execution, and staging’).
- [T1620] Reflective Code Loading – The loader decrypts and reflectively loads a .NET assembly into memory (‘decrypted .NET assembly loaded into memory via reflection; payload never written to disk’).
- [T1547.001] Registry Run Keys / Startup Folder – Persistence is established by copying itself and writing to the HKCU Run key (‘script copies itself to %USERPROFILE% and registers via HKCU…Run’).
- [T1082] System Information Discovery – The client collects host fingerprinting data such as domain, username, serial number, OS, RAM, model, CPU, and GPU (‘client collects host fingerprint’).
- [T1057] Process Discovery – The malware enumerates running processes via WMI (‘running process list collected via WMI Win32_Process.Name on C2 command’).
- [T1071.001] Web Protocols – C2 communication, tasking, and payload delivery occur over HTTP with custom headers (‘C2 over HTTP: check-in, beacon loop, tasking, telemetry upload, payload delivery; control via X-S / X-A headers’).
- [T1571] Non-Standard Port – The HTTP C2 service runs on non-standard ports (‘C2 endpoints served on non-standard HTTP ports’).
- [T1105] Ingress Tool Transfer – Additional files and stages are downloaded from the C2 and executed locally (‘downloads additional files and stages from C2 in encrypted form’).
- [T1132.002] Data Encoding – Telemetry and payload content are encoded using XOR, reversed hex, and AES (‘XOR for telemetry, reversed hex for strings/URLs, hex-encoded keys, AES-encrypted task bodies’).
- [T1041] Exfiltration Over C2 Channel – Collected telemetry is sent over the same HTTP C2 channel used for commands (‘collected telemetry sent over the same HTTP C2 channel used for commands’).
- [T1027] Obfuscated Files or Information – The script uses monoglyph identifier obfuscation, encoded strings, and hidden PowerShell stagers (‘monoglyph identifier obfuscation, encoded strings, AES/XOR, hidden PowerShell stagers’).
- [T1027.010] Command Obfuscation – PowerShell commands are dynamically built and launched with encoded parameters (‘PowerShell commands built dynamically, launched via -enc’).
- [T1027.013] Encrypted/Encoded File – Payloads and stages are transferred AES-encrypted with a static IV (‘payloads and stages transferred AES-encrypted; key from C2 body, static IV “sixteenbyteslong”‘).
- [T1140] Deobfuscate/Decode Files or Information – The malware decodes hex/Base64, restores reversed strings, and decrypts XOR/AES data during execution (‘hex/Base64 decode, reversed string restoration, XOR, AES-CBC decryption’).
- [T1562.001] Disable or Modify Tools – The loader patches AmsiScanBuffer to bypass AMSI and reduce detection (‘AMSI bypass by patching AmsiScanBuffer’).
- [T1070.004] File Deletion – The malware deletes its installed copy or temp files during uninstall/update (‘malware deletes installed JS copy, temp files, or older client version’).
Indicators of Compromise
- [IP address] C2 infrastructure and HTTP requests – 158.94.211.76, 91.92.243.79, and other related addresses
- [Domain] C2 infrastructure and related hostnames – aryamint.com, scan.aryamint.com
- [URL / URI path] Malicious beacon and tasking endpoints – /ceoznp, /gATIjh, and other related URI paths
- [HTTP headers] C2 command/control protocol – X-S and X-A
- [HTTP query parameters] Beaconing and tasking traffic – ia=
, ex= , sb= , vc= , df=0, and other parameters like kp=, tw=, fp=1 - [File path] Dropped or installed JavaScript payloads in user directories – %USERPROFILE%
.js - [Registry key] Persistence via Run key – HKCUSoftwareMicrosoftWindowsCurrentVersionRun
- [File hash] Analyzed JS sample – SHA256 5446b24959c1c2707accfc257aaac61819c01d1ed65bca910a7e8be1787d200f
- [Encryption artifact] Static IV used for AES operations – sixteenbyteslong, 76E6F6C63756479726E6565647879637
Read more: https://any.run/cybersecurity-blog/monoglyphrat-attacks-us-enterprise/