Hızlı bir kill switch'in konforu
Nvidia'nın OpenShell'i gibi runtime containment platformları, otonom agent'lar için bir güvenlik katmanı olarak sunuluyor. Vaad edilen şey basit: bir agent süreci gözlemlenir ve sınırın dışına çıkarsa — izin verilmeyen bir yola yazma, beklenmedik bir socket açma, açmaması gereken bir süreç başlatma — platform müdahale edip onu sonlandırır. Bildirilen latency düşük milisaniyeler seviyesinde. Bu gerçek bir mühendislik başarısı ve aynı zamanda bir güvenlik argümanı inşa etmek için yanlış sayı.
Containment tek bir soruyu yanıtlar: bu çalışma hâlâ kutusunun içinde mi? Olayın ciddiyetini asıl belirleyen soruyu yanıtlamaz: bu çalışma bunu deneyebilmeli miydi? Bu ayrım felsefi değil. İç bir metadata endpoint'ine ulaşmaya çalışıp öldürülen bir agent ile oraya ulaşabilecek bir kimlik bilgisine hiç sahip olmamış bir agent arasındaki fark. İkisi de bir log satırı üretir. Yalnızca biri bir ihlal üretir.
Bu yazı, containment platformlarının bir yetki özelliği değil bir latency özelliği olduğunu ve agent güvenliğinin sandbox'ın içinde daha hızlı bir sonlandırma yolu yerine onun üstünde duran bir yetki modeline ihtiyaç duyduğunu savunuyor.
Containment gerçekte ne sağlar
Bir containment platformu, mekanik olarak bir denetleyicidir. Bir süreç ağacına bağlanır, bir kernel arayüzü üzerinden syscall'ları veya syscall benzeri olayları izler, bunları bir politikayla eşleştirir ve ihlalde öldürür. Tasarım hedefi sonlandırmaya kadar geçen süredir. Bunu azaltın, yanlış davranan bir agent'ın eyleme geçebileceği pencereyi azaltırsınız.
Bu pencere gerçektir. Aynı zamanda eylemin kendi hızıyla da sınırlıdır. Bir dosya sistemi yazımı mikrosaniyeler içinde tamamlanır; bir ağ isteği, denetleyicinin politika motoru onu durduracak kuralı değerlendirmeyi bitirmeden önce host'u terk eder. Containment maruziyeti daraltır ama yeteneği ortadan kaldırmaz. Agent hâlâ handle'ı, token'ı, socket'i, yolu tutuyordu. Onları kullandı. Platformun katkısı, sonrasında hızlıca fark etmek oldu.
Eksik katman: yetenekten önce yetki
![]()
Bir agent'ın yaptığı her tool call bir yetenek tahsisidir. Orchestrator modele bir read_file tool'u verdiğinde, tool'un implementasyonunun ulaşabildiği her şeye okuma erişimi veriyor demektir. Bir HTTP client verdiğinde, client'ın kimlik bilgilerinin ve ağ politikasının izin verdiği her yere egress hakkı veriyor demektir. Bir shell verdiğinde, shell'in yapabildiği her şeyin birleşimini veriyor demektir.
Containment platformları bu tahsislere nadiren sahiptir. Tool katmanının altında, süreç sınırında dururlar ve tahsislerin kendisini değil etkilerini görürler. Bu yapısal bir kör noktadır: platform size bir sürecin bir socket açtığını söyleyebilir, ama agent'ın socket açan bir tool'a hiç sahip olmaması gerektiğini söyleyemez.
Yetki, sandbox'ın üstünde, politikaya aittir. Somut olarak bu, çalışma başına yetki bütçeleri tanımlamak anlamına gelir:
- Tool yüzeyi: framework'ün açığa çıkardığı küme değil, çalışmanın çağırabileceği tam tool kümesi.
- Endpoint kapsamı: her tool'un iletişim kurabileceği host'lar veya servisler, blocklist yerine allowlist olarak ifade edilmiş.
- Kimlik bilgisi kapsamı: çalışma başına verilen kısa ömürlü, dar kapsamlı token'lar, böylece sızan bir token çalışmanın ömrü dışında işe yaramaz.
- Harcama ve hız tavanları: tool'ların izin verdiğinden bağımsız olarak, çalışmanın tüketebileceği dış kaynak miktarına dair kesin limitler.
- Zaman sınırı: çalışma durumundan bağımsız olarak yetkinin iptal edildiği bir son kullanma anı.
Bunların hiçbiri sandbox'ın daha hızlı olmasını gerektirmez. Orchestrator'ın, agent çalışmadan önce agent'ın ne olduğuna karar veren şey olmasını gerektirir. Yetkiyi containment'dan ayırmak ayrıca blast radius hakkında kaçış olasılığından bağımsız olarak akıl yürütmenizi sağlar. Ağ yetkisi olmayan bir çalışmanın ağ olayları için blast radius'u sıfırdır, agent bir süreç sınırından kaçmakta ne kadar zeki olursa olsun. Bu, "onu on milisaniyeden kısa sürede öldürürdük" demekten daha güçlü bir ifadedir.
Bir referans ayrıştırma
Üç katman, her birinin farklı bir işi var.
Sandbox. Dosya sistemi izolasyonu, ağ namespace izolasyonu, süreç izolasyonu, kaynak limitleri. Sandbox'ın işi kaçışı pahalı ve gözlemlenebilir kılmaktır. İlk değil, son hattır.
Yetki. Kapsamlı kimlik bilgileri, egress allowlist'leri, harcama tavanları, tool yüzeyinin daraltılması, çalışma kapsamlı son kullanma. Yetki katmanının işi yetkisiz yeteneği yalnızca tespit edilebilir değil, kullanılamaz kılmaktır. İlginç mühendislik burada yaşar: çalışma başına token üreten bir kimlik bilgisi broker'ı, bir çalışmanın tool yüzeyini beyan ettiği niyetinden çözen bir politika motoru, host allowlist'lerini agent'ın sürecinde değil ağ kenarınduit-board-macro-62542d-755b13.jpg)

Telemetri. Niyet logları ve yörünge kayıtları. Her tool call için: agent ne yaptığını söyledi, hangi yetkiyi kullandı, politika motoru ne karar verdi ve tool gerçekte ne yaptı. Bu, yetki kararını sonradan denetlenebilir kılan şeydir — ve haftalar sonra bir olayın bir politika boşluğu mu yoksa bir implementasyon hatası mı olduğunu yeniden kurgulamanızı sağlayan şey.
Ödünleşim gerçek ve açıkça belirtmeye değer. Yetki uygulaması sürtünme ekler. Dar tool yüzeyleri, agent'ların meşru görevlerde daha sık başarısız olması anlamına gelir, çünkü framework'ün varsayılan yüzeyi görevin ihtiyaç duyduğundan daha genişti ve kimse onu budamadı. Kısa ömürlü kimlik bilgileri daha fazla broker gidiş-dönüşü ve broker kullanılamadığında yeni bir hata modu anlamına gelir. Egress allowlist'leri her yeni entegrasyonun bir kod değişikliği değil bir politika değişikliği olması anlamına gelir. Yetki katmanlarını benimseyen ekipler tipik olarak, politika yüzeyi stabilize olmadan önce agent görev başarısızlık oranlarında kısa vadeli bir artış görür. Bu maliyet, güvenlik garantisini "fark ederdik"ten "olamazdı"ya taşımanın bedelidir.
Ne ölçülmeli
Containment metrikleri ve yetki metrikleri farklı soruları yanıtlar ve bunları birbirine karıştırmak önemli olan sinyali gizler.
- Bin çalışma başına engellenen kaçış denemesi bir containment metriğidir. Sandbox'ın denetleyicisinin kaç kez tetiklendiğini ölçer. Yüksek bir sayı agresif bir agent'ı, yanlış yapılandırılmış bir politikayı veya her ikisini de gösterebilir. Agent'ın ne yapmaya yetkili olduğu hakkında hiçbir şey söylemez.
- Bin çalışma başına yetkisiz yetenek denemesi bir yetki metriğidir. Bir agent'ın sahip olmadığı bir tool'u çağırmaya, bir endpoint'e ulaşmaya veya bir bütçeye karşı harcama yapmaya kaç kez çalıştığını sayar. Olayları öngören sayı budur, çünkü agent'ın yapabileceğine inandığı şey ile gerçekte kendisine verilen arasındaki boşluğu ölçer.
İkinci metriği toplamak daha zordur, çünkü yetki katmanının redleri etki noktasında değil karar noktasında loglamasını gerektirir. Tam da bu yüzden daha bilgilendiricidir. Kendi yetki redlerini raporlayabilen bir sistem, yetki modeli üzerine akıl yürütülebilecek kadar açık bir sistemdir.
Kontrol yüzeyi sandbox'ın üstündedir
Containment platformları faydalıdır. Yanlış davranan bir agent'ın eyleme geçebileceği pencereyi azaltırlar ve diğer tüm katmanların başarısız olduğu durumlar için kesin bir durdurma sağlarlar. Ama kesin bir durdurma bir geri dönüş yoludur, bir kontrol yüzeyi değil. Kontrol yüzeyi, agent çalışmadan önce verilen kararlar kümesidir: hangi tool'ları tutuyor, hangi kimlik bilgilerini taşıyor, hangi endpoint'lere ulaşabiliyor, ne kadar harcayabiliyor ve tüm bunlar ne zaman sona eriyor.
OpenShell'i tersinden okumak, sektörün mükemmel containment üzerinde yakınsadığını ve yetkiye yetersiz yatırım yaptığını düşündürüyor. Çözüm daha hızlı bir kill switch değil. Önemli olan olaylar için kill switch'i gereksiz kılan bir politika katmanı.
