
Pinned Tweet
Earlier this week I gave a talk to our internal hacking teams about the difference between good hackers and great ones that have been able to impact our field. I included three extended quotes - two from writers and one from Hamming that influenced my approach early on. Maybe some of it is useful for you.
Dominic White 👾 retweeted
Replying to @InsanityBit
It's still attack surface reduction if you are separating functionality implementation by security boundaries. For example, a monolithic service is more space for a vulnerability that compromises its entire database. An ingress-style reverse proxy partitions that attack surface across multiple services. The more sensitive the functionality, the smaller the service should be and furthest down the service call tree.
Dominic White 👾 retweeted
This week has been quite a shitshow already, and there are still 2 days to go
Here’s a quick recap of the security mess we’ve seen in just the last few days:
1. PHP Core RCE (CVSS 9.2)
Two critical vulnerabilities (CVE-2026-109618/109619) allowing unauthenticated RCE. A huge number of PHP installations potentially affected, and there are already reports of reliable exploitation against patched versions. Great…
Useful links:
Official PHP advisory and patches:
php.net/archive/2026.php#202…
Practical hardening and mitigation guide by Vincent Schmalbach. nginx/Apache configurations, PHP settings, patch verification and compromise checks:
vincentschmalbach.com/cve-20…
Huntress analysis. What to monitor, suspicious child processes, webshells and post-exploitation activity:
huntress.com/blog/php2shell-…
Wiz technical deep dive. Exploit mechanics, memory disclosure, affected applications and the role of AI:
wiz.io/blog/php2shell-php-rc…
Corelight’s open-source Zeek and Suricata detection rules:
github.com/corelight/php2she…
2. GitLab RCE (CVSS 10.0)
CVE-2026-110264. An integer overflow in the regex compiler leading to unauthenticated RCE. Apparently affects around 12 years(!) of GitLab releases.
docs.gitlab.com/releases/pat…
3. Node.js / Brotli RCE
CVE-2026-111497. An out-of-bounds write in the Brotli decoder that can lead to RCE when processing malicious compressed data. Node.js 22, 24 and 26 affected.
nodejs.org/en/blog/vulnerabi…
4. DNS-over-QUIC DoS
CVE-2026-97206. A use-after-free in Unbound’s DNS-over-QUIC implementation. Remote attackers can crash affected multi-threaded DNS resolvers.
nlnetlabs.nl/projects/unboun…
5. eMudhra CA disaster
And then there’s this absolute PKI clusterfuck. Eight intermediate CA private keys turned out to be ridiculously easy to reconstruct.
Browser vendors have started blocking the affected CAs, but outdated clients and applications with their own trust stores could keep accepting certificates from them. Cleaning up this mess is a lot harder than just patching a server.
Google’s analysis and response:
blog.google/security/protect…
Mozilla’s public incident investigation, including the technical findings, timeline and eMudhra’s explanations:
bugzilla.mozilla.org/show_bu…
—
And I can’t help wondering how much of this sudden wave of discoveries has to do with the latest AI models getting better at code review and vulnerability research.
We now have models that can dig through massive codebases and potentially find bugs that have been sitting there for years.
I’m not saying these particular vulnerabilities were discovered using AI. I haven’t seen evidence for that. But I do wonder whether we’re starting to see some of the effects.
The eMudhra case is obviously a different story. That’s a spectacular failure of key management and quality control.
Anyway, quite a week. And it’s only Thursday…
🤖 Made with AI
Added support for the compromised eMudhra intermediaries to gopostille. It'll let you create a validly signed certificate chain for a clone leaf cert in places that haven't revoked them. 1/2
2/2 I've hidden it in a feature branch, and likely won't put it in main. You an grab it here github.com/sensepost/goposti…
eMudhra has two interesting implications for me beyond the obvious browser trust issues.
I'm excited for the opportunities to liberate closed hardware this provides. We know hardware, particularly abandoned IoT devices are unlikely to be updating their revocation lists and root CAs. This means we can potentially intercept previously encrypted comms, or sign previously protected firmware.
I'm also interested in how well the revocation works at a WiFi supplicant level. Rogue RADIUS servers (mana, wpe, eaphammer) can now use validly* signed chains for forged leafs with TLS protected EAP modes. I'm not sure how well the revocations work in that world given the difference in the CA trust model in use there.
Dominic White 👾 retweeted
Something that gets lost in all these conversations is that there were years when a major 0day would drop and technical details were almost impossible to come by. Multiple people here would stay up for days reverse engineering the issue and stitching together a working PoC, not just to prove exploitation was possible, but to help defenders understand the actual risk, develop IoCs, build detections, and clean up compromised environments.
Honestly, yesterday's PHP vuln chaos wasn't that different from what we've seen in the past. The classic "it's coming get ready" race to reproduce coupled with the classic misleading noise from the discussion feels pretty familiar. Humans make it messy.
Autonomous LLM work on the PHP bugs was a real worry until you realise how few people understand exploitation well enough to prompt around ASLR and offsets. So many lab only /goal outcomes masquerading as something more general.
Dominic White 👾 retweeted
LLMs...Letting me do fun things I never would have wasted time on.
"I reviewed all 30 public GitHub repos for PHP2Shell (CVE-2026-109618 / CVE-2026-109619) by reading code only. The slide has the full
grouped table; the headline findings:
Nothing works against a real target. Every genuine memory-corruption chain is lab-bound: it needs exact per-build offsets, display_errors=On, a single prefork mod_php worker, and a specific image.
Independent reviewers (allureluoli, dinosn, Gi1gamesh123) and the leaked primary source itself all converge on "no public artifact achieves code execution" on the patched core bug. Every real shell
in these repos comes from an app-side LFI or deserialization sink, not the CVE.
Three are original and real, all lab-only. 9bie (the source of the Set-Cookie leak chain), Marven11 (the most sophisticated, a true in-band leak), and Karasawa2025 (whose "Fermat" troll description
hides a working ROP + display_errors=off exploit). These are the only ones with a genuine ASLR-defeating leak primitive that is their own.
Most are copies. One original (9bie) spawned five derivatives:
- twili8 is an outright uncredited rip-off: its own README still says git clone 9bie/... and the Docker files are byte-identical.
- godylockz and xuehuolll are byte-identical to each other.
- dinosn and 3em0 are credited ports that add value.
Three are mislabeled. iQingshan, KarimUD7 (≈98% the same code), and Gi1gamesh123 exploit a different bug entirely (the Calif unserialize var_hash UAF) against their own planted endpoints, filed
under the php2shell CVE numbers.
The rest is noise. The most-starred repo (ikow, 905★) delivers the least: broken or stubbed chains with the two "real" ones paywalled behind Substack. eness (558★) is a leakless forge that can't
defeat ASLR. syrex1013 ships AI-generated fake CVEs in a side directory. Whackermelon hallucinates a non-existent openai/php2shell-checker. lcfr-eth is a parody with a memecoin address, and Icex0
is an empty repo. The genuinely honest work is the crash labs (allureluoli, slabbdev, 0x4148), which prove the bug without claiming RCE.
The ASLR column, star counts, copy lineage, and the specific "tell" for each repo are all in the table. The page is private to your account; use the Share menu if you want to send it to the team"
Dominic White 👾 retweeted
I'm very sad Microsoft decided to deprecate runDetails for custom detections via the GraphAPI. This was the only official method to track detection health in Defender XDR. I can't understand why removing this is deemed a good idea, this was important.
learn.microsoft.com/en-us/gr…
php2shell - CVE-2026-109618 / CVE-2026-109619 github.com/ikow/php2shell-po…
"Just fix your stuff" or "Just do the basics" was always a sign of immaturity in cyber security, but if it's your advice in the face of the current state, maybe go spend some time trying that before stating it so confidently.
Looks like there's a new P0 in town @daveaitel @halvarflake @maddiestone all at OpenAI. Already a dream team in @nicowaisman @moyix @fede_k at XBOW. Let's see what @benhawkes builds at Anthropic. All the hackers working at AI companies now O_o at least it's not the defence industry eating vuln researchers anymore.
Wait, what github.com/Fluepke/emudrahah…
And the keys were generated on an HSM?!
bugzilla.mozilla.org/show_bu…
















