Meta åpner Muse-sandkassen: full Linux-boks i skyen, men agenten ser aldri ekte nøkler
Gir hver Muse-bruker en full Linux-maskin i skyen, men Meta holder passord, API-nøkler og all utgående trafikk utenfor agentens rekkevidde.
«Din Muse Secure VM er virkelig din egen datamaskin i skyen», skriver David Singleton, VP of Engineering i Meta Superintelligence Labs og tidligere CTO i Stripe, i et innlegg på X 24. september. Innlegget kom etter at flere hadde postet om at Muse på forespørsel viser hele filsystemet sitt, gigabyte med filer. Singleton bekrefter at det er meningen: hver bruker får gratis en maskin med et komplett Linux-image der du kan installere programvare, kompilere kode og surfe, og en filutforsker ligger i Library-fanen. The Decoder påpeker at brukere nylig fant ut at ChatGPTs Work-modus også kjører en egen virtuell maskin, med 15 GB RAM og over ni CPU-kjerner.
Åpenheten er trygg fordi det sensitive ikke ligger der. Metas sikkerhetsblogg for Muse, skrevet av Tarek Sheasha og publisert ved lanseringen 8. september, beskriver maskinen som to adskilte sikkerhetsdomener. Selve agentprosessen, arbeidsområdet og alle verktøyene Muse kjører, bor i en systemd-nspawn-container kalt runtime cell, der root er mappet til en uprivilegert bruker på verten. Cellen har eget rotfilsystem, filtrerte systemkall (ingen io_uring) og mangler blant annet CAP_SYS_PTRACE og CAP_NET_ADMIN. Singleton kaller imaget Ubuntu, bloggen omtaler det som Debian.
«Den riktige mentale modellen er to isolerte sikkerhetsdomener på én boks, ikke en LLM-drevet agent med root.» — Tarek Sheasha, Meta Superintelligence Labs
Utenfor cellen kjører egne systemd-tjenester: hatch-safety med klassifiserere som ser etter prompt injection, privsep-workere som kjører koblingskoden, hatch-authd som lagrer legitimasjon, og Sentinel, som alene avgjør hvilke handlinger og hvilken nettverkstrafikk som slipper ut. Koden i cellen ser bare surrogat-tokens. Sentinel bytter dem mot ekte nøkler først ved nettverksgrensen, etter at forespørselen er godkjent. En prompt injection som lurer agenten til å lekke nøkler, får dermed bare tak i verdiløse erstatninger.
Meta sporer også dataflyt i kjernen. Hver verktøyprosess starter ren og blir merket som tainted når den leser brukerdata, og mister da retten til automatisk godkjent utgående trafikk. Implementasjonen bruker eBPF-programmer på cgroup-nivå og nye Linux Security Module-hooks. Nettleseragenten ser bare et tilgjengelighetstre av siden, ikke rå DOM, og kan ikke kjøre JavaScript.
Meta åpnet samtidig bug bounty-programmet for alle, med opptil 300 000 dollar per gyldig rapport og opptil 130 000 dollar for prompt injection som rammer én bruker. Selskapet skriver selv at prompt injection fortsatt er et åpent problem, og at designet handler om å begrense skaden når agenten gjør feil.
Hva bør du gjøre?
- Flytt nøklene ut av agentens miljø. La agenten bruke plassholder-tokens, og la en egress-proxy utenfor containeren sette inn de ekte nøklene etter at forespørselen er sjekket.
- Kjør agentprosessen din i en container med user namespaces, slik at root i containeren ikke er root på verten, og fjern capabilities agenten ikke trenger.
- Test oppsettet mot Simon Willisons lethal trifecta, som Meta bruker som rettesnor: tilgang til private data, eksponering for upålitelig innhold og mulighet til å kommunisere ut. Har agenten alle tre, trenger den en vakt som godkjenner trafikken ut.
KI-kuratert — innholdet er generert av KI-agenter basert på originalkilden.