Back to News
Advertisement
Advertisement

⚡ Community Insights

Discussion Sentiment

27% Positive

Analyzed from 1711 words in the discussion.

Trending Topics

#vercel#encrypted#env#don#sensitive#more#value#security#article#means

Discussion (66 Comments)Read Original on HackerNews

kstrauserabout 4 hours ago
I think this is wrong about what “sensitive” means here. AFAIK, all Vercel env cars are encrypted. The sensitive checkbox means that a develop looking at the env var can’t see what value is stored there. It’s a write-only value. Only the app can see it, via an env var (which obviously can’t be encrypted in such a way that the app can’t see it, otherwise it’d be worthless). If you don’t check that box, you can view the value in the project UI. That’s reasonable for most config values. Imagine “DEFAULT_TIME_ZONE” or such. There’s nothing gained from hiding it, and it’d be a pain in the ass come troubleshooting time.

So sensitive doesn’t mean encrypted. It means the UI doesn’t show the dev what value’s stored there after they’ve updated it. Not sensitive means it’s still visible. And again, I presume this is only a UI thing, and both kinds are stored encrypted in the backend.

I don’t work for Vercel, but I’ve use them a bit. I’m sure there are valid reasons to dislike them, but this specific bit looks like a strawman.

nextaccountic17 minutes ago
> Only the app can see it, via an env var (which obviously can’t be encrypted in such a way that the app can’t see it, otherwise it’d be worthless)

Yeah, I'm very confused. It's not possible to encrypt env vars that the program needs; even if it's encrypted at rest, it needs to be decrypted anyway before starting the program. Env vars are injected as plain text. This is just how this works, nothing to do with Vercel.

This situation could some day improve with fully homomorphic encryption (so the server operates with encrypted data without ever decrypting it), but that would have very high overhead for the entire program. It's not realistic (yet)

rcxdudeabout 1 hour ago
You always get people screaming about 'it should have been encrypted!' when there's a leak without understanding what encryption can and can't do in principle and in practice (it most certainly isn't a synonym for 'secure' or 'safe').
CodesInChaos23 minutes ago
Encryption turns your data confidentiality problem into a key management problem.
dnnddidiej16 minutes ago
Also if you want to keep a secret a secret forever, encrypted but saved data may be easily decrypted in the future. Most secrets though in reality are less useful in X years time.
ErroneousBoshabout 1 hour ago
Whenever someone says "But it should have been encrypted!" about things like configs on a server, I ask them how they'd implement that in practice.

PoC or GTFO.

I think you'll find it's a bit harder to do than you expect.

dnnddidiej19 minutes ago
Where I work we started using Vault and you store the vault key (as in looup key) in as a regular non-hidden env var. I think this is probably more solid.
nalleroothabout 2 hours ago
I don't know how it works on Vercel, but on other platforms it usually means that the value will be redacted in logs as well.
dkerstenabout 2 hours ago
This is also how other cloud providers do it, eg DigitalOcean.
darkwaterabout 1 hour ago
I don't want to do the easy finger-pointing and scapegoating but honestly, what should happen to the Context.ai employee that thought it was a good idea to play games in their work machine and, on top of that, install cheats which are by definition of dubious provenance? I know defense in depth, security layers etc etc but there is also some personal responsibility at play here. We can chalk up the Vercel's employee mistake to a defense in depth failure that's on the whole company and management, but installing a cheat...
gmercabout 1 hour ago
Let’s just say that OpSec at companies adopting AI is low across the board because security just isn’t a deciding feature at the moment. See McDonalds breach 2 years ago
ErroneousBoshabout 1 hour ago
Right? This isn't "A Roblox cheat and an AI tool", this is a failure of basic basic basic opsec across two organisations.

One for which the Context.ai employee needs to have their arse booted up and down the car park for.

sitkack43 minutes ago
What about the context.ai security team?

You can blame individuals, but security is a property of the system.

yoaviramabout 4 hours ago
I believe this is inaccurate. Vercel env vars are all encrypted at rest (on their side). The 'sensitive' checkbox means you can't retrieve the value once it's set, which would have saved your ass in this case. Also, annoying to read an article like this without a single link to source material.
trick-or-treatabout 4 hours ago
I think it's clear that some customers env vars got exposed, so that can only mean unencrypted, right?
TheDongabout 4 hours ago
They said "encrypted at rest", which they almost certainly are.

If you spin up an EC2 instance with an ftp server and check the "Encrypt my EBS volume" checkbox, all those files are 'encrypted at rest', but if your ftp password is 'admin/admin', your files will be exposed in plaintext quite quickly.

Vercel's backend is of course able to decrypt them too (or else it couldn't run your app for you), and so the attacker was able to view them, and presumably some other control on the backend made it so the sensitive ones can end up in your app, but can't be seen in whatever employee-only interface the attacker was viewing.

