Fake AI and Developer GitHub Repositories Deliver Multi-Stage Infostealer

Summary
Netskope researchers detail a campaign using cloned AI and developer repositories to deliver an infostealer through two SmartLoader stages, which use Polygon smart contracts to resolve C2 addresses at runtime.
Key points
- Attackers cloned popular AI and developer repositories and altered download links or added malicious files to trick users into running the infostealer.
- The first SmartLoader stage arrives in a ZIP with LuaJIT components and an obfuscated Lua script disguised as a text file.
- Both loader stages use EtherHiding to retrieve C2 addresses from the same Polygon smart contract, allowing operators to change destinations without modifying the malware.
- The first stage collects victim geolocation and a screenshot, sends an encrypted beacon, and establishes persistence before downloading the second stage.
- The second stage uses similar C2 and reconnaissance techniques and retrieves varied final infostealers, including a NodeJS-based strain.
- The campaign targeted AI users and developers; the analyzed GitHub accounts serving payloads were reported for takedown.
Article Details
- Attack Vectors
- Attackers cloned and impersonated well-known GitHub repositories containing AI resources and developer tools, then modified installation URLs or added payloads in subdirectories to lure victims into downloading and executing infostealers.
- The campaign used ClickFix social engineering and multi-stage SmartLoader delivery. Stage 1 arrived in a ZIP archive containing a malicious Lua script obfuscated with Prometheus; Stage 2 used a Lua script likely obfuscated with MoonSec V3.
- A batch script launched a renamed LuaJIT interpreter with malicious Lua code stored in a text file, which assembled and executed its payload at runtime.
- SmartLoader resolved C2 addresses from a Polygon smart contract using EtherHiding and public Polygon RPC providers, then sent victim information and screenshots to the resolved C2.
- The loaders downloaded and executed additional payloads from GitHub-hosted repository resources and used scheduled-task persistence.
- Defensive Notes
- Do not treat text files or individual components as benign solely because they appear non-executable or produce no malicious behavior in isolation; the article reports malicious activity when modular dependencies are launched together.
- Monitor for trojanized or impersonated repositories and modified installation links, especially resources aimed at AI users and developers.
- Monitor LuaJIT interpreter execution with accompanying scripts, suspicious batch-script launches, scheduled-task creation, screenshot capture, and outbound requests to Polygon RPC providers.
- The article reports that the two GitHub accounts serving identical payloads, yawalinte and JuliusMAAR, were reported for takedown.
Indicators of compromise
| Type | Indicator | Context |
|---|---|---|
| DOMAIN | polygon-mainnet[.]gateway[.]tatum[.]io | Additional Polygon RPC provider used by Stage 2 for EtherHiding C2 resolution. |
| DOMAIN | polygon-public[.]nodies[.]app | Additional Polygon RPC provider used by Stage 2 for EtherHiding C2 resolution. |
| DOMAIN | polygon[.]drpc[.]org | Public Polygon RPC provider queried by SmartLoader to resolve the attacker's C2 address. |
| DOMAIN | polygon[.]publicnode[.]com | Public Polygon RPC provider queried by SmartLoader to resolve the attacker's C2 address. |
| DOMAIN | rpc-mainnet[.]matic[.]quiknode[.]pro | Public Polygon RPC provider queried by SmartLoader to resolve the attacker's C2 address. |
| URL | hxxps[:]//github[.]com/JuliusMAAR/gpt-re/raw/refs/heads/main/re0[.]log | GitHub-hosted task link used to retrieve and execute a payload. |
| URL | hxxps[:]//github[.]com/JuliusMAAR/gpt-re/raw/refs/heads/main/re1[.]log | GitHub-hosted task link used by the loader to download the second-stage Lua script. |
| URL | hxxps[:]//github[.]com/yawalinte/80/raw/refs/heads/main/ae[.]log | GitHub-hosted task link used by SmartLoader to download a second-stage payload. |
MITRE ATT&CK
T1059.003 · Windows Command ShellA batch script launched compiler.exe with gc.txt as its argument.T1071.001 · Web ProtocolsThe loader exchanged beacon and task data with its resolved C2 using HTTP POST requests.T1113 · Screen CaptureSmartLoader captured a screenshot of the victim's device using Windows GDI APIs.T1204.002 · Malicious FileVictims were lured into downloading and executing malware from cloned repositories and through the reported ClickFix technique.T1547.009 · Shortcut ModificationThe analyzed SmartLoader samples used a scheduled task to establish persistence.T1573 · Encrypted ChannelThe loaders used XOR encryption for outbound beacon traffic and incoming C2 responses.T1620 · Reflective Code LoadingThe Prometheus VM assembled the real Lua code at runtime from an encrypted string pool.
Malware
Generic.JS.ContagiousInterview.C.Generic.JS.ContagiousInterview.C.SmartLoaderThe attackers are targeting AI users and developers, cloning AI-related resources and developer tools and using SmartLoader to deliver the infostealer payload.Trojan.DeceptiveDevelopment.32Trojan.DeceptiveDevelopment.32Win32.Trojan.FakeGitWin32.Trojan.FakeGit
Products
ClaudeThe lures include Claude, ComfyUI, AI coding assistants, Python security guides, and Rust frameworks, targeting developers and AI users.ComfyUIThe lures include Claude, ComfyUI, AI coding assistants, Python security guides, and Rust frameworks, targeting developers and AI users.GitHubAs we tracked this infostealer, we uncovered ongoing campaigns in which attackers shifted delivery vectors, cloning and impersonating known GitHub repositories and redirecting download links at their payloads.PolygonNotably, both loaders resolved their C2 server address from the Polygon blockchain at runtime using EtherHiding.
Tools
ClickFixIn April 2026, Netskope Threat Labs exposed a Malware-as-a-Service (MaaS) NodeJS infostealer delivered through the ClickFix social engineering technique.EtherHidingNotably, both loaders resolved their C2 server address from the Polygon blockchain at runtime using EtherHiding.LuaJITLua51.dll is a LuaJIT 2.1 runtime built with MSYS2/GCC 15.2.0.MoonSecStage 1 arrives as a four-file zip, where the malicious Lua script was obfuscated using Prometheus. Stage 2 comes with three files, including a Lua script that is likely obfuscated using MoonSec.PrometheusStage 1 arrives as a four-file zip, where the malicious Lua script was obfuscated using Prometheus. Stage 2 comes with three files, including a Lua script that is likely obfuscated using MoonSec.
Industries
Bankingin North America, Asia, and Southern Europe, across different segments, with the financial services, banking, and technology sectors leading.Financial Serviceswere mainly in North America, Asia, and Southern Europe, across different segments, with the financial services, banking, and technology sectors leading.TechnologyAsia, and Southern Europe, across different segments, with the financial services, banking, and technology sectors leading.