Elastic Security Labs has uncovered OXLOADER, a previously undocumented Windows malware loader distributed via malicious Google Ads impersonating Node.js. The loader delivers the CASTLESTEALER infostealer and achieves low detection rates through multiple obfuscation layers (control-flow flattening, mixed Boolean-Arithmetic, opaque predicates), self-modifying decryption stubs, and an unusual technique of staging shellcode inside the PE .reloc section via a copied .ocx file. Anti-sandbox checks include CPU count (≥3), RAM (≥3 GB), display refresh rate (≥20 Hz), and geographic/language exclusions targeting CIS regions and Russian-language systems, suggesting a financially motivated Russian-speaking threat actor. The final payload is delivered in-memory via DonutLoader wrapping the CASTLESTEALER .NET assembly. YARA rules and behavioral detection signatures are provided.

10m read timeFrom elastic.co
Post cover image
Table of contents
Key takeawaysHow OXLOADER unpacks itself at runtimeObfuscation techniques used to evade static detectionHow does OXLOADER evade sandbox and VM detection?Geographic and language exclusionsShellcode staging via .reloc section and OCX fileIn-memory infostealer delivery via DonutLoader and .NET assemblySecond OXLOADER variant: same loader, different masqueraded programREF8372 through MITRE ATT&CKRemediating REF8372Observations
3.9K Impressions