Fooling Go's X.509 Certificate Verification

2026-06-06

Link: https://danielmangum.com/posts/fooling-go-x509-certificate-verification/

HN Discussion: 2 points, 0 comments

Of the fifteen stories on the table, this is the one that should make any backend or infrastructure engineer stop scrolling. Daniel Mangum (hasheddan, a well-known contributor in the cloud-native and TLS tooling space) has a track record of writing carefully-researched, low-level posts about cryptography internals. A post titled "Fooling Go's X.509 Certificate Verification" is almost certainly a deep dive into how the crypto/x509 package can be coaxed into accepting a certificate it shouldn't — and that's the kind of finding that ripples through a large chunk of the modern infrastructure stack.

Why this matters:

The post likely walks through a specific crafted certificate or verification call, shows what Go accepts, and explains the gap between developer expectations (e.g. "VerifyOptions with a pinned root means only that root's chains succeed") and what the code actually enforces. Expect concrete repro code — Mangum's posts usually include runnable examples — which makes this immediately actionable for anyone reviewing their own TLS verification paths.

At 2 points with zero comments, it's wildly underranked next to the usual "AI might transform your job" fare on the same page. Security posts about widely-deployed standard libraries deserve eyes before the CVE shows up in your dependabot inbox.

Why it deserves more upvotes: A concrete x509 verification bypass in Go's standard library affects nearly every CNCF project doing TLS, and this is exactly the kind of low-level analysis HN was built to surface.

All newsletters