Home / Vaults / Black Hat EU 2025
AI vs. AI — Black Hat Europe 2025
A conference keynote shipped as a vault: the deck that was presented, the six PDF exports it went through, the eight research papers it was built from, and the entire source history of the slide system that renders it — behind one read key. Opening the vault launches the deck full-screen.
Read key:
sgit_rk1_147fa50d3c491aeea3e700d60ef21ea2897884e263700d95765dc8f624dc59ac:k1izvg7eIn the official UI: open it read-only in a new tab · From the CLI:
sgit clone sgit_rk1_147fa50d3c491aeea3e700d60ef21ea2897884e263700d95765dc8f624dc59ac:k1izvg7ePublished deliberately, and derived one-way from a vault key that is not published and never will be.
See it live, here
The deck opens automatically below and is driven with the arrow keys — → next, ← previous, F for fullscreen. You can also open it in its own window ↗.
The talk
AI vs. AI: Building Resilient Enterprises in the Age of Autonomous Threats — Dinis Cruz, AI Security Summit, Black Hat Europe 2025, ExCeL London, 9 December 2025. Twenty-six slides.
Four pillars, and an admission
The argument opens by conceding the ground rather than claiming it. Security's four pillars — all broken, followed immediately by the more uncomfortable slide: we've been getting away with it.
The evidence there is four publicly documented outages, none of them attacks: a timing bug that wiped out a global database, a config inconsistency that propagated silently and then detonated worldwide, a routine config change that halted traffic, and a faulty update that bricked 8.5 million Windows machines.
The turn is one line at the bottom of the slide: "These weren't sophisticated attacks — they were minor glitches that cascaded. Now imagine if they were deliberate, coordinated attacks."
The new insiders
The middle of the deck reframes agents as an insider-threat problem and then draws the comparison directly: human insiders have natural limitations on skill and time and rarely act at machine speed; AI agents have neither constraint.
From there it separates three categories of AI-driven threat and asks why enterprises are not ready — arriving at fragile by default as the diagnosis rather than a lack of tooling.
The defender's edge
The second half is constructive, and several of its slides describe things this site now demonstrates: assume compromise, contain blast radius, version control everything, identity graphs for least privilege at scale, and knowledge graphs as the mechanism.
It also argues for funding non-functional requirements at unprecedented scale, treats vibe coding as the new spreadsheets — a governance problem rather than a fad — and ends on don't become the department of 'no'.
Those threads have their own homes now: risks and nfrs, graphs, nhi for agent identity, and coding.
Why it is a good vault
A deck emailed as a PDF is a snapshot with its working removed. This one ships the whole chain in a single object, addressed by one credential:
| Path | What it is |
|---|---|
index.html | The deck as a self-contained vault app — 26 slides, ~976 KB |
deck/blackhat-eu-2025.json | The slide content. Edit this, commit, push — the app reads it through the vault bridge at load time, so a content change needs no rebuild |
pdf/ | Six exports, v0.1.1 through v0.2.0 — the deck as it looked at each stage |
research/ | Eight background papers the talk was built from, Parts 1 through 7 |
source/v0/v0.1/ | The slide system itself at ten versions, v0.1.0 to v0.1.9, unmodified |
The separation worth noticing is the third row. Content is data, not markup. The deck is a JSON file the app reads at load time, so changing a slide is a commit rather than a rebuild — which is also why the vault can carry ten versions of the renderer beside one deck without either owning the other.
"permissions": {} behind it.Notes
It asks for nothing. app.json declares "permissions": {} with present: true. A deck needs no filesystem access, so it requests none — the same posture as the Risk Graph Explorer.
Audited before publishing. No sgit credentials, no third-party API keys, no private keys, no email addresses, and no external company or client named. The organisations that do appear — AWS, Azure, Cloudflare, CrowdStrike — are cited for their publicly documented outages, which is what the slide is about.
The conference branding is the real thing. The deck uses Black Hat Europe's official speaker template, because it is a talk that was given there. It is published here as the speaker's own material, not as anything endorsed by or affiliated with Black Hat.
The source is public too. This vault republishes material that already sits in the open at the-cyber-boardroom/Presentation__BlackHat-EU__Dec-2025 ↗, so nothing here is first exposed by the vault — this is a second, addressable copy that travels as one object.