YOLO Mode, Safely: MicroVM Sandboxes for Any Agent — Rowan Christmas, Docker
Read the Portuguese translation →
Author: AI Engineer · Watch on YouTube
Video authored by the channel shown, not by IANIA; all rights belong to the creator. Transcript and summary generated automatically; the original-language content is preserved.
Original language: English
Original video: YOLO Mode, Safely: MicroVM Sandboxes for Any Agent — Rowan Christmas, Docker · Channel: AI Engineer · 11:11 · Watch on YouTube
Topics: AI agents, Cybersecurity and software security, AI governance and regulation, AI safety
Summary
Section titled “Summary”Rowan Christmas describes how an AI coding agent running on a desktop was able to find sensitive browser and banking information, despite the user believing the coding harness was safe. He argues that prompts and harness-level safeguards are insufficient, and presents Docker’s SBX microVM sandbox as a way to isolate agents from host files and control network access. The talk also covers audit trails, configurable governance controls, and future plans for agent identity and policy-based permissions. SBX can run coding agents and other workloads while supporting controlled file-system mounts.
Key points
Section titled “Key points”- A desktop coding agent found browser history and sensitive banking details after a small number of prompts.
- The speaker says agents can work around safeguards that rely on the harness or instructions such as “please don’t do” something.
- Docker’s SBX creates a microVM with its own kernel and an isolated file system.
- The sandbox is designed to prevent agents from seeing host secrets and to control network requests.
- The demo shows browser-history access blocked inside the sandbox, as well as network traffic blocked by default.
- The system provides an audit trail and configurable network, file-system, and MCP catalog controls.
- Docker developers use sandboxes for their daily coding work, according to the speaker.
- Planned governance features include agent identity and delegation tracking, Cedar-based policies, L7 networking controls, and more granular GitHub repository permissions.
- SBX runs on Mac, Windows, and Linux, and can run agents, shells, code, Python jobs, and web servers.
- Users can mount additional file systems, including read-only repositories, so agents can access code without modifying it.
Chapters
Section titled “Chapters”| Start | Chapter | Summary |
|---|---|---|
| 00:12 | The risk of trusting coding harnesses | Christmas introduces Docker’s SBX and explains how his experiment revealed that a desktop coding agent could locate sensitive browser and banking information. |
| 03:24 | Why microVM sandboxing | He contrasts instruction-based safeguards with microVM isolation, describing protections for files, secrets, network requests, and auditing. |
| 05:26 | Demonstrating SBX protections | The demo shows an agent unable to find browser history in the sandbox and describes default network blocking and Docker’s internal use of sandboxes. |
| 07:00 | Governance and policy controls | Christmas discusses microVM boundaries, agent identity and delegation tracking, and current and planned governance controls. |
| 09:37 | Using SBX with agents and other workloads | He explains SBX availability across operating systems, its support for varied workloads, and the option to mount repositories read-only. |
Quotes
Section titled “Quotes”It is not uh it’s not your friend. — 03:24
we want to be secure by design — 04:25
it does not even think there’s a browser installed on your machine. — 05:58
If it gets down to your host machine, it’s too late. — 07:00
It feels native. It works just the same way as your one did today, but you’ve got all these protections in store. — 10:08
Concepts and entities
Section titled “Concepts and entities”microVM, SBX, Docker, Rowan Christmas, Claude Code, CrowdStrike, Cedar, MCP, Claude Code, Codex
Full transcript (original language)
Section titled “Full transcript (original language)”00:12 Hey everybody, I hope you had a good lunch. I know it’s one of the last talks of the entire conference. I tried to make it somewhat engaging and amusing. So, you know, audience participation is is encouraged. We’ll see how it goes. So, I’m here with Docker. Uh, I’m one of our product managers that works on our new sandbox product. I don’t know if you’ve seen it. It’s a new binary for Docker. It’s called SBX. Uh, it’s a microVM. It’s really cool. You should come check it out. But I’m going to tell you why uh you might want to use it in
00:45 context of agents doing governance and being safe in general for your agentic platforming needs. So right now, you know, all of you are doing way more AI than you ever thought you would 5 years ago. At least I am. And we generally think that we’re being protected by our coding harnesses because if we try to do something bad, they will sometimes stop us. And when we see stories, we think, “Oh my gosh, I would never make this mistake to have my AI drop my prod database. You know, I’ve
01:17 been doing coding for 30 years. There’s no way I would possibly do that.” So what I decided to find out was well what happens if I actually try to hack myself and how far can I get with you know our tools and what we’ve been told is a safe environment. So I opened up my claude code on desktop on my Mac and I had it look for my browser history uh and it found it right away which I was very impressed about. And I asked it uh what can I what can I do with this? And so we
01:50 started looking at my bank accounts which I was uh surprised about. And it found them. Uh which I was very unhappy about. I made fake bank names. This is not my real data, just so you know. But it did find all of my real bank data on there. Uh and it went even further. It found that I’ve been ordering checks recently, that I’ve been using zel. It told me the last four digits of the account I was using. Um I was I was very impressed. And here’s kind of an idea of all the
02:20 PII that it found. Um, this is from again the clawed desktop app uh that we thought was safe. Anyways, maybe maybe there’s a better solution. Who knows? So, the next day I came in and I got from my security team uh a nice little notice that I they thought I’d been hacked. And so I had to explain to them that no, no, no, I’m just putting together a talk for this conference and uh please please don’t flag me as a as a a compromised computer. And then they sent me the crowd strike report from
02:51 this which I asked them to do. And I was quite impressed with it. Apparently this is a known way to get uh credentials from a machine. Didn’t realize that. And I had scored very well on this. I got a nine out of 10 which uh is better than I did in most of my classes. So that was that was really good. But fortunately this was just me internally. It was not some sort of you know injection from a script or MCP server or anything that could easily happen. So five five prompts is what it took. Um
03:24 I had to be a little clever. I couldn’t if I just if you just ask straight up like hey Claude go find my bank data. It kind of it it will give you a warning. But if you say, “I’m researching how to do security,” it’ll happily go and help you do that research on your account. It is not uh it’s not your friend. So if if only there was a better way to do this using a sandbox microVM technology that Docker and others have
03:54 released recently. So rather than just saying please which you know if you look in some of these cloud prompts you’ll see please don’t do nefarious things right like that is the level of security we’re at. So now we’ve got microVMs if you’re not aware of them compared to I know you’re probably all aware of Docker been using it for years. The new thing now that we and others are doing is with microVMs they run their own kernel. They isolate your file system. We have a system that will go and make sure that the sandbox never actually sees your
04:25 secrets. When you try to go and do a network request, it takes a placeholder, replaces it so that your sandbox and your agent can’t do bad things. We’ve got a full audit trail for it. Uh so yeah, we want to be you want to be secure by design, not just, you know, hope and say please and see what’s going to happen. We’re trying to do this balancing act, right? If we don’t actually if we can’t actually do these things, the agent’s not useful. So that’s why this whole
04:55 sandbox idea is so exciting for us. We encourage you to use it. Um, and maybe, you know, don’t let your bank data get into the hands of your agent. That’s not that’s not what you want. So this is what it looks like in practice when you’re running a sandbox. Uh on the uh left side is when I run claude and on the right side is when I do sbx run claude. And you can see that there there’s a lot of uh differences. That’s a joke. Sorry, they’re not. It’s just
05:26 the bypass permissions are on, but it’s nothing nothing else uh was hard to do. Right. Running that command on the right automatically creates a new VM. It spins it up in that folder and it makes a new sandbox for you. It runs your agent. Now you’re up and running. It can’t see anything. So if we try to do our browser history attack on regular claude, it happily goes and finds your browser history. But if I run it on the sandbox version,
05:58 it does not even think there’s a browser installed on your machine. So pretty cool. No difference. I had to type uh seven more keystrokes to get here, but I think it’s well worth the uh the price to pay. Same thing is true for network egress and ingress. So, right here, I’d uh I tried to get it to go and look up uh the pirate bay because I I knew that would be blocked and sure enough, blocked by default. The other thing you kind of see, it’s hard, maybe it’s hard to see,
06:28 but like the uh Claude likes to really send back a lot of telemetry data to their data dog instance. So if you’re using Claude, uh you are sending anthropic a lot of your data, unless you’re using sandboxes, in which case you’re cleverly being blocked by that. The other thing I’ll say about sandboxes, they’re so easy to use. Every developer at Docker now writes all of their code in sandboxes. So we are using this every day. Hey, we’re writing all of our code in it. If we don’t use it, we get uh we get yelled at. So, it’s
07:00 worth our time to to go and do that little defaults on this. All of this is configurable. Um, and so now that we talked about like why this matters, right? So, doing this at the harness level doesn’t really work. Agents find their way around it. If it gets down to your host machine, it’s too late. So, you want to be at that microVM boundary. We think it’s the best way. other people do too. And it’s easy to use. If you’re working in consulting, if
07:31 you’ve got a, you know, chief security officer, if you do client work, whatever it might be, you’re probably dealing this with this on a day-to-day basis. So, not only do you want this to be useful, but also you want to do things and enable your agents to do different things, right? So, one of the things we’re really excited about is doing like agent level identity tracking and delegation chains. So, when you can start saying, “Hey, how come this thing happened?” And you can go back and say, “Oh, that’s because an agent did it and a human actually authorized that agent
08:03 to do it. It didn’t just happen by magic. We didn’t know. We don’t it’s not like we don’t know how what happened.” Now, we’re going to start tracing that, tell you tell you about it, and let you write policy that actually goes and does degradation of uh what you can do based on Cedar policies based on new new things happening. And you might say to yourself, “Oh my gosh, this is so good. I would like I would like to buy it now. How do I how do I buy this from you guys?” And so I have my marketing slide
08:34 that my marketing team is really mad at me that I made this, but I think it’s funny and cute for AI governance. So definitely talk about that. Okay. What does AI governance look like? You’re doing this is what this is what it looks like in kind of a mockup. So right now we’ve do we do network, you can set allow, deny, you can do file system uh points, and you can also decide what your MCP catalog looks like. Also, if you’re running our MCP server, our MCP servers themselves run on a
09:06 sandbox. So, they are also governed by all of these different controls. In the future, we’re going to be adding more stuff. One of the things we’ve heard from a lot of people at this conference is that they want to do uh L7 networking controls. They want to do uh like per GitHub repo file system level controls, right? like you want your agent to be able to read and write to some repos and some areas of some repos but not others, right? So, all of this is going to be coming down the line, but
09:37 everything that I’ve showed you today is working. Um, and you should come by our booth and see that it’s easy to install. We run on Mac, Windows, and Linux uh based on your uh package manager of choice. And you can see at the end it’s just sbx run. It’s not just cloud by the way. The the sandboxes are a full VM. So you can run a shell, you can run codeex, you can run whatever, you can run a python job,
10:08 you can run a web server, anything you want to do, but we want to make it easy for you to get in and up and running. So this is kind of our default. So you can just get in, you can get that cloud code or codeex instance going. It feels native. It works just the same way as your one did today, but you’ve got all these protections in store. Uh, additionally, you can mount other file systems. So, what I do is when I’m working on a, you know, a piece of code with related repositories, I’ll mount those uh, read only. That way, my agent
10:40 can see what I’m doing, it can see my other codebase, but I know it’s not going to make random commits to other repos just to make my thing work, right? I want the guarantee that it’s actually doing what it says it’s doing with the API that I’ve specified. So that’s it. Pretty short. We have a booth. We have a few sunglasses left and some power banks to give away. You should come by our booth and I’ll walk over there afterwards and give you the demo and then you can look as good as uh
11:11 Macho Man Randy Savage with those glasses. So there you go. Thank you.