cd /news/ai-tools/what-exactly-does-githubs-security-t… · home topics ai-tools article
[ARTICLE · art-74508] src=orchidfiles.com ↗ pub= topic=ai-tools verified=true sentiment=↓ negative

What exactly does GitHub’s security team do?

Thousands of GitHub repositories have been distributing Trojans via ZIP archives for two years, according to an analysis by security researcher Orchid Files. The researcher found that repositories share a common pattern—titles with emojis and a "## 📥 Download" heading linking to a ZIP archive—and that a simple search query can uncover them. GitHub, with its security team and AI tools, has not resolved the issue despite the pattern being easily detectable.

read4 min views1 publishedJul 26, 2026

There are currently thousands of repositories on GitHub that are spreading viruses. Any of you can find these repositories, and you don’t need any special knowledge to do so. All you have to do is use the standard search function on the GitHub website.

These repositories have been around for two years. GitHub has billions of dollars, a security team, and artificial intelligence. Why haven’t they solved this problem in two years?

First, we’ll look at the repositories we’ve already found, identify common patterns within them, and then use those patterns to find other repositories.

Take a look at these repositories; in each one, the README contains a link to a ZIP archive containing a Trojan:

https://github.com/respawningcode/OpenAi-Sorahttps://github.com/idrissof/keyradhttps://github.com/lowwkezer/shannonhttps://github.com/ramacuy/ai-excalidrawhttps://github.com/McuMirror/DWIN-T5L-SDCC-Template

If we download this ZIP archive and submit individual files from it to VirusTotal, we’ll see the following results: Even a quick glance at these repositories shows that they have the same structure, nearly identical titles, and each title contains an emoji. That’s all the information we need to find other repositories.

Let’s take the title “📥 Download” and search for that string on GitHub. But we don’t want to search the entire codebase—just the README files. Go to github.com and enter the following in the search bar at the top:

path:readme.md "## 📥 Download"

The number of results will always vary. At first, it showed me 9K repositories, but when I went to page 2, there were already 109 repositories. After refreshing the page, it was back to 9K repositories.

In the results, you’ll need to visually filter out the results that contain any other text besides just the heading. The heading variations will look something like this:

  • 📥 Download Now #

  • 📥 Download Now Again #

  • 📥 Download the Software #

  • 📥 Download & Install #

Open these repositories. They will contain a link to a ZIP archive containing a Trojan.

However, the search results will include many legitimate repositories. We can improve the search by adding a search for ZIP archives. The search string will look like this:

path:readme.md "## 📥 Download" ".zip"

This will significantly improve the results. Now, right in the search results, we can see which repositories contain the heading we need and a link to a ZIP archive.

But there are legitimate repositories among these results as well. How else can we improve the search query?

All links to zip archives lead to githubusercontent.com or github.com. Also, the zip archive contains a version number, for example, Software-3.6.zip. So we just need to write a regular expression to search for such links. But as I said at the beginning, you don’t need any specialized knowledge for this. Any free AI model can handle it. We feed it 10 such links, and after a few iterations, we get this result:

path:README.md /raw.githubusercontent.com/.\d+.\d+.zip|github.com/./raw/refs/heads/.*\d+.\d+.zip/

Enter this query, and you’ll get the repositories that are distributing the zip archive containing the Trojan. The number of repositories varies. In my case, sometimes there are 111, sometimes 4.4K.

But this entire search only worked because we had an initial list of repositories from which we were able to derive a general search pattern.

Maybe GitHub’s security team didn’t have these repositories?

Maybe they don’t know about this general pattern?

A month ago, I published an article in which I analyzed this scheme in detail. I wrote a script that found 10K such repositories. I published the list of all the repositories and the script on GitHub.

The article made it to the Hacker News front page. Other cybersecurity websites wrote about this scheme.

Here is the full list of actions GitHub took:

  • They deleted all 10K repositories that the script found.

That’s it. They didn’t do anything else.

What’s more, a few hours later I ran the script again; it found new repositories, and I added them to the article. They weren’t blocked for an entire month. Even though all they had to do was open my article again, grab the new links, and block those repositories. That turned out to be too difficult for them.

But there’s one conclusion we can draw: they’re well aware of this virus distribution scheme.

No matter how hard I try, I can’t find an answer to why this is happening. Microsoft is a corporation with billions in revenue. They have thousands of employees, limitless resources, and artificial intelligence. All they needed to do was assign a few days to any regular employee so they could use Copilot to find all these repositories and block them.

I’ve never worked at a large company. And I can’t imagine how decisions are made specifically at GitHub, or what bureaucratic nightmare managers have to go through to start combating malicious repositories.

But they deleted all 10,000 repositories just a few hours after the first article was published.

Why did they stop and take no further action?

── more in #ai-tools 4 stories · sorted by recency
── more on @github 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/what-exactly-does-gi…] indexed:0 read:4min 2026-07-26 ·