The End of Obfuscation

Many cloud-deployed companies share a quiet reality: their DATABASE_URL is accessible from the public internet. Not with admin and password, but with a long, hard-to-guess string. It worked for a while, but that obfuscation has recently become a massive liability.

The Illusion of the Open Internet

It wasn't a terrible tradeoff. We protect a lot of things by just assuming nobody will stumble across them:

With enough entropy, this was a perfectly pragmatic bet. Nobody at your company is going to give a conference talk and proudly admit their production database binds to 0.0.0.0/0. But if the alternative was "we have to hire a full-time infra person because our CTO doesn't understand private networks," that was an acceptable decision to make.

"only a problem if it leaks"

That era is quietly ending.

Leaving your DATABASE_URL exposed today is reckless, entirely because we're entering the era of AI agents.

Your connection string might still be a needle in a haystack, but are you 100% sure your shared LLM provider isn't leaking context across sessions? Copilot and ChatGPT are reading our .env files, our commit histories, and our scratchpads.

They're probably doing their best to sandbox it, but that's not the point. You've already bet your career on your startup—are you really willing to use your customer data as collateral on that bet?

Day One Security

VPCs and private subnets used to be a "we'll fix this when we reach Series B" milestone. It was accepted tech debt you could safely float for a few years.

That grace period is gone. Fortunately, the tooling has caught up. Providers like Render make it trivial to spin up a database inside a private network—completely invisible to the outside world—without hiring a dedicated DevOps guy.

Getting your database off the public internet isn't something you graduate into anymore. You have to get it right on day one. Cloud providers are going to have to make strict firewalling the default, zero-config state.

I grew up in an era where you could be a highly paid software engineer, and the only reason you knew what a netmask was is because you had to type it into a Counter-Strike 1.6 dedicated server prompt (and frankly, I usually just guessed numbers until the computers connected).

The generation before us had to understand this stuff deeply. Now, host-based access restriction is going to make a hard comeback for us, too.

Maybe it'll convince more ISPs to finally give residential users guaranteed static IP addresses.

As for digital assets

Hardware security modules > BIP39 passphrases. A seed phrase like penguin penguin orgy sunshine orange lemon sky just isn't going to cut it anymore.

We've spent the last decade typing 24-word recovery phrases into browser extensions or snapping photos of them to "securely" hide in our iCloud folders. Now that we have desktop agents specifically designed to scrape your screen, read your clipboard, and index your personal files to "help you be more productive," relying on plaintext strings to secure your digital net worth is terrifying.

The private key needs to stay on the silicon. Whether it's a YubiKey for your SSH and GitHub access or a dedicated hardware wallet for crypto, the paradigm has to shift. You pass a payload to the device, the device signs it internally, and it hands back the signature. The actual key material never touches system memory.

It actually makes you wonder if the market for a physical safety deposit box at a local bank is about to make a hard comeback for regular people, too.

Here is a draft for that new section. I leaned into the practical, day-to-day engineering headaches that agents are going to cause, keeping the tone cynical but grounded.

Other things that break when the computers talk to themselves

Now that every user effectively has a junior engineer living in their menubar, a lot of our default assumptions about web architecture are going to age poorly. Exposing your database is just the tip of the iceberg.

The internet used to be built for humans reading documents. Now it's built for scripts executing functions, and our infrastructure hasn't quite caught up to the fact that it's no longer about your adversary's motivation, just their capital allocation decisions.

Get new posts by email

Get an email whenever I publish a new post.