A deep dive on agent sandboxes
56 points
1 day ago
| 7 comments
| pierce.dev
| HN
Gerharddc
5 hours ago
[-]
Very interesting read, I had no idea agents already had so much sandboxing built in! It does seem like this is probably not enough though.

A few months ago I built https://github.com/Gerharddc/litterbox (https://litterbox.work/) primarily to shield my home directory from supply-chain attacks, but I imagine it could be very useful for defending against rogue agents too. Essentially it is a dev-container-like system for Linux built on rootless Podman with a strong focus on isolation and security.

A key difference to normal dev-containers is that it encourages placing your entire dev environment (i.e. also the editor etc.) inside the container so that you are even protected from exploits in editor extensions for instance. This also makes it safer to allow agents (or built tools) to for instance install packages on your system since this is not the "real" system, it is only a container.

Another important feature I added to Litterbox (and one I have not seen before) is a custom SSH agent which always prompts the user to confirm a signing operation through a pop-up. This means that things inside a Litterbox do not have unrestricted access to your normal SSH agent (something which could provide rogue actors access to your Github for instance).

reply
ashishb
1 day ago
[-]
6 months back I started dockerizing my setup after multiple npm vulnerabilities.

Then I wrote a small tool[1] to streamline my sandboxing.

Now, I run agents inside it for keeping my non-working-directory files safe.

For some tools like markdown linter, I run them without network access as well.

1- https://github.com/ashishb/amazing-sandbox

reply
Gerharddc
5 hours ago
[-]
Very nice! Quite a coincidence, but the NPM disaster also prompted me to build litterbox.work as a possible solution. It is a very different approach though.
reply
tapete1
5 hours ago
[-]
Why not just use the standard Linux tool bubblewrap?
reply
Gerharddc
4 hours ago
[-]
The main reason is that in addition to sandboxing, I also wanted something similar to dev-containers where I can have a reproducible development environment. I guess that can also be achieved with Bubblewrap, but when you want to run containers anyway, it seems silly to not just use Podman.
reply
ashishb
5 hours ago
[-]
Interesting project.

This won't work on Mac, right?

reply
Gerharddc
4 hours ago
[-]
Unfortunately not since it is very much designed for Linux. I imagine it should work fine inside a Linux VM on Mac though.
reply
tapete1
5 hours ago
[-]
Of course not. But it is not needed, as Mac users are not interested in data safety.
reply
nullishdomain
1 day ago
[-]
This looks awesome! Do you have a mental process you run through to determine what gets run in the sandbox, or is it your default mode for all tools?
reply
ashishb
1 day ago
[-]
> This looks awesome! Do you have a mental process you run through to determine what gets run in the sandbox, or is it your default mode for all tools?

Here's what I use it for right now

- yarn - npm - pnpm - mdl - Ruby-based Markdown linter - fastlane - Ruby-based mobile app release tool by Google - Claude Code - Gemini CLI

Over time, my goal is to run all CLI-based tools that only need access to the current directory (and not parent directories) via this.

reply
tapete1
5 hours ago
[-]
Why not just use the standard Linux tool bubblewrap?
reply
linolevan
12 hours ago
[-]
The secret proxy trick is something I expect to become standard at some point in the near future. I first saw this trick being used in Deno Sandboxes (https://docs.deno.com/sandboxes/security/) but it's cheap/easy to implement so I'd be surprised if this doesn't become the standard for a lot of these BaaS platforms.
reply
pama
1 day ago
[-]
I would like to see more articles about agent sandboxes. With agents gaining popularity we need a higher fraction of users to understand containers and sandboxes and their risk profiles, and then to communicate their understandings to friends and family. It is a harder task than explaining ChatGPT, and it often feels like a hindrance.
reply
sea-gold
10 hours ago
[-]
reply
gouthamve
19 hours ago
[-]
Hugged to death? Seeing SSL failure to the site from CloudFlare.
reply
zmj
12 hours ago
[-]
devcontainers, devcontainers, devcontainers
reply
binsquare
12 hours ago
[-]
I don't think containers are enough especially for the security side of things.

Imo microvm's+ dev containers seem like a good fit though

reply
bigwheels
12 hours ago
[-]
Totally, devcontainers are fantastic! In this agent sandboxing space there's also Leash, which in addition to Docker/Orbstack/Podman provides a sophisticated macOS-native system extension mode - https://github.com/strongdm/leash
reply
jeffrallen
6 hours ago
[-]
> turning complete

Dude, really?

reply