FakeGit Exposed: How 7,600 GitHub Repos Are Spreading SmartLoader Malware

A deep dive into the FakeGit campaign, where thousands of fake GitHub repos trick developers and AI agents into installing SmartLoader and StealC malware.

Govern What GitHub Delivers
  • July 22, 2026

A Massive Trust Exploit Hides In Plain Sight On GitHub

A newly documented campaign, dubbed FakeGit, has used roughly 7,600 malicious repositories to distribute a loader known as SmartLoader.

The loader delivers StealC, a powerful information-stealing malware. Meanwhile, the operation appears to stem from a single actor rather than a coordinated group. Around 6,600 GitHub profiles were created solely to support this effort.

GitHub’s own download counters recorded over 14 million download events tied to campaign files. However, that number reflects automated requests as much as real victims. Still, even a fraction of that scale represents a serious risk to developers and everyday users alike.

Fake Popularity Signals Make Malicious Repos Look Legitimate

Attackers will usually not depend on luck when building trust with a repository, they will manufacture it through marketing techniques.

For instance, one of the repositories had adopted the name and structure of a popular project to gain a few stars and forks as proof of credibility.

There was an attempt by some of the malicious users to adopt a similar username to that of actual developers, only that the usernames differed by one letter.

The following are some of the disguises used:

  • Cracked versions of SaaS browser extension (Notion, Slack, Trello)
  • Gaming cheats for Roblox, Fortnite, Valorant
  • Cryptocurrency/trading tools
  • AI written README with formatted content and description with emojis
  • Enterprise tools impersonation (Jenkins, Docker, Databricks)

Most READMEs were easily identified to be AI generated due to unusual grammar and verbose nature, though good enough to deceive in a glance before downloading.

Cyber Attack Analysis: FakeGit – GitHub Trust Exploit Delivering SmartLoader & StealC
Supply Chain Abuse · GitHub → SmartLoader → StealC
A MASSIVE TRUST EXPLOIT
Hides In Plain Sight On GitHub

A campaign dubbed FakeGit has used roughly 7,600 malicious repositories and 6,600 throwaway profiles to push a loader called SmartLoader, which delivers the info-stealer StealC. GitHub’s own counters logged over 14 million download events tied to campaign files.

LAUNCH SIMULATION
notion-pro-v2.4.1.zip – Extracted Contents
launcher.cmd
Short launcher script
lua_rt.exe
Renamed LuaJIT runtime
icon.ico
Payload disguised as icon/text/license
Nothing in the archive looks like a typical executable at a glance.
STAGE 1: DELIVERY

Once the victim downloads the “release” from the fake repo, the infection chain begins. The ZIP contains a short launcher script, a renamed LuaJIT runtime executable, and a payload file disguised as an icon, text, or license file, nothing looks like a typical executable at a glance.

Endpoint Telemetry – Post-Execution Behavior
[Background Process Log – user sees nothing]
launcher.cmd executed
Console window hidden immediately, no visible process window
Hidden Lua script begins running silently in the background
No console flash, no window, nothing to alert the user that anything ran.
STAGE 2: EXECUTION

Running the launcher immediately hides the console window, so no visible process window alerts the user. The hidden Lua script then begins running silently in the background.

Threat Intel – C2 Resolution via Polygon
EtherHiding

Rather than contacting a hardcoded server, the script queries a Polygon blockchain smart contract to retrieve the current C2 address. Operator rotates infrastructure just by updating the contract, and no single authority can delete or seize a deployed smart contract.

Smart contract read: 0x7f…c2a returns current C2 endpoint
STAGE 3: COMMAND-AND-CONTROL RESOLUTION

This method, known as EtherHiding, means no single takedown kills the C2.

github.com – Encrypted Stage Payloads
Layered Encryption

Malware pulls additional encrypted payloads from GitHub itself, layering hex encoding, XOR ciphers, and AES encryption across multiple stages to frustrate static scanners.

payload.bin fetched from github.com
decode: hex → XOR → AES
STAGE 4: STAGED PAYLOAD RETRIEVAL

Trusted GitHub infrastructure becomes the delivery channel for encrypted stage payloads, layered just enough to slip past static scanners.

Endpoint Telemetry – Process Hollowing
Process Hollowing

Finally, it decrypts a StealC executable and injects it into another running process through process hollowing, a technique that hides the malicious code inside a legitimate-looking process.

StealC executable decrypted, injected via process hollowing
Harvesting: passwords · cookies · sessions · wallets · messaging data
It targets over 20 browsers and 100+ extensions; stolen cookies bypass authentication entirely, so a password change alone isn’t enough.
STAGE 5: DEPLOYMENT

Once active, StealC extracts browser passwords, cookies, active login sessions, cryptocurrency wallets, and messaging app data. Live sessions must be revoked, not just passwords changed, since stolen cookies can bypass authentication entirely.

RECOMMENDED ACTIONS
Defending Against RMM Tool Phishing

