wfx-loot Campaign: Credential Stealing via Compromised GitHub Repository Access
The wfx-loot campaign utilized thousands of hijacked developer and bot accounts to inject credential-stealing code into over 1,800 GitHub repositories by abusing CI/CD workflows, shell scripts, and npm installation hooks.
Triage facts
Revision 1- Applicability
- GitHub Actions, npm
- Evidence
- Confirmed activeHigh confidence
- Severity
- Medium
- Sources
- 1 public source
- Freshness
- Revision 1Nov 12, 14:24 UTC
- Source quality
- C2Likely
The wfx-loot campaign, active as of November 10, 2026, utilized thousands of hijacked developer and bot accounts to test access across more than 60,000 GitHub repositories. The attackers injected malicious code into GitHub Actions workflows, shell scripts, and npm installation hooks in repositories where permissions allowed. The script was designed to exfiltrate GitHub tokens, repository secrets, cloud credentials, and AI service keys, while also reading GitHub Actions runner process memory. Attackers typically attempted to conceal activity by reversing code changes and deleting workflow runs.
Attack Chain
- Initial Access: Attackers obtained valid access tokens for thousands of developer and bot accounts.
- Probing: Attackers submitted pull requests across over 61,000 repositories to verify write access.
- Injection: Malicious code was deployed in repositories where permissions and configuration allowed.
- Exfiltration: The stealer targeted GitHub tokens, repository secrets, cloud credentials, and AI service keys, with functionality to expand access in AWS and Azure.
- Evasion: The attacker usually reversed code changes and deleted workflow runs to conceal the activity.
Impact
The stealer ran in over 1,800 repositories. Organizations have been advised to assume all accessible secrets were compromised if the malware executed.
Recommendation
Organizations should revoke compromised tokens, rotate exposed secrets, and check for unauthorized cloud changes.
Threat Hunt
Identify anomalies in GitHub Actions workflow execution logs, specifically searching for workflows or shell scripts that contain unexpected 'npm install' hooks or modifications to existing CI/CD pipelines.
Data: GitHub repository workflow logs, CI/CD pipeline configuration audit logs
Audit authorized GitHub tokens and service account activity to detect irregular access patterns or unusual pull request submissions that deviate from standard developer or bot behavior.
Data: GitHub organization audit logs, Authentication event logs for service accounts
Monitor process execution and memory access on CI/CD runner instances for scripts searching for environment variables or files matching patterns for 'GitHub tokens', 'repository secrets', 'cloud credentials', or 'AI service keys'.
Data: CI/CD runner process telemetry, Runner memory forensic logs