
Most of our guests come at security from the outside, as auditors and researchers. Antonio Viggiano sits on the other side of the table: he's a Senior Security Engineer at the Monad Foundation, working on protocol fuzzing for the chain's consensus and execution clients.
Monad's architecture makes that a genuinely different problem. Unlike Ethereum, with its many interchangeable clients, Monad has a single pair: a C++ execution client and a Rust consensus client, both built by Category Labs. That tight coupling buys optimisations, but it also means a bug that looks real in one client is often quietly mitigated by the other. Test one in isolation and you drown in false positives.
That's where Monad Bugfinder came from, and the origin story is the opposite of what most people assume. It didn't start as a bug finder at all. It started as a triager, because the team was being flooded with AI-generated reports: convincing write-ups, plausible proofs of concept, and hours of human time spent working out which ones were real. Bug hunters optimise for recall. When you're the one receiving the reports, you need precision. Antonio walks through the validation gates that made the difference, why AI has a higher false positive rate than humans, and why the best human reviewers still find twice as many bugs as the best AI systems.
Key Topics
AI-assisted vulnerability discovery and triage
Invariant testing and protocol fuzzing
In-house security teams at protocols
Chapters
00:00 Introduction
00:38 From Solidity Developer to Security Engineer
03:10 Founding Recon and Cloud Fuzzing
04:39 What Is Invariant Testing?
06:38 Fuzzing Smart Contracts vs Blockchain Clients
08:41 Tooling Maturity and System Complexity
09:47 Extracting Invariants at the Protocol Level
11:11 Why Most DeFi Teams Don't Know Their Properties
13:29 Monad's Architecture: Two Clients, Tightly Coupled
16:29 Why Single-Client Bugs Create False Positives
17:21 Monad Bugfinder: Why It Started as a Triager
20:19 Precision vs Recall: Finding Bugs vs Receiving Reports
23:54 Inside the Triage Process
25:59 Reconstructing Proofs of Concept End-to-End
27:13 Should Smaller Teams Build Their Own?
30:06 Build vs Buy, and the Attackers Building It Too
32:27 Validation Gates: EIP Support and Differential Testing
35:49 Testing Against Geth and Nethermind
37:43 Local Clusters and Controllable Validators
42:00 Do AI Reports Have More False Positives?
44:37 The Economics: AI Tokens vs Audit Firms
47:47 Why Humans Still Find Twice as Many Bugs
48:14 When Your Scaffolding Goes Stale
51:52 Offense vs Defense and the Human Weak Link
54:27 The Roadmap: Making the System Generic
56:51 UltraFuzz: Agentic Fuzzing for Solidity
1:00:32 Specifications, Spec Drift, and AI-Written Code
1:04:08 Will AI Ever Write Bug-Free Code?
1:09:45 Where to Find Antonio
Resources and Links
Antonio's X: https://x.com/aviggiano
Monad Bugfinder blog post: https://blog.monad.xyz/blog/monad-bugfinder
UltraFuzz blog post: https://www.monad.xyz/blog/ultrafuzz
Monad: https://monad.xyz
Oak Security's Research: https://research.oaksecurity.io/
Otros episodios de "CypherTalk"



No te pierdas ningún episodio de “CypherTalk”. Síguelo en la aplicación gratuita de GetPodcast.








