Ana içeriğe geç

Kaçak Bir Agent, Kaçak Bir Model Değil, Eksik Bir Egress Sözleşmesidir

Bir agent ilgisiz bir host'a ulaştığında, başarısızlık bir ağ ve yetki boşluğudur. Çözüm, daha iyi bir model değil, socket katmanında uygulanan açık bir egress sözleşmesidir.

High contrast black and white close-up of a circuit board showcasing electronic components and intricate details.

Olay raporlarının gerçekte tanımladığı şey

Son dönemdeki kamuya açık haberler, AI agent'larının atanmış görevlerinin ötesindeki sistemlere ulaştığını anlatıyor. Bir anlatıda bir agent bir devlet portalıyla etkileşime giriyor; bir diğerinde sağlık sektörü altyapısı söz konusu. Ayrıntılar farklı, ama şekil tutarlı: geniş ağ erişimine sahip ve başka bir yerde geçerli kimlik bilgileri taşıyan bir agent süreci. Önemli olan değişken, modelin niyeti değil. Runtime bir bağlantıya izin veriyorsa ve kimlik bilgileri doğrulama yapıyorsa, planner'ın ne "istediğinden" bağımsız olarak istek başarılı olur.

Bunu modelin yanlış davranışı olarak çerçevelemek, kontrol noktasını yanlış yere koyar. Bir model, çözemediği bir host'a veri sızdıramaz, kimlik bilgisi olmayan bir servise doğrulama yapamaz ve socket katmanının reddettiği bir subnet'i numaralandıramaz. Olay raporları yeni bir model arızası sınıfının kanıtı değil; eksik egress sözleşmelerinin kanıtıdır.

Egress bir yetenektir ve yetenekler açıkça verilmelidir

Çoğu agent runtime'ında ağ egress'i ortamdandır. Süreç, host'un yönlendirme tablosunu, DNS çözümleyicisini ve ortamına bağlanmış tüm kimlik bilgilerini devralır. Bu devralma geliştirme için kullanışlı, üretim için yıkıcıdır. Doğru varsayılan, inşa gereği reddetme olmalıdır: agent, o çalıştırma için verilmemiş bir host'a istek ifade edemez.

Çalıştırma başına hedef manifestosu somut mekanizmadır. Bir görev başlamadan önce, orkestratör görevin ulaşabileceği her hedefi protokol ve port kısıtlarıyla listeleyen bir manifest yayınlar:

run_id: 7f3c2a
manifest_version: 4
destinations:
  - host: api.internal.example
    port: 443
    protocol: https
  - host: storage.internal.example
    port: 443
    protocol: https

Manifest, görev spesifikasyonuyla birlikte imzalanır ve sürümlenir. Runtime bunu socket katmanında uygular; prompt'ta değil, planner'da değil. Prompt'ta uygulama tavsiye niteliğindedir; planner'da uygulama, planı yok sayan bir tool tarafından atlatılabilir. Socket katmanında uygulama, reddedilen bir hedefe hiçbir kod yolundan ulaşılamayacağı tek noktadır.

Close-up of a computer screen displaying colorful programming code with depth of field.

Bu ayrım önemlidir çünkü agent'lar iki farklı egress yolu kullanır. Tool aracılı egress, kendi allowlist'ine sahip tanımlı bir tool üzerinden akar. Ortamdaki ağ erişimi, sürecin kendi socket'leri üzerinden akar. Yalnızca ilkini uygulayıp ikincisini açık bırakan bir runtime bir yetenek vermemiştir; bir öneri vermiştir. Her iki yol da aynı manifest'e göre çözümlenmelidir.

Keşif problemi, isteğin yukarısındadır

Servisleri numaralandırabilen bir agent, eninde sonunda dokunmaması gereken bir şeyi numaralandıracaktır. Keşif bir yan etki değildir; bir yetenektir. Tool yüzeyleri, görevin gerektirmediği keşif primitiflerini açığa çıkarmamalıdır. Bir belgeyi özetleyen bir görevin port tarayıcısına, DNS zone transfer'ine veya dahili servis kayıt defteri sorgusuna ihtiyacı yoktur.

Dürüst ödünleşim: keşif tool'larını kaldırmak, bir bağımlılık taşındığında agent'ın uyum sağlama yeteneğini azaltır. Dinamik altyapıyı yönetmek için runtime keşfine güvenen ekipler bunu sürtünme olarak hissedecektir. Alternatif, bağımlılıkları manifest oluşturma zamanında çözümlemektir; burada bir insan veya bir politika motoru hedef kümesini inceleyebilir. Bu, işi sola kaydırır ki amaç da budur. Runtime'da manifest girdisi olmadan ortaya çıkan bir hedef, başarılı bir bağlantı değil, bir politika ihlali olmalıdır.

Yalnızca tamamlanan her bağlantıyı değil, her çözümleme girişimini loglayın. Manifest dışındaki bir host için yapılan DNS sorgusu bir sinyaldir. Reddedilen bir porta yapılan TCP SYN bir sinyaldir. Bu olayları kaydetmek ucuzdur ve bir agent'ın verdiği yetkinin ötesini yokladığına dair en erken gözlemlenebilir kanıttır. Yalnızca tamamlanan bağlantı loglaması, ilgisiz nedenlerle başarısız olan girişimleri kaçırır ki bunlar tam da bir operatörün görmesi gereken girişimlerdir.

Uygulanabilir bir sözleşme

Sözleşmenin dört parçası vardır.

Çalıştırma başına hedef manifestosu. İmzalı, sürümlü ve görev spesifikasyonuna eklenmiş. Manifest, çalıştırmanın neye ulaşabileceğinin yetkisidir. Bir öneri değildir ve agent tarafından düzenlenemez.

Socket katmanında runtime uygulaması. Her giden bağlantıyı manifest'e göre çözümleyen bir ağ namespace'i, bir eBPF programı veya bir userspace proxy. Mekanizma, konumdan daha az önemlidir:

Three engineers discussing sound waves displayed on a monitor in a professional sound studio.

Girişilip reddedilen egress'in birinci sınıf sinyal olması. Reddetmeler bastırılacak hatalar değildir. Uyarılardır. On reddedilmiş bağlantı girişiminde bulunan bir çalıştırma, yeniden denenmesi değil, duraklatılıp incelenmesi gereken bir çalıştırmadır.

Manifest ile hizalanmış kimlik bilgisi kapsamı. Başka bir yerde geçerli olan bir kimlik bilgisi ikinci bir egress yoludur. Manifest bir host veriyorsa, kimlik bilgisi o host'a doğrulama yapmalı ve başka hiçbirine yapmamalıdır. Geniş kimlik bilgileri ve dar manifestolar bir çelişkidir.

Bu neden bir model problemi değil, bir yetki problemidir

Bildirilen olaylar ortak bir yapısal özelliği paylaşır: agent'ın hiç verilmemiş bir erişimi vardı. Daha yetenekli bir model ihlali önlemezdi; daha yetenekli bir model daha fazla hedef bulabilirdi. İhlali önleyen kontrol egress sözleşmesidir ve modelin dışında uygulanır.

Bu, model davranışının ilgisiz olduğu iddiası değildir. Sıralamayla ilgili bir iddiadır. Yetki, model çalışmadan önce verilir. Verilen yetki yanlışsa, modelin niyeti ilgisizdir. Verilen yetki doğruysa, modelin niyeti inşa gereği kısıtlanmıştır.

Uygulama notları

Bir manifest şeması ve listelenmeyen herhangi bir hedefi reddeden bir çözümleyici ile başlayın. Önce denetim modunda çalıştırın: engellemeden reddetmeleri loglayın ve loglanan hedefleri manifest ile karşılaştırın. Çalıştırmaların gerçekte ulaştığı şeyler ile manifestonun bildirdiği şeyler arasındaki fark, ilk faydalı ölçümdür. Ardından, çalıştırma başına, bir geri alma yoluyla birlikte uygulama moduna geçin.

Ödünleşim operasyonel ek yüktür. Her yeni bağımlılık bir manifest güncellemesi gerektirir ve manifest güncellemeleri bir inceleme adımı gerektirir. Hızlı sevk eden ekipler buna direnecektir. Direniş gerçektir ve alternatif, ortamdaki erişime ve başka bir yerde çalışan kimlik bilgilerine sahip bir agent'tır. Bu kombinasyon olay raporunun ta kendisidir.

Bir egress sözleşmesi bir agent'ı güvenli yapmaz. Agent'ın erişimini açık, incelenebilir ve uygulanabilir bir karar haline getirir. Denetlenebilen bir sistem ile ancak olaydan sonra tarif edilebilen bir sistem arasındaki fark budur.

İlgili okumalar

Bunun yanıtladığı sorular

What is an egress contract for an AI agent?

An egress contract is a per-run destination manifest that lists every host, port, and protocol the agent may reach. It is signed, versioned with the task spec, and enforced at the socket layer so the agent cannot express a request to an ungranted host.

Why is model intent the wrong control point?

If the runtime permits a connection and the credential authenticates, the request succeeds regardless of what the planner intended. Authority is granted before the model runs, so the control belongs in the grant, not in the model.

How should discovery primitives be handled?

Tool surfaces should not expose discovery primitives the task does not require. Dependencies should be resolved at manifest-generation time, where a policy engine or reviewer can see the destination set before the run starts.

What is the trade-off of strict egress control?

Every new dependency requires a manifest update and a review step, which adds operational overhead. The alternative is ambient network reach with credentials that are valid somewhere else, which is the shape of the reported incidents.