There's just no excuse for this to keep happening, but the processes meant to prevent this are clearly failing.
There's just no excuse for this to keep happening, but the processes meant to prevent this are clearly failing.
Making a bucket public should come with red flags, and there should be a simpler way for client-side code to securely access a bucket. If I save a user's uploaded files to the filesystem, I usually have to go out of my way to expose that. Even novices are less likely to put them inside the web root, so exposing such files involves jumping through hoops. Opening a bucket to the world is too easy in AWS.
Calling this situation "insecure defaults" was imprecise of me, my point was more that Amazon gives you a Big Red Button to "fix" things which has consequences like this.
I mean, there's a difference between being a novice and being stupid.
I find it funny how today there have to be red flags, warning signs and double confirmations everywhere. Are people less competent or are there simply lower requirements when hiring them?
Windows tells you that using a password is probably a good idea for a user account. Many websites these days force you to use a combination of letters/numbers/special characters.
Why doesn't Amazon say "hey, this is publicly available, you wanna fix it?"
They do. It's clearly warned about in the interface both at the time you make it so and with a big "PUBLIC" sticker label afterwards. What's more, I've received warning emails from AWS notifying of (intentionally) public buckets.
Public buckets for private data are a deliberate and wilful choice by lazy, reckless administrators.
A stressed engineer waiting for the rug to be pulled out from under him is capable of just about anything.
I'm also not a devops person, so I'm definitely not debating in my wheelhouse here. It's just crazy to keep reading about a seemingly preventable problem that has the potential to do major damage in regards to data exposure.
Also, amazon is improving their UX for these things already.
They probably didn't care, and should suffer consequences as a result.
This looks like a really small company who contracted this stuff out to a WordPress shop. There's almost no tech employees or positions on job boards for them.
This guy may have known exactly what he was doing, but relented to other higher ups who told him to do something. The shitty part is now this is public, all the execs can point to the developer and say it was his fault and fire him without incurring any repercussions themselves.
Now, if you don't know your S3 bucket is public that's entirely on you.