
Security Engineer @trailofbits | @soliditors 🇫🇷
Joined August 2021
- Tweets5.8K
- Following2.7K
- Followers4.8K
- Likes27.4K
At @summit_defi in Mumbai I gave a talk on what we learned from running hundreds of AI agents on dozens of widely used OSS for Patch the Planet at @trailofbits 🎤
Here's the written version with 3 lessons you can apply to your next DeFi audit 👇
Great read from the @Xbow research team
> It also highlights that the ability to solve the hardest problems and the ability to solve many problems cheaply are different capabilities. A defender conducting a comprehensive assessment might want a model capable of pursuing complicated attack paths over a long period. But an attacker opportunistically searching for vulnerable systems may care much more about the number of promising targets they can investigate for a fixed cost.
Once again the asymmetry between attackers and defenders shows up, because defenders need the best and most expensive models to cover the whole system while an attacker can cheaply poke at every possible hole until one of them works.
xbow.com/blog/top-ai-models-…
When I submit a bug bounty report I also ask my Dot to keep an eye on the target's GitHub for any commit or PR that touches the code from my submission
The fix often lands in the repo before the program replies to the report so I know where things stand without waiting on the triage queue
And it also lets me review the fix early and check whether it addresses the root cause or only the exact exploit path from my report
Fully agree that using a different agent on every website is annoying but most people don't have their own agent yet because outside our Twitter bubble AI agents are still very niche, so the realistic ask is an option to bring your own agent when you have one
I wonder when we'll start seeing the first prompt injections hidden in HTML
OpenCode Browse is now available
it lets your agent control your real browser with your tabs and logins and extensions
opencode.ai/product/browse
> coding is solved, but bugs are not.
Which basically means that software engineering used to be 90% writing code and 10% testing it, and I think we're heading toward 10% coding and 90% testing
I unironically agree with @bcherny’s take that “coding is solved, but bugs are not.”
The deeper meaning is that you can in theory code *anything* now. You can burn infinite tokens refining and optimizing. Including optimizations that no one will care about 💀
With Vercel you can build a different kind of recursive improvement loop. You capture traces from production, you then optimize and course-correct based on how your software is being used IRL.
This is not a new idea. The best engineers I’ve ever worked with never jumped into coding (now prompting) right away. You instrument the system, collect data, understand distributions, user journeys, and then put fingers on keyboard.
You can ask your agent today to look at your traces!
Patching has really become the hard part of our job while finding bugs is now one prompt away for anyone with Daybreak.
So why we turned our analysis of 130+ Patch the Planet patches into two skills to help devs and maintainers patch their code quickly and safely: blog.trailofbits.com/2026/10…
Some of the biggest openings in security have nothing to do with patching
How breaches began, per a 2026 report:
- 31% exploited a vulnerability
- 35% used phishing, stolen logins or impersonation scams
And nearly half now involve a vendor or partner, up 3x since 2024
Full piece from a16z's Asaf Ezra and Steph Zhang on six cybersecurity companies worth building: a16z.news/p/defense-in-depth…
Every time I think I've tried everything with AI, a prompt this simple (yet this powerful) humbles me
And Patch the Planet engagements are the ones I've had the most fun working on lately
There's no feeling quite like finding criticals in widely used OSS and helping passionate maintainers improve their projects for the long run
FV is all the rage right now but this is proof that there are still plenty of critical bugs waiting to be found with good old fuzzing
*sshole is out
if you run sshd on alpine, openwrt or any musl box with password auth on: update now
official writeup: sshhole.com
Very interesting work by the OpenAI Cyber team
Stronger models needing less orchestration is also something we quickly realized while building our main auditing harness at Trail of Bits (Auditron)
Instead of strong constraints from the harness, that were needed with previous models, we now focus on four things: using different model families, coordinating their work, enforcing persistence, and providing the right tools/skills at the right time rather than fixed recipes
Our security researchers built an autonomous cyber vulnerability discovery, exploitation, and patching pipeline.
In a single run with an upcoming cyber model, it validated and generated patches for 948 local privilege escalation vulnerabilities in the Linux kernel at a total API cost of $1.2 million.
Most of my work now happens in the ChatGPT/Codex desktop app but I still use the Codex CLI from time to time
And the big weakness there is phone notifications
You run a /goal for hours, come back, and realize it's been stuck on a question since 10 mins after you left 🫠
So I set up push notifications for every Codex CLI event with Codex's native hooks and ntfy
Following everything from my phone is great and since it's integrated with the native hooks it works really well
Here's a simple prompt to set it up:
```
Set up ntfy push notifications for every Codex CLI event using Codex's native hooks, then give me the topic to subscribe to
```

















