I wrote a full technical breakdown of the CISA/Nightwing GitHub credential leak that dropped last week. Sharing here because the coverage mostly stopped at "government agency leaked secrets" without getting into what actually failed at each layer.
What was in the repo (844 MB):
- AWS GovCloud admin keys in `Important AWS Tokens.txt`
- Browser password export: `AWS-Workspace-Firefox-Passwords.csv`
- Entra ID SAML certificates (full SSO impersonation capability)
- GitHub PATs (personal + professional)
- Kubernetes Kube-Config for CISA's Landing Zone DevSecOps cluster
- ArgoCD application files with secret-related YAML
- Terraform IaC describing internal cloud architecture
- CI/CD logs, internal documentation, service hostnames
The five defense failures I broke down:
Plaintext credential storage (baseline failure)
GitHub secret scanning deliberately disabled β this is the one that gets me. Push protection ships ON by default. Someone turned it off.
Shadow backup workflow β repo was structured as personal cloud storage for work assets, bypassing enterprise data controls
Zero internal monitoring detected this for 183 days. GitGuardian found it externally.
AWS GovCloud keys stayed valid for **48 hours after the repo came offline** β confirmed independently by Philippe Caturegli of Seralys
The 48h window is the underreported angle. Taking the repo down removes the exposure source. It doesn't revoke credentials already harvested. Anyone who scraped during the 183-day window still had working GovCloud admin access two days after the incident was "contained."
MITRE ATT&CK mapping: T1078, T1552.001, T1552.004, T1098, T1087, T1619, T1021, T1530, T1567.002, T1562.001
Detection rules included:
- Sigma rule for AWS key usage post-exposure (CloudTrail-based)
- gitleaks/TruffleHog scan commands
- Kubernetes API anomaly detection logic
- Honeytoken deployment strategy
Three-tier remediation plan: immediate (today), short-term (this week), strategic (30 days) β with specific commands and tooling recommendations.
Happy to discuss the detection engineering side or any of the MITRE mappings β some of them (especially T1562.001 for the secret scanning disable) are worth arguing about.