Tooling
openssl s_client Answers Every TLS Question
Chain broken, SNI wrong, protocol refused, certificate expiring. The TLS questions that produce guesswork are all answerable from one command, and the…
Isolation boundaries, untrusted code, sandboxing and the difference between a configuration that looks safe and one that is.
Tooling
Chain broken, SNI wrong, protocol refused, certificate expiring. The TLS questions that produce guesswork are all answerable from one command, and the…
Deep Dive
Resumption was enabled everywhere and the repeat handshakes were still full handshakes. Session tickets need a shared key across every backend, and behind a…
Security
The credential was removed from the current tree and the team considered it handled. The blob still lives in history, in every clone and in every fork, and…
Bug Hunt
Two accounts selling the same product slug saw each other's cached pricing. The key was built from the thing that was shared, and the thing that differed…
Security
The codebase was fully parameterised except one helper that interpolated a column name into an orderBy. That single string was the injection, and the ORM…
Security
The login rate limit was working perfectly and the credential stuffing succeeded completely. A per IP limiter is a defence against a single attacker, and a…
Security
A next parameter that accepts any URL turns your trusted domain into the first hop of a phishing link. The user sees your hostname, trusts it, and lands…
Security
Any feature that fetches a URL the user supplies is a potential proxy into your internal network. The webhook settings page let an attacker reach the cloud…
Security
We pinned the signing algorithm on the way out and trusted the library on the way in. Algorithm confusion let a forged token verify successfully, and…
Bug Hunt
A support ticket said search was returning the wrong products. It was returning the right products for somebody else.
Security
Tokens rejected as expired seconds after issue, or accepted long after they should have died. Both are the same bug seen from opposite ends.
MicroVMs
The question is not whether an autonomous agent will do something destructive. It is what the destruction can reach when it does.