Avoid clicking links or opening attachments in unsolicited emails, confirm senders through verified official channels, treat unexpected RMM installers as malware, and lean on behavior-based (not signature-based) endpoint detection with offline backups.

What The Fake Repo Pages Actually Look Like Up Close

Upon closer inspection, there is some sophisticated deceit in a malware repository. From the visual standpoint, it is a perfect clone of an open-source project, star and fork counters, commit history, and README file with badges and sections.

However, it is not actually active community involvement. The stars and forks are fake, commit times are evenly distributed to create the illusion of growth of the project. The README includes information on installation and concludes with a clear button-looking link for downloading the release.

It does not take you to the source code. Instead, it takes you to a packed ZIP file in the Releases section exactly where it belongs. From the visual aspect, it looks like a regular release asset.

AI Coding Assistants Are Now Being Baited Too

It has been found that over 800 repositories in the campaign posed specifically as AI Skills or Model Context Protocol servers, which are increasingly used to extend coding assistants.

While testing, AI coding tools including Claude Code, Gemini, and ChatGPT were asked to find and install free AI capabilities. In several cases, these agents autonomously surfaced malicious repositories without any link being provided by the user.

This matters because AI agents increasingly search, evaluate, and recommend tools independently. Consequently, when an agent trusts GitHub’s popularity signals the same way humans do, it can be manipulated identically. And some agents did recognize red flags and refused to proceed, though results varied across different tests and prompts.

Part Of A Much Bigger Pattern Of Platform Abuse

Thousands of faked accounts and repositories with artificial stars and forks for the simultaneous release of multiple stealer families. Yet another campaign leveraged GitHub Action workflow jobs and targeted automated build pipelines rather than downloaded repositories.

Nearly 10,000 cloned repositories belonging to the same malware family, which is an exponential increase compared to only a few months before.

The clones re-released the exact commit every several hours with the same generic comments, thus creating the illusion of active development. This is yet another example of a structural problem, not a particular solution.

Clones inherit the full trust immediately, while moderation cannot counteract automated abuse on a large scale. Without better provenance checks from the platform side, this attack vector would remain widely available.

Conclusion: When Trusted Discovery Becomes Malware Execution

FakeGit shows that attackers no longer need to compromise a trusted platform to weaponize its reputation. So they can manufacture credibility with copied projects, lookalike developer profiles, artificial stars, polished READMEs, and Release files placed exactly where legitimate software should appear.

Why This Threat Matters

FakeGit turns software discovery into the first stage of malware delivery.

  • Thousands of repositories create scale and resilience
  • Lookalike profiles and fabricated activity imitate legitimate development
  • AI Skills and MCP servers place the campaign inside emerging enterprise workflows
  • Agents can surface malicious repositories without receiving a direct attacker link
  • Renamed runtimes and disguised payload files reduce visible warning signs
  • Blockchain-based C2 resolution allows infrastructure to be rotated
  • Encrypted stages retrieved through GitHub make trusted infrastructure part of the delivery chain
  • StealC targets passwords, cookies, active sessions, wallets, and developer credentials

The reported download totals represent activity, not confirmed infections. But the campaign does not need every download to succeed. A single compromised developer workstation can expose browser sessions, cloud access, source repositories, and production tooling.

Where Xcitium Changes the Outcome

Xcitium Advanced EDR, powered by Xcitium’s patented Zero-Dwell platform, applies Execution Governance when the downloaded package attempts to run.

GitHub origin should not grant the launcher automatic trust.
Likewise, a renamed Lua runtime should not receive unrestricted access merely because the user started it.
The disguised payload should not inherit the rights of the developer or AI workflow that discovered it.

Unknown code does not receive unrestricted execution rights.
Code can run without being able to cause damage.
Runtime behavior is governed before trust exists.

SmartLoader and its follow-on payloads may attempt to execute, but they should not receive unrestricted access to browser data, developer credentials, cloud tokens, source code, persistence mechanisms, or the real operating environment.

Xcitium ITDR strengthens the next layer when stolen sessions, OAuth grants, tokens, or privileged credentials are reused against enterprise services.

Detection asks, “Did we recognize this repository or payload as malicious?”
Execution Governance asks, “Could unknown code discovered through a trusted platform cause damage at all?”

That is the difference.

Trust the Source Less. Govern the Execution More.

FakeGit proves that stars, forks, familiar usernames, professional documentation, registry listings, and AI recommendations are not proof of software integrity.

Security teams should maintain approved catalogs for AI Skills, MCP servers, plugins, and developer tools. New capabilities should be tested away from live sessions, cloud credentials, SSH keys, source repositories, and production data. Suspected infections require token rotation and session revocation, not only password changes.

Verify the publisher.
Inspect what the archive actually contains.
Govern every unknown process before repository trust becomes endpoint compromise.

Like what you see? Share with a friend.

Move Away From Detection With Patented Threat Prevention Built For Today's Challenges.

No one can stop zero-day malware from entering your network, but Xcitium can prevent if from causing any damage. Zero infection. Zero damage.

Book a Demo