b0c43e946344c90398d20293a6e3356e9f922a6dcbe2b5134225cc94cf342412Analysis Report — b0c43e946344... (Unclassified JS Rentry-Telegram Dropper)
Build / RE
Obfuscator: javascript-obfuscator — string-array lookup table (190 entries) + control-flow flattening (CFF) via switch dispatch on a split integer string. ^[deobfuscated.js]
Noise padding: 2.41 MB of repetitive /*...*/ comment blocks (26,000+ lines) injected between every token to inflate file size and impede manual review. The actual executable logic is ~20 KB. ^[file.txt]
String-array rotation: An IIFE (function(_0x3971, rotOffset)Ellipsis(_0x3971, 0x11be30)) shifts the array before the dispatcher (_0x2c15) resolves indices. The rotation offset is 0x11be30 evaluated against a while-loop shuffle. Node.js extraction recovered the rotated array in full. ^[string-array.json]
Dispatcher offset: _0x52f031 = _0x52f031 - (-0x9f9 + -0x1f9*0xa + 0x3*0xa67) = index – 386. All string lookups are alias(0xXXX) where XXX maps to array[XXX-386]. ^[deobfuscated.js:15]
Control-flow flattening: Every function body is a while (!![]) loop with a switch (_0xdispatcher[_0xpc++]) dispatching on single-character case labels ('0', '1', ...). Case order is permuted per function; dead arithmetic (0x37*-0x94+-0x173b+0x3707 = 0) drives the program counter. ^[deobfuscated.js]
No anti-analysis: No debug checks, VM detection, sandbox gates, time bombs, or TLS callbacks. The script runs transparently under WScript/CScript. ^[deobfuscated.js]
Embedded strings (deobfuscated):
http://timmy02.duckdns.org/uploads/186024/Quote.vbshttps://rentry.co/6yg2yfkf/rawhttps://api.telegram.org/botMSXML2.XMLHTTPWinHttp.WinHttpRequest.5.1Scripting.FileSystemObjectWScript.Shell- `winmgmts:\\.
Deploy / ATT&CK
Execution chain (static reconstruction):
QgHgWf()— main entry: downloads a VBS payload viaWinHttpRequest.5.1fromrentry.co, patchesDownloadURL→http://timmy02.duckdns.org...andDownloadFile.tmp→Update.vbs, writes to%TEMP%\\tempScript.bat, then executes it viaWScript.Shell.Run. ^[deobfuscated.js:QgHgWf]TwLqKl()— persistence: copiesWScript.ScriptFullNameinto%APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\WindowsUpdate.jsviaScripting.FileSystemObject.CopyFile. ^[deobfuscated.js:TwLqKl]OjEuUw()— exfil: callsLxUhBc("tgTkn", "tgCID", "")but the token and chat_id are literal placeholders (tgTkn,tgCID), not live credentials. This is either a builder stub or the real values were removed before distribution. ^[deobfuscated.js:OjEuUw]LxUhBc(bot, chat, text)— Telegram report builder: concatenates victim fingerprint (OS, PC/Username, External IP, Antivirus list) and POSTs tohttps://api.telegram.org/bot<TOKEN>/sendMessage?chat_id=<ID>&text=<ENCODED_MSG>viaMSXML2.XMLHTTP. ^[deobfuscated.js:LxUhBc]
Reconnaissance functions:
LuGaMj()— WMI querySelect * from Win32_OperatingSystemvia `winmgmts:\\.
IOCs
| Type | Value | Note |
|---|---|---|
| URL (stage-2 fetch) | https://rentry.co/6yg2yfkf/raw |
Pastebin-like raw text hosting; payload likely a VBS/BAT downloader |
| URL (stage-3 VBS) | http://timmy02.duckdns.org/uploads/186024/Quote.vbs |
Dynamic DNS; DuckDNS subdomain timmy02; path /uploads/186024/ suggests numbered upload directory |
| Domain | timmy02.duckdns.org |
DuckDNS dynamic DNS — free, no verification |
| Domain | rentry.co |
Text-hosting service abused for payload staging |
| Domain | api.telegram.org |
Telegram Bot API for victim-data exfil |
| File (drop) | %TEMP%\\tempScript.bat |
Staged batch/VBS intermediary |
| File (persistence) | %APPDATA%\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\WindowsUpdate.js |
Self-copy masquerading as Windows Update script |
| File (payload rename) | Update.vbs |
Target filename after string replacement in downloaded content |
Network: Plain HTTP (rentry.co, duckdns.org) and HTTPS (api.telegram.org). No custom TLS pinning, no User-Agent masquerade.
Attribution: No linguistic clues, no PDB paths, no code-signing, no build timestamps. The use of rentry.co + DuckDNS + Telegram Bot API is commodity infrastructure; not enough to attribute to a named actor. Low-confidence unattributed.