惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
美团技术团队
Recent Announcements
Recent Announcements
B
Blog
GbyAI
GbyAI
雷峰网
雷峰网
博客园_首页
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Tailwind CSS Blog
M
MIT News - Artificial intelligence
V
V2EX
人人都是产品经理
人人都是产品经理
爱范儿
爱范儿
L
LangChain Blog
Microsoft Security Blog
Microsoft Security Blog
宝玉的分享
宝玉的分享
A
About on SuperTechFans
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
U
Unit 42
Hugging Face - Blog
Hugging Face - Blog
F
Fortinet All Blogs
N
Netflix TechBlog - Medium
Last Week in AI
Last Week in AI
aimingoo的专栏
aimingoo的专栏

Wiz Blog | RSS feed

Meet Wiz for M365: Bringing SaaS into the Security Graph Bringing Security Visibility to Vercel with Wiz Axios NPM Distribution Compromised in Supply Chain Attack Tracking TeamPCP: Investigating Post-Compromise Attacks Seen in the Wild The Wiz Blue Agent, now Generally Available Beyond the Badge: What Achieving Microsoft’s Certified Software Designation Means for Your Cloud Security Introducing the Green Agent: AI-Powered Remediation for the Cloud Three’s a Crowd: TeamPCP trojanizes LiteLLM in Continuation of Campaign KICS GitHub Action Compromised: TeamPCP Strikes Again in Supply Chain Attack Introducing the Wiz Red Agent- AI-Powered Attacker Introducing Wiz AI Application Protection Platform (AI-APP) Introducing Wiz Agents & Workflows: Security at the Speed of AI AI Runtime Threat Detection: From Input to Real-World Impact Trivy Compromised: Everything You Need to Know about the Latest Supply Chain Attack It’s Official: Wiz Joins Google Understanding and Reducing AI Risk in Modern Applications Introducing Wiz Tenant Manager: Multi-Tenant Management for Federated Organizations The Agile FedRAMP Playbook, Part 4: Reactive Risk Management through Enriched Incident Response Wiz Achieves CPSTIC Certification in Spain Seeing AI Clearly: Building Visibility Across Modern AI Applications The Agile FedRAMP Playbook, Part 3: Preventative Risk Management by building Secure by Design Wiz Leads the 2026 Latio Application Security Report with awards in 4 categories Building an Agentic Cloud Security Ecosystem: A Reference Architecture with Wiz MCP and Infosys Cyber Next The Agile FedRAMP Playbook, Part 2: Proactive Risk Management with Continuous Monitoring Cloud-native Security for your Windows environment: Announcing the Wiz Runtime Sensor for Windows Would You Click ‘Accept’? Automatically detecting malicious Azure OAuth applications using LLMs Wiz Named a Leader in The Forrester Wave™: Cloud Native Application Protection Solutions, Q1 2026 From Detection to Remediation: It’s Time to Rethink AppSec Around Exploitability and Root Cause Fixes The Agile FedRAMP Playbook, Part 1: Why Risk is Your Best Starting Point Introducing AI Cyber Model Arena: A Real-World Benchmark for AI Agents in Cybersecurity
s1ngularity: supply chain attack leaks secrets on GitHub:...
Merav Bar, Rami McCarthy · 2025-08-27 · via Wiz Blog | RSS feed

Updated August 29th, 2PM UTC with details on the second phase of the attack

On August 26, 2025, multiple malicious versions of the widely used Nx build system package were published to the npm registry. These versions contained a post-installation malware script designed to harvest sensitive developer assets, including cryptocurrency wallets, GitHub and npm tokens, SSH keys, and more. 

In the first phase of the attack, the malware leveraged AI command-line tools (including Claude, Gemini, and Q) to aid in their reconnaissance efforts, and then exfiltrated the stolen data to publicly accessible attacker-created repositories within victims’ GitHub accounts. 

On August 27, 2025 9AM UTC Github disabled all attacker created repositories to prevent this data from being exposed, but the exposure window (which lasted around 8 hours) was sufficient for these repositories to have been downloaded by the original attacker and other malicious actors.

In a second phase, an attacker used the leaked GitHub tokens from phase one to make victim’s private repositories public. These changes appeared to be driven by a single threaded automation, running between (roughly) August 28 4PM and August 29 2AM UTC. Over 400 users/organizations were impacted in that window, with a total of over 5500 private repositories published publicly. 

Overview of the incident

What happened?

The initial compromise introduced a malicious telemetry.js file triggered via a post-install script in the npm package. The payload executed only on Linux and macOS systems, systematically searching for sensitive files (wallets, keystores, .env, SSH keys) and extracting credentials (gh auth token, npmrc content). The malware attempted lockout by appending sudo shutdown -h 0 to ~/.bashrc and ~/.zshrc, effectively causing system shutdowns on new terminal sessions. These findings were also reported by Step Security.

August 28, 2025 9AM UTC update: The root cause was identified - the issue stemmed from a flawed GitHub Actions workflow that allowed code injection through unsanitized pull request titles combined with the use of the pull_request_target trigger. Although the workflow was quickly removed from the master branch, it remained present in older branches and could still be exploited. The injection flaw enabled arbitrary command execution if a malicious PR title was submitted, while the pull_request_target trigger granted elevated permissions by providing a GITHUB_TOKEN with read/write access to the repository.

Notably, the campaign weaponized installed AI CLI tools by prompting them with dangerous flags (--dangerously-skip-permissions, --yolo, --trust-all-tools) to steal filesystem contents, exploiting trusted tools for malicious reconnaissance. We have observed this AI-powered activity succeed in hundreds of cases, although AI provider guardrails at times interceded. 

Exfiltrated data was double and triple-base64 encoded and uploaded to attacker-controlled victim GitHub repositories named s1ngularity-repositorys1ngularity-repository-0, or  s1ngularity-repository-1, thousands of which were observed publicly. 

Among the varied leaked data here, we’ve observed over a thousand valid Github tokens, dozens of valid cloud credentials and NPM tokens, and roughly twenty thousand additional files leaked. In many cases, the malware appears to have run on developer machines, often via the NX VSCode extension. We’ve also observed cases where the malware ran in build pipelines, such as Github Actions. 

On August 27, 2025 9AM UTC Github disabled all attacker created repositories to prevent this data from being exposed, but the exposure window (which lasted around 8 hours) was sufficient for these repositories to have been downloaded by the original attacker and other malicious actors. Furthermore, base64-encoding is trivially decodable, meaning that this data should be treated as effectively public. A few repositories surfaced after Github’s action, making ongoing monitoring essential. Although the compromised packages have been removed from npm, they may still be executed locally on systems where they were previously installed.

August 28, 2025, 6PM UTC update: Wiz Threat Research and Adnan Khan identified a second wave: an attacker appears to be using the previously compromised GitHub tokens to turn private repositories public and rename them to the pattern s1ngularity-repository-#5letters#. We observed over 190 users/organisations that were impacted, and over 3000 repositories. 

August 29, 2025, 2PM UTC update: This phase appears suspended, with over 400 users/organizations impacted, and over 5500 repositories.

Which products are affected?

  • Nx build system npm package (@nrwl/nx, nx) in the following versions: 20.9.0, 20.10.0, 20.11.0, 20.12.0, 21.5.0, 21.6.0, 21.7.0, 21.8.0

  • @nx/devkit in versions: 21.5.0, 20.9.0

  • @nx/enterprise-cloud version 3.2.0

  • @nx/eslint version 21.5.0

  • @nx/js in versions: 21.5.0, 20.9.0

  • @nx/key version 3.2.0

  • @nx/node in versions 21.5.0, 20.9.0

  • @nx/workspace in versions 21.5.0, 20.9.0

Artifacts 

File Artifacts (not unique to this attack):

  • ~/.bashrc, ~/.zshrc modified with sudo shutdown -h 0

  • /tmp/inventory.txt (sensitive file paths)

  • /tmp/inventory.txt.bak

  • 2379ac0e03b1a67c4ca5693136eff4945e644a91 (telemetry.js variant SHA1)

  • e5d1f3c45ee7cca6ae59cf64e0573050bbe136ec (telemetry.js variant SHA1)

  • b4f20b39aa6df1002872f07973024d85aa49abaf (telemetry.js variant SHA1)

  • d2438106211ebd12c4f0a248848bc9864c97a3c0 (telemetry.js variant SHA1)

Network/Account Artifacts:

  • Outbound API calls to api.github.com (/user/repos, /repos/*/contents/results.b64)

  • Public GitHub repositories named s1ngularity-repositorys1ngularity-repository-0, or  s1ngularity-repository-1

  • File results.b64 containing base64-encoded data

Which actions should security teams take?

Immediate Remediation

  • Remove malicious Nx versions (rm -rf node_modules && npm cache clean --force).

  • Upgrade to a clean release (Nx have removed the malicious versions, so any current version sourced from NPM can be considered safe).

  • Manually review and remove malicious shell entries from ~/.bashrc and ~/.zshrc.

  • Delete /tmp/inventory.txt and .bak if present.

Audit & Detection

  • Check for any evidence of GitHub repos created within your organization and user accounts named s1ngularity-repositorys1ngularity-repository-0, or  s1ngularity-repository-1 (note that since GitHub have disabled these repositories, they won’t show up in search).

  • Review GitHub audit logs for anomalous API usage.

  • Monitor developer endpoints and CI/CD pipelines for suspicious API calls and unexpected child processes.

Credential Rotation

  • Revoke and regenerate all GitHub tokens, npm tokens, SSH keys, API keys, and environment variable secrets that may have been leaked in these repositories.

  • Transfer cryptocurrency funds to new wallets immediately if exposed (as wallets themselves cannot be rotated).

How can Wiz help? 

  1. While Wiz Threat Research are still reviewing impact, Wiz customers can use the pre-built query and advisory in the Wiz Threat Center to assess the risk  in their environment.

  2. Wiz customers can use the SBOM page to identify malicious versions of the `nx` package in their environment.

  3. Wiz Threat Research added YARA-based detection to identify instances of the malicious script in customer environments, which should be treated as evidence of potential compromise of the host.

References