Things I build, break, fix, and write about

5 November 2026
Ransomware group fragmentation and detection priorities

Ransomware group fragmentation means the label matters less than the behaviour, and I trust activity over reputation every time. A small crew with rented services can do plenty of damage, so I watch for early signs, not familiar names, and I patch anything exposed before the attackers get bored.

5 November 2026
Security Advisory – 05 Nov 2026

Daily security advisory summary for 05 Nov 2026

4 November 2026
Linux kernel net/sched UAF constraints on CentOS 9 desktop

Linux kernel net/sched use-after-free looks messy on paper, and on CentOS 9 Desktop it is worse, because the obvious paths are blocked and the useful...

4 November 2026
AI-assisted pull requests raise review cost

AI-assisted pull requests look cheap until you try to review them properly. I’ve seen tidy code hide a lot of work, and the cost only goes up when a...

Latest blog posts you might like

12 July 2026
Managed ruleset tuning after Cloudflare rule changes

Cloudflare WAF managed rules do change under you, and the tidy-looking rule in the dashboard is not always the one doing the blocking. I have learned to trust Security Events first, then tune, because...

12 July 2026
Cloudflare URL Scanner Agent Readiness scores

Cloudflare URL Scanner Agent Readiness is one of those checks that makes a site look different once you know what it is measuring. I like that it is blunt, because the web is full of pages that work...

11 July 2026
Heap overflow in ngx_http_script_copy_capture_code()

I spent too long trusting rewrite logic that looked harmless, and that is usually when nginx rewrite module is_args bites back. Escaped input, stale state, and a buffer sized on the wrong assumption...

11 July 2026
Cloudflare Managed WAF rules: watch action changes

Cloudflare Managed WAF rules are easy to misread if you only skim the release notes. I look at the Security Events dashboard instead, because that is where a quiet detection turns into a block, or a...

10 July 2026
Handling backend restarts in Cloudflare Realtime SFU

Cloudflare Realtime WebSocket adapter handles brief backend restarts better than I expected, but only within a hard five-second window. That is enough to turn a wobble into a pause; after that, the...

9 July 2026
Detect Split ClientHello failures in TLS 1.3

Split ClientHello failures are exactly the sort of thing that waste an afternoon, because the server looks fine until a fragmented post-quantum handshake trips over something in the middle. TLS...

9 July 2026
Checking Logpush field mappings after schema updates

Cloudflare Logpush datasets do not always announce when they change shape, and that is where the trouble starts. I check the field map against real exports, because a parser that still runs can be...

8 July 2026
Local DNS proxy now preserves DNSSEC records

Cloudflare One Client for Windows now leaves DNSSEC records alone, which is exactly the sort of change I like, because it stops the client quietly meddling with answers. I have seen enough broken name...

8 July 2026
Cloudflare One Client for macOS DNS search suffixes

Cloudflare One Client for macOS can make a short hostname behave very differently, and most of the pain sits in the suffix list rather than DNS itself. I have seen perfectly sane machines fail because...

7 July 2026
Tracing acme.sh certificate handling in TLS interception

I spent too long chasing the neat version of TLS wiretapping reconstruction, then found the mess: shell parsing, token limits, and renewal timing. The interesting bit is not the packet capture, it is...