Tarek Cheikh
Founder & AWS Cloud Architect
On June 17, 2014, Code Spaces, a project hosting and source code management service, was hit with a distributed denial-of-service attack. That alone would have been an ordinary, survivable incident. What actually ended the company, permanently, within about 12 hours, was that the same attacker had also gained access to Code Spaces' AWS control panel.
Alongside the DDoS, the attacker left extortion demands in Code Spaces' AWS EC2 console, along with a contact address, and demanded payment to stop the attack. When Code Spaces' team attempted to regain control of the account instead of paying, they discovered the attacker had already created several backup logins of their own inside the account. Watching the recovery attempt in real time, the attacker began deleting resources: Elastic Block Store (EBS) snapshots, Amazon S3 buckets, Amazon Machine Images (AMIs), and a number of EC2 instances, largely at random, across the account.
By the time Code Spaces regained exclusive control, most of their data, including their backups, was gone. The company never recovered and shut down permanently.
It's tempting to read this as "AWS let a company get destroyed." That's not what happened. Every action the attacker took, deleting snapshots, buckets, AMIs, instances, was a legitimate action available to whoever held valid, authenticated access to that AWS account. The infrastructure worked exactly as designed. The failure was entirely on the access-control and architecture side, and it's a failure still worth studying because the same two root causes show up constantly today.
However the attacker initially obtained access to the AWS console, the account did not have layered protection strong enough to prevent one compromised credential from granting full, unrestricted control. Multi-factor authentication on the root and administrative access, combined with IAM users scoped to only what each person or system actually needs, turns "one stolen password" from a company-ending event into a contained incident.
This is the lesson that outlived the company. Code Spaces' backup strategy relied on the same AWS account, and largely the same access, as their production infrastructure. Once the attacker had administrative access to the account, there was no independent, isolated copy of the data left to recover from. A backup that can be deleted by the same compromised credentials protecting production isn't really a backup, it's just another copy inside the same blast radius.
A decade later, "our backups live in the same account as production, protected by the same credentials" is still one of the most common gaps a real AWS security review finds. Code Spaces is the case study for why that specific gap is existential, not theoretical.
Sources: contemporaneous reporting from The Hacker News, CSO Online, and PCWorld (June-July 2014), and Code Spaces' own public statement at the time of the incident.
This article is just the start. Get the full picture with our free whitepaper - 8 chapters covering IAM, S3, VPC, monitoring, agentic AI security, compliance, and a prioritized action plan with 50+ CLI commands.
Contain active threats, investigate what happened using CloudTrail and VPC Flow Logs, and come out with a hardened environment, not just a patched hole.
Comprehensive security assessments and implementations to protect your cloud infrastructure.
KloudSec, built by the team behind Toc Consulting
What you just read is a manual, one-time check. KloudSec runs this and 400+ more automated checks across 90+ AWS services, continuously, agentless, live in about 5 minutes.
Toc Consulting: AWS Security & Cloud Architecture
Our team helps engineering teams secure and architect AWS the right way: assessment in week one, a prioritized action plan in week two.
How a misconfigured WAF, an unauthenticated metadata service, and an over-privileged IAM role combined to expose data on roughly 100 million people in the US and 6 million in Canada, and the specific checks that would have stopped it.
A security company got breached through one exposed AWS API key on an internet-reachable instance. Even the people who build WAFs for a living can miss this.
KloudSec, an agentless AWS security platform, is live. Why I built it, and why small and growing companies deserve the same protection as the largest ones.