Skip to main content
  1. Dispatches/

Maciej Pocwierz's empty S3 bucket caused usage bill of over $1,300

·349 words·2 mins
Quotes Amazon Aws Development Security
Daniel Andrlik
Author
Daniel Andrlik lives in the suburbs of Philadelphia. By day he manages product teams. The rest of the time he is a podcast host and producer, writer of speculative fiction, a rabid reader, and a programmer.

A truly alarming tale where bad luck in choosing a bucket name resulted in a usage bill of over $1,300. All of it coming from unauthorized requests!

So, if I were to open my terminal now and type:

aws s3 cp ./file.txt s3://your-bucket-name/random_key

I would receive an AccessDenied error, but you would be the one to pay for that request. And I don’t even need an AWS account to do so.

Another question was bugging me: why was over half of my bill coming from the us-east-1 region? I didn’t have a single bucket there! The answer to that is that the S3 requests without a specified region default to us-east-1 and are redirected as needed. And the bucket’s owner pays extra for that redirected request.

Maciej Pocwierz, How an empty S3 bucket can make your AWS bill explode

The cause turns out to be that the bucket name happened to overlap with an open source application’s default configuration. So every company or individual deploying that app without updating the settings would end up trying to send write updates to his bucket!

At that point, I had one more idea I wanted to explore. If all those misconfigured systems were attempting to back up their data into my S3 bucket, why not just let them do so? I opened my bucket for public writes and collected over 10GB of data within less than 30 seconds. Of course, I can’t disclose whose data it was. But it left me amazed at how an innocent configuration oversight could lead to a dangerous data leak!

Per Amazon’s Jeff Barr, AWS is working on a way to prevent these types of overages from unauthorized write requests:

Thank you to everyone who brought this article to our attention. We agree that customers should not have to pay for unauthorized requests that they did not initiate. We’ll have more to share on exactly how we’ll help prevent these charges shortly.

But in the meantime, anyone can DDoS your bill if they know the name of your S3 bucket!

Keep it secret. Keep it safe.

Related

Quote: Naomi Klein on AI delusions
·90 words·1 min
Quotes Machine Learning Llm Development Tech
Because we do not live in the Star Trek-inspired rational, humanist world that Altman seems to be hallucinating. We live under capitalism, and under that system, the effects of flooding the market with technologies that can plausibly perform the economic tasks of countless working people is not that those people are suddenly free to become philosophers and artists.
Quote: Simon Willison on LLMs
·145 words·1 min
Quotes Machine Learning Llm Development Tech
I’m personally skeptical that LLMs provide enough benefit to outweigh their potential harm, and so I deeply appreciate those who are attempting to make them work without relying on pixie dust.
Vijith Assar on Security Risks from Billionaires
·118 words·1 min
Quotes Tech Security Open Source
Writing for Wired, Vijith Assar raises some excellent points on how bad actors with capital are the most dangerous threat to any system. Capital can kill code. Capital can kill anything.