Breach
Aikido Security reports attacker used 4,837 hijacked GitHub accounts to plant CI secret stealer
Aikido Security says an attacker used stolen credentials for 4,837 GitHub accounts to add a secret stealer to repositories those accounts could write to, reaching at least 1,806 repositories.
Written by a model from the sources below. Verify against them.
- Vendor
- GitHub
- Product
- GitHub
- Status
- Corroborated
- Disclosed
- Data taken
- 1.8K records: Tokens and keys
- BleepingComputer: “Aikido says the wfx-loot campaign began around 12:45 UTC on November 10, when the attacker used stolen GitHub credentials from 4,837 compromised accounts to pr…”
- Stolen credentials
- BleepingComputer: “A new campaign dubbed 'wfx-loot' has unfolded on GitHub where threat actors used 4,837 compromised accounts to probe 61,764 repositories, open pull requests, a…”
- wfx-loot
Summary
SafeDep counted 8,093 repositories that received malicious commits, and the researchers say the true total is higher.
What to do
Rotate API keys and tokens you gave it, and review the OAuth apps and integrations connected to it
For tokens and keysRevoke the commit author's tokens, OAuth app grants, SSH keys, and sessions, and turn on 2FA.
Rotate every secret and variable the affected repository can read, and treat every secret and cloud role available to its workflows as compromised.
Check repositories you can write to for the wfx-docs branch, ci-check-[0-9]{4} branches, and the 'docs: dependency audit notes' pull request title.
Treat any machine that ran npm install on an affected commit as compromised and rotate its keys.
Revoke any GitHub tokens that may have been compromised, including tokens tied to developer and bot accounts.
Rotate repository secrets, cloud credentials and AI service keys that were accessible in affected workflows.
Timeline
- Made public by The Hacker News
- First seen by cve.now
What was taken
1.8K records, perCatalin Cimpanu on Bluesky
| Taken | Per the source |
|---|---|
| Tokens and keys | Catalin Cimpanu on Bluesky: “At least 1,835 repositories ran the payload and have had credentials exfiltrated.” |
Evidence 4
- PressThe Hacker News
“Starting Tuesday, an attacker used stolen credentials for 4,837 GitHub accounts to plant a secret stealer in repositories those accounts could write to, according to Aikido Security, a security software company.”
- PressSecurityWeek
“An attacker has tested stolen access to more than 60,000 GitHub repositories and inserted credential-stealing code in thousands of them, several security firms report.”
- PressCatalin Cimpanu on Bluesky
“A threat actor is pushing malicious workloads to GitHub repositories that steal secrets and cloud credentials from GitHub Actions”
- PressBleepingComputer
“A new campaign dubbed 'wfx-loot' has unfolded on GitHub where threat actors used 4,837 compromised accounts to probe 61,764 repositories, open pull requests, and push secrets-stealing malware.”
+1 more: BleepingComputer on Bluesky
Corrections
- Changed “4,837 people or records were affected” to “1,835 people or records were affected”.
Something wrong on this page? Report an error. Every fix is listed here.
Questions about the GitHub breach
Was GitHub breached?
The Hacker News reports it. No statement from GitHub has reached cve.now yet.
What data was exposed?
1.8K records. Tokens and keys.
What should GitHub customers do?
Rotate API keys and tokens you gave it, and review the OAuth apps and integrations connected to it. Revoke the commit author's tokens, OAuth app grants, SSH keys, and sessions, and turn on 2FA. Rotate every secret and variable the affected repository can read, and treat every secret and cloud role available to its workflows as compromised. Check repositories you can write to for the wfx-docs branch, ci-check-[0-9]{4} branches, and the 'docs: dependency audit notes' pull request title. Treat any machine that ran npm install on an affected commit as compromised and rotate its keys. Revoke any GitHub tokens that may have been compromised, including tokens tied to developer and bot accounts. Rotate repository secrets, cloud credentials and AI service keys that were accessible in affected workflows.