Writing / 2018
Spectre and Meltdown: What We Patched in the First Five Days
Five days after the Spectre and Meltdown disclosure: what we patched at a fintech startup, what KPTI costs, and what it means for shared infrastructure.
January 3rd. I’m on holiday. Phone buzzes. Then buzzes again. Then doesn’t stop.
Spectre and Meltdown dropped and I spent the next 48 hours glued to my laptop instead of doing literally anything else. First thing I did was SSH into every production box at the fintech startup. Not because I thought someone was actively exploiting this. Because I needed to know what we were exposed to. Fintech. Customer data. Financial feeds. The stakes don’t leave room for “I’ll check Monday.”
What made my stomach drop: these aren’t software bugs. They’re baked into the silicon. Speculative execution, the thing that makes modern CPUs fast, is the attack surface. Decades of chip design. Every major vendor. That’s not a patch-and-forget situation.
What happened
Meltdown lets unprivileged code read kernel memory. The CPU speculatively executes instructions before permission checks finish. The architectural state rolls back but the cache doesn’t. So you can infer secrets from other processes. Neat trick if you’re an attacker. Nightmare if you’re running anything multi-tenant.
Spectre is worse in some ways. Two variants. One bypasses bounds checks to read past array limits. The other injects branch targets to hijack speculative execution. Cross-process data leakage. Affects Intel, AMD, ARM. Basically everything.
Taking part in national cyber-defense exercises left me more scared of hardware vulnerabilities than software ones. Software you can patch, rewrite, isolate. Hardware you can mitigate with microcode and kernel workarounds, but the flaw stays until you physically replace the chip. And nation-states have known about classes of side-channel attacks for years. The fact that this is now public and weaponizable by anyone with a browser and some JavaScript should terrify every CTO reading this.
What we patched at the fintech startup
Patched the OS on every server: Linux kernel updates with KPTI for Meltdown. Spectre Variant 2 is messier. Google published its retpoline technique on the 4th, but kernels built with it haven’t reached the stable trees yet, so that one is on the watch list. Pushed browser updates across the team because yes, JavaScript in a browser tab can exploit this. Then started the firmware conversation with our hosting providers, which is still ongoing because microcode updates require reboots and coordination.
Quick sanity check on every box:
grep -q "page_table_isolation=on" /proc/cmdline && echo "KPTI enabled"
dmesg | grep -i retpoline
The first line only matches if someone forced KPTI on at boot. Patched kernels turn it on by default, so dmesg | grep -i isolation is the more reliable check. The retpoline line will stay empty until you’re running a kernel built with it. If KPTI isn’t showing up, you have work to do tonight.
Cloud providers are rebooting instances and patching hypervisors on their own schedules. If you’re on AWS, GCP, Azure, check your provider’s advisory page. Don’t assume they’ve already handled your instances. Verify.
The performance hit is real
KPTI isn’t free. It adds overhead to every system call because the kernel page tables get unmapped from user space. Extra TLB flushes on every context switch. I/O heavy workloads get hit hardest. Databases especially.
We saw measurable regression on our PostgreSQL instances. Not catastrophic, but enough that I had to plan for additional capacity. If you’re running near your limits already, this patch just pushed you over. Scale out now. Don’t wait for the alerts.
Compute-heavy workloads with few syscalls? Barely noticeable. But most real applications aren’t pure compute. They talk to databases, hit APIs, read files. The early reports say 5-30% overhead depending on workload. Measure your own systems. Benchmarks from Intel’s blog are useless for your specific stack.
The bigger problem
These vulnerabilities destroy a core assumption: that hardware isolation works. In multi-tenant environments, containers sharing a kernel, VMs sharing a host, a malicious neighbor can now potentially read your memory. That’s cloud computing’s dirty secret laid bare.
I’m not saying abandon the cloud. I’m saying: know where your sensitive data lives. If you’re processing financial data on shared infrastructure with no dedicated tenancy, reconsider that decision today. Not next quarter.
Also think about hardware diversity. If your entire fleet is Intel, you just concentrated all your risk on one vendor’s architecture. The next disclosure might hit differently. Spread the bets.
This isn’t over
Spectre and Meltdown are the first. Not the last. Speculative execution is a rich attack surface and researchers are just getting started. Your patching pipeline needs to be fast, automated, and tested. If applying an emergency kernel update takes your team a week of manual work, that’s the real vulnerability. WannaCry made the same point last year from the software side.
Future CPUs will have hardware fixes. But silicon refresh cycles are measured in years. Whatever you’re running today, you’re running for a while. Plan accordingly, and update your threat model: the CPU itself is now part of the attack surface. Welcome to 2018.