EmeraldWhale Campaign Steals 15,000 Cloud Credentials from Exposed Git Repositories

The Sysdig Threat Research Team (TRT) disclosed EmeraldWhale, an automated, multi-cloud credential harvesting operation that compromised over 15,000 cloud and email service tokens. The threat actor leveraged automated tooling—including Masscan, httpx, git-dumper, and custom bash scripts—to scan massive public IPv4 ranges for web servers exposing root .git/config paths and Laravel .env files. Because developers routinely configure Git remote origin URLs containing inline authentication credentials (https://<token>@github.com/...), the threat actors extracted valid Personal Access Tokens (PATs) and programmatic credentials directly from the exposed configuration artifacts.

The attackers weaponized the recovered tokens to authenticate against GitHub, GitLab, and Bitbucket APIs, cloning more than 10,000 private repositories. Automated parsers scraped the acquired source code trees recursively, extracting AWS access keys, Google Cloud service accounts, database connection strings, and SendGrid/Mailgun SMTP secrets. The campaign staged over a terabyte of exfiltrated data inside an improperly secured Amazon S3 bucket (s3simplisitter) belonging to a previously breached victim. Sysdig identified the campaign via honeypot anomaly alerts after the actors executed unauthorized ListBuckets API calls, collaborating with AWS to dismantle the staging infrastructure.

Why it matters:

  • Bullet 1 — Technical & Architecture Risk: Storing inline access tokens in version control configs subverts perimeter defenses, turning minor web server misconfigurations into automated supply-chain compromises that expose entire private codebases and secondary cloud infrastructure.
  • Bullet 2 — Strategic & Defender Imperative: Organizations must strictly prohibit inline token storage in Git remotes, block external HTTP access to hidden directories at reverse proxies, and implement automated secret-scanning pipelines to revoke leaked cloud API keys immediately.