Kako SPACE usmerava zahteve ka pravom izvršavanju sandbox-a

SPACE kompanije Perplexity vezuje zahteve AI agenata za pravo izvršavanje sandbox-a pomoću provera identiteta i potpisanih ruta.

Transparent glass cube reflecting orange and blue light, with bright starburst highlights against a dark background.

Kada neko zatraži od AI agenta da analizira tabelu ili testira softver, veruje da će agent bezbedno raditi s njegovim datotekama i podacima. Agentima su potrebna izolovana okruženja u kojima mogu da obave taj posao bez izlaganja podataka drugih korisnika i bez ometanja njihovih radnih opterećenja.

Kako agenti preuzimaju sve složenije zadatke uz veću autonomiju, ova okruženja pomažu da se greške zadrže i da se ograniči šteta koju nebezbedan ili zlonameran kod može da prouzrokuje. Sandbox okruženja pružaju tu izolaciju, a istovremeno dele servise kontrolne ravni, radne čvorove i infrastrukturu za rutiranje.

Ta deljena infrastruktura mora da isporuči svaku operaciju onom izvršavanju koje je ovlašćeno da je obradi. Zastarela ruta može da pošalje validan zahtev drugom sandbox-u ili starijem izvršavanju pravog sandbox-a. SPACE, platforma kompanije Perplexity za bezbedna sandbox okruženja, vezuje svaku operaciju za izabrano izvršavanje i proverava odredište pre prosleđivanja.

SPACE već mesecima obrađuje milione izvršavanja dnevno, od kojih je svako zaštićeno jedinstvenim kriptografskim identitetom, sa stopom grešaka ispod 0,0002% i bez ijedne prekinute veze.

Problem rutiranja

Bezbednost sandbox-a zavisi i od toga da svaki zahtev stigne na pravo odredište. Čak i jednostavno čitanje datoteke prolazi kroz deljenu infrastrukturu koja mora da prati gde se sandbox izvršava dok se pauzira, nastavlja rad ili premešta između mašina.

Čitanje datoteke prolazi kroz nekoliko komponenti. Kontrolna ravan sistema SPACE određuje kom izvršavanju i radnom čvoru sandbox pripada. Zahtev ulazi kroz node-api, prelazi do menadžera sandbox-a, sbx-manager, i preko Unix soketa stiže do mosta hosta, spaced-host. Most ga prosleđuje preko VSOCK-a, soket transporta između hosta i gosta, do spaced-guest unutar Firecracker mikro-VM.

Svaka odluka oslanja se na stanje koje može da kasni za promenama infrastrukture. Baza podataka može da zadrži stari raspored, adresa iz keša može da pokazuje na drugo mesto, a putanju soketa može da preuzme drugi osluškivač. Uspešna veza i dalje može da stigne na pogrešno odredište. Čitanje bi moglo da otkrije podatke drugog korisnika; upis bi mogao da izmeni pogrešan sistem datoteka.

Snimci stanja donose još jedan problem. Nastavak rada sandbox-a na drugom radnom čvoru čuva njegov logički identitet, ali pokreće novo izvršavanje. Zakasneli zahtev ili veza koja je preživela mogu da stignu do njegovog prethodnika i vrate staro stanje pod pravim imenom sandbox-a.

Identitet sandboxa i identitet izvršavanja

SPACE razdvaja korisnikovo okruženje od izvršnog okruženja koje ga opslužuje:

  • Identitet sandbox-a: Stabilan ID logičkog okruženja. Autorizacija pozivaoca utvrđuje pristup ovom sandbox-u.
  • Identitet rute/izvršavanja: Izabrana inkarnacija runtime okruženja i njen raspored, uključujući worker, supstrat i aktivaciju.

Generacija izvršavanja razlikuje inkarnacije izvršnog okruženja. Na Kubernetesu ruta uključuje i UID poda. Adrese lociraju krajnje tačke; identitet izvršavanja određuje da li te krajnje tačke smeju da opsluže operaciju.

Pretpostavimo da se sandbox S izvršava kao izvršavanje 7 na radnom čvoru A, a zatim nastavlja rad kao izvršavanje 8 na radnom čvoru B. Zahtev izabran za izvršavanje 8 mora biti odbijen ako stigne do izvršavanja 7. Provera samo ID-ja sandbox-a ne bi otkrila to neslaganje.

Potpisani izbor izvršavanja

Svaki zahtev nosi potpisani dokaz o tome koje izvršavanje sandbox-a sme da ga obradi i koji je pristup dozvoljen. Komponenta koja prima zahtev proverava taj dokaz u odnosu na sopstveni identitet izvršnog okruženja pre nego što dozvoli da se zahtev nastavi.

Nakon autorizacije pozivaoca, SPACE izdaje kratkotrajno, potpisano ovlašćenje koje identifikuje sandbox, izvršavanje, raspored i dozvoljeni pristup. Ovlašćenja za javne servisne portove dodatno navode dozvoljeni port i protokol.

Menadžer sandbox-a koji prima zahtev proverava potpis i upoređuje kompletan identitet sa svojim lokalno sačuvanim zapisom o izvršnom okruženju. Potpis utvrđuje ko je autorizovao izbor. Poređenje utvrđuje da li se taj izbor poklapa sa primaocem.

ServicePort saobraćaj prolazi drugu proveru na mrežnom prolazu svakog sandbox-a, netgtw, pre nego što se otvori veza ka gostu. Mrežni prolaz upoređuje identitet sa pouzdanim stanjem aktivacije i proverava port i protokol. Kontrolne operacije prelaze na verifikaciju krajnjih tačaka mosta.

SPACE koristi Ed25519 potpise. Ključevi za potpisivanje u kontrolnoj ravni izdaju ovlašćenja; javni ključevi za verifikaciju na radnim čvorovima i mrežnim prolazima ne mogu da ih izdaju.

Ovlašćenja traju 120 sekundi, uz toleranciju odstupanja sata pri isteku od najviše 15 sekundi. Validan potpis i token koji nije istekao i dalje nisu dovoljni kada se izabrani i instalirani identitet ne poklapaju.

Odbijanje na pogrešnom odredištu

Radni čvor koji prima zahtev može da uoči grešku u rutiranju čak i kada je sam zahtev autorizovan. Proverava da li je kod njega pokrenuto upravo izvršavanje izabrano za taj zahtev i odbija zahtev ako to nije slučaj.

Ako zahtev izabran za izvršavanje 8 stigne do workera A, koji i dalje opslužuje izvršavanje 7, worker A ga odbija pre prosleđivanja. Kada primalac instalira identitet izvršavanja 8, on odbija i ovlašćenja (capabilities) za izvršavanje 7, čak i pre nego što ona isteknu.

Ova garancija ima važnu granicu. Ovlašćenje za izvršavanje 7 i dalje može da se poklopi sa radnim čvorom koji opslužuje izvršavanje 7 sve dok taj radni čvor ne sazna da je izvršavanje povučeno ili dok ovlašćenje ne istekne. Lokalno sprovođenje i ograničeno trajanje ovlašćenja deluju zajedno dok se ažuriranja šire.

Verifikacija krajnjih tačaka mosta

Odgovarajući zapis o izvršnom okruženju utvrđuje nameravano izvršavanje. Kontrolni most takođe mora da stigne do procesa i transporta koji pripadaju toj aktivaciji, a ne do zamene koja je nasledila istu adresu.

Menadžeri sandbox-a i čvora proveravaju akreditive suprotne strane mosta hosta, kao i identitete procesa mosta i procesa Firecracker, uključujući vremena pokretanja, čime otkrivaju ponovo iskorišćene ID-jeve ili izmenjene izvršne datoteke

Provere transporta vezuju VSOCK osluškivač za očekivani Firecracker proces na osnovu vlasništva nad soketom, identiteta gosta i dokaza o soketu iz kernela. Most prosleđuje operacije tek nakon verifikacije i odbija transparentna ponovna povezivanja. Svaka nova veza mora ponovo da prođe provere.

Ova verifikacija obuhvata kontrolni most za Firecracker na Kubernetesu i na hostovima kojima se upravlja direktno. ServicePort saobraćaj prolazi provere izvršavanja i porta na svom mrežnom prolazu; on ne potvrđuje identitet proizvoljne aplikacije unutar gosta.

Trajanje tokova i oporavak ruta

Neke veze ostaju otvorene dok se izvršavanje sandbox-a menja, pa provere identiteta moraju da se protežu i nakon početnog zahteva. SPACE povlači veze vezane za staro izvršavanje i omogućava podobnim operacijama da se ponovo povežu sa trenutnim izvršavanjem uz iste bezbednosne provere.

Terminali i praćenja datoteka mogu da nadžive zahteve kojima su otvoreni. SPACE vezuje tokove bekenda za epohu identiteta, tako da tok ne može da ostane povezan s prethodnikom nakon što primalac instalira zamensko izvršavanje.

SPACE ponovo proverava trajni identitet pre otvaranja toka. Zamena njegove rute ili izvršavanja poništava zakup toka i zaustavlja ulaz i izlaz.

Promene vlasništva razlikuju se od zamene izvršavanja. Primopredaja operacije životnog ciklusa na nepromenjenom rezidentu u Kubernetesu čuva njegov identitet rute, ovlašćenja koja nisu istekla i tokove. Mrežni prolaz takođe čuva uspostavljene tokove pri promenama koje se odnose samo na pokušaj aktivacije u okviru iste rute i iste generacije izvršavanja. Za nova otvaranja potreban je ažurirani identitet.

Oporavak ne narušava ove provere. Komparator identiteta može da vrati RefreshRoute u slučaju neslaganja inkarnacije unutar istog sandboxa ili Deny za drugi sandbox. Samo prepoznati signal za osvežavanje pokreće popravku rute nakon odbijanja identiteta. Greške u transportu podležu zasebnim pravilima oporavka specifičnim za svaku operaciju. Nevažeći potpisi, namene ili profili portova i dalje se odbijaju.

Podobna operacija može da razreši trenutno izvršavanje i obavi jedan pokušaj sa ponovo sastavljenim zahtevom. Zamena u kešu uslovljena je odbijenom rutom, čime se sprečava da zakasnelo odbijanje izbaci noviji unos. Osvežavanje izvorne sesije čuva prvobitni rok važenja keša, odvajajući popravku rute od obnove autorizacije pozivaoca.

Pravila za ponovno slanje i dalje zavise od operacije. Zamenski bekend mora ponovo da prođe prijem, čak i kada WebSocket veza ka klijentu ostane otvorena.

Kompromisi i granice poverenja

Identitet izvršavanja postaje stanje kritično za bezbednost. Ažuriranja kontrolne ravni i paketi ključeva za verifikaciju moraju da stignu do komponenti koje opslužuju zahteve, a povlačenje stupa na snagu kada svaki primalac instalira ažuriranje. Kratko trajanje ovlašćenja ograničava njihovu ponovnu upotrebu tokom širenja ažuriranja.

Dizajn pretpostavlja da je sprovođenje identiteta omogućeno i veruje potpisniku kontrolne ravni, kernelu radnog čvora i lokalnim servisima za upravljanje čvorom. Kompromitovanje root pristupa na radnom čvoru ili privilegovanog administratora klastera nije obuhvaćeno modelom pretnji. Verifikacija mosta je lokalna verifikacija procesa i transporta, a ne udaljena atestacija zasnovana na hardveru.

Verifikacija potpisa, poređenja izvršnog okruženja i validacija mosta dodaju posao na putanji zahteva. One koriste lokalno stanje umesto udaljene provere autorizacije na svakom privatnom koraku.

Poređenje u industriji

Relevantno poređenje odnosi se na to kako platforme postupaju kada autorizovani zahtev stigne do pogrešnog izvršavanja pravog sandbox-a. Ovi nalazi se odnose na pregledane implementacije, a ne na ukupnu bezbednost platformi. SPACE, OpenShell i E2B provereni su 8. oktobra 2026. godine:

  • OpenShell: Pruža uporediv izbor izvršavanja za nove pozive i vezivanje supervizora za izvršno okruženje kroz provere generacije i autorizacije na mrežnom prolazu, validaciju identiteta bekenda i potvrđene aktivne veze supervizora (prijem na mrežnom prolazu, autentifikacija i vezivanje izvršnog okruženja). SPACE prenosi potpisani izbor kroz celu putanju opsluživanja i dodaje lokalnu verifikaciju procesa i transporta na radnom čvoru; OpenShell raspoređuje odgovarajuće provere na svoj mrežni prolaz, identitet pri pokretanju i autentifikovani protokol izvršnog okruženja (dizajn izvršnog okruženja).
  • E2B: Prati ID-jeve izvršavanja i izoluje skupove proksija prema životnom ciklusu Firecracker-a, ali njegov ulazni proksi bira logički sandbox i port bez očekivanog identiteta izvršavanja sa kojim bi primalac mogao da uporedi (objavljivanje ruta, prijem na proksiju). Starije izvršavanje koje je na zastarelom primaocu i dalje registrovano kao aktivno, sa odgovarajućim akreditivima, ne može se tim proverama razlikovati od izabranog novijeg izvršavanja, iako uobičajeno gašenje uklanja rute i zatvara veze vezane za životni ciklus (akreditivi, gašenje).
  • CubeSandbox: Popravlja rutiranje pri nastavku rada i poništava keš, ali privatni ulazni saobraćaj koristi akreditive ograničene na sandbox i prosleđuje se bez očekivane inkarnacije izvršnog okruženja (rutiranje pri nastavku rada, rutiranje ulaznog saobraćaja). Popravka ruta skraćuje vremenske prozore sa zastarelim rutama; ovlašćenje vezano za izvršavanje u sistemu SPACE takođe daje primaocu nezavisnu osnovu da odbije pogrešnu inkarnaciju.

Identitet kao granica izolacije

Bezbedno delegiranje zavisi od toga da rad svakog agenta ostane u granicama koje su mu namenjene. Mikro-VM pruža izolaciju, dok okolna platforma mora da obezbedi da svaki zahtev i svaka aktivna veza stignu do izvršavanja koje je ovlašćeno da ih obradi.

SPACE čini identitet izvršavanja delom te zaštite. Proverom odredišta, verifikacijom krajnjih tačaka mosta i vezivanjem veza za izvršavanje koje ih je autorizovalo, on čuva te granice dok se sandbox okruženja pauziraju, nastavljaju rad i premeštaju.

Nastavljamo rad dok se infrastruktura razvija. Za SPACE i druge sandbox platforme, bezbednost zahteva testiranje ovih putanja i na rutinske greške u rutiranju i na zlonamerna radna opterećenja, a zatim jačanje granica gde god ti testovi otkriju propuste.

  1. Bekstvo iz sistema SPACE: 1. deoIstraživanje23. sep 2026.
  2. Kreiranje platforme SPACE: Bezbedna i efikasna okruženja za izvršavanje dugotrajnih agenataIstraživanje15. jul 2026.
  3. Bezbedna okruženja u pesku za agenteVesti15. jul 2026.