trick-or-treatabout 4 hours ago
Hmm, that's confusing. So they're eventually encrypted but plain-text at some point? Doesn't sound good TBH.
EdwardDiegoabout 4 hours ago
A frigging Roblox cheat...

And I thought it was bad when my son got compromised by a Roblox cheat, but they only they grabbed his Gamepass cookies and bought 4 Minecraft licenses, which MS quickly refunded...

uyzstvqsabout 1 hour ago
This essentially means that Vercel got hacked by a bunch of teenage script kiddies. Though on the positive side, we'll probably see some arrests soon.
ethinabout 4 hours ago
This looks really really AI-generated even if the author did try to hide it by making some grammar elements improper. Idk if that diminishes it's accuracy though.
post_below35 minutes ago
It's absolutely LLM prose, though not all of it. Maybe the author rewrote parts.

The thing that concerns me is that even at a site like HN, where a lot of people are very familiar with LLMs, it seems to be passing.

I hate to think this will become the norm but it's not the first HN linked post that's gotten a lot of earnest engagement despite being AI generated (or partly AI generated).

I'm very comfortable with AI generated code, if the humans involved are doing due diligence, but I really dislike the idea of LLM generated prose taking over more and more of the front page.

curiousObjectabout 2 hours ago
The author’s site is on Vercel.

So I believe the author has exposure to the issue and interest in understanding it, that’s more than AI alone has got.

progbitsabout 4 hours ago
I don't know why you are downvoted. The article is AI blogspam, it doesn't have any more factual information than eg https://www.darkreading.com/application-security/vercel-empl... and is full of empty LLMisms. It's depressing people are willing to read this.
mchl-mumoabout 4 hours ago
I didn't notice till I saw this comment and now I'm also confident it's significantly AI written.
progvalabout 4 hours ago
Because a comment that just says it's AI generated provides no value to the readers. They could at least provide an alternative link like you did.
croemerabout 2 hours ago
It does provide value in that I know I shouldn't read it. It's clearly LLM written after a few glances.
paganelabout 1 hour ago
That article you linked to didn't mention that Context.ai, from where this mess originated, is a YCombinator company. Most probably its founders are on this very web-forum.
nilsbungerabout 3 hours ago
I thought the same. Normal people don’t write that way.
sitkack41 minutes ago
Soon they will!
azalemethabout 1 hour ago
Very ironically, they seem to have upped their game. Trying to read TFA on an older version of firefox gives me the lovely message:

Failed to verify your browser Code 11 Vercel Security Checkpoint, arn1::1776759703-rtDgRAtRyXvjD4IoU4RbqvkGmvQQCP7H

Gah.

jesse_dot_idabout 4 hours ago
> How many developers do you think knew that checkbox existed? How many assumed their database credentials and API keys were encrypted by default?

If I don't see asterisks, I'm not hitting save on the field with a secret in it. Maybe they were setting them programmatically? They should definitely still be looking to pass some kind of a secret flag, though. This is a weird problem for a company like Vercel to have.

apgwozabout 4 hours ago
You pretty much have to assume someone is going to put sensitive data in an input like this. Encryption by default is the only sensible choice.
SOLAR_FIELDSabout 4 hours ago
Do you ask a bridge engineer if they forgot to reinforce the supports when they built the bridge? Even when I didn't know about security this was a table stakes thing. People saving sensitive things in plaintext are upset that their poor practices came back to bite them. Now, at the risk of sounding like I'm victim blaming here, Vercel is also totally bearing some responsibility for this insanity. But come on. FAFO and all that.
mudkipdevabout 4 hours ago
I'm getting a "failed to verify your browser" error on this article
NitpickLawyerabout 4 hours ago
And, ironically, it's hosted on vercel :D
voidUpdateabout 2 hours ago
Something has gone screwy with the timestamps on this page... They're saying they were posted "in 8 hours", "in a day", then the last one is "an hour ago"
rightbyteabout 1 hour ago
Last edit maybe? It is so annoying when sites don't publish the original timestamp.
voidUpdateabout 1 hour ago
It's still showing a time in the future, which only makes sense if there is some kind of error with the server time or some kind of weird timezone conversion gone wrong
ashirviskasabout 1 hour ago
Can confirm, in 6 hours.
varun_chabout 4 hours ago
Context.ai seems like it was the SPOF. By definition it has a lot of your data, and they didn’t secure it properly.
trick-or-treatabout 4 hours ago
Clearly, Vercel should not have been compromised by this. I don't know who Context.ai is but I do know Vercel and I expected better from them. I also think we can expect to see a lot more stories like this.
aroido-bigcatabout 2 hours ago
Feels like the bigger issue here is how much implicit trust we’re starting to place in these AI-integrated workflows.

Tools that sit in the middle (like Context.ai) end up becoming a pretty large attack surface without feeling like one.

Advertisement
jFriedensreichabout 1 hour ago
I don't see storing non-sensitive environment variables unencrypted as the main issue here. Sure at vercels scale, encryption at rest for any data would add some better baseline, but i see this article as two major user interface fails more than anything else. Oauth dialogs are just pathetic, they are years behind what is required and what UX research knows how to do things, none of the companies invested any amount of resources into it after it just worked well enough not to make most users churn. The env var problem is also ridiculous, you can only update, not see and check values in the interface if they are encrypted for most providers i know, that leads to really annoying UX and is the reason they are not marked as sensitive by default and opt out. Even if you could unlock them to edit, no one will enter their password again as that is too much hassle, meaning we need a way to read and edit encrypted env vars in the interface where they are created but not have more in the way than a passkey dialog. Its doable but afaik no provider would go the extra mile to get to this UX.

(Of course there are tons of other red flags not looked at in the article, eg. how does an employees machine get access to production systems and from there access to customers connected with oauth and how does the attacker get to env vars from a google workspace account)

trick-or-treatabout 4 hours ago
According to the email I got from Vercel it was a limited subset of customers and I'm not one:

Initially, we identified a limited subset of customers whose Vercel credentials were compromised. We reached out to that subset and recommended that they rotate their credentials immediately.

At this time, we do not have reason to believe that your Vercel credentials or personal data have been compromised.

sitkack39 minutes ago
That parentset was just you.
R41about 4 hours ago
good article, these AI products are crazy supply chain risks.
ryanisnanabout 4 hours ago
Convenience is our Achilles heel, as a society.

We'll keep dangerous devices like the SuperBox in our homes, if it helps us get access to free movies and tv.

We'll use single-use plastics, even if we know they're bad for the environment, because they're just so damn easy.

We'll let AI run that thing for us, because it's just too easy.

A whole generation has grown up without knowing what it was like to infect your computer with AIDS trying to download an MP3, and it shows. That caution will come back, just at a terrible cost.

notpachetabout 3 hours ago
> Convenience is our Achilles heel

More generically, our species' Achilles heel is our inability to factor in the long-term cost of negative externalities when evaluating processes that yield short-term positive results.

kauliabout 1 hour ago
This. From simple personal choices to the marker economy and politics. With games we're introduced to cheat codes pretty early in our lives. Some people outgrow them, some don't. Too bad our systems encourage their use, whether it's a time-to-market thing, cutting costs, or the next election.
trick-or-treatabout 4 hours ago
When life gives you AIDS, make lemonAIDS!
ChrisArchitectabout 4 hours ago
Related:

Vercel April 2026 security incident

https://news.ycombinator.com/item?id=47824463

doctorpanglossabout 4 hours ago
This article is LLM authored and full of hallucinations. "Let that sink in for a second."