@chunxiaoxx'un mükemmel MCP Güvenlik Modelleri 2026 yazısını okudum: AI Agent Sandboxing için gVisor vs Firecracker ve gVisor'u üretimde çalıştırırken gerçekte ne bulduğumuzu paylaşmak istedim.
Her sunucunun denetlendiği MCP sunucuları için bir pazar yeri olan MarketNow'u kurduk. L2.5 katmanımız, tam olarak makalede açıklandığı gibi gVisor'u (runsc) kullanır.
Makalenin doğru olduğu şey
Makale temel dengeyi doğru bir şekilde tanımlıyor:
Uzmanların Görüşleri
gVisor : Kullanıcı alanı çekirdeği, sistem çağrılarını engeller, ~%5-10 ek yük
: Kullanıcı alanı çekirdeği, sistem çağrılarını keser, ~%5-10 ek yük Havai Fişek: KVM düzeyinde mikroVM, ~125 ms önyükleme, sıfıra yakın ek yük ancak KVM erişimi gerektirir
GitHub Eylemlerinde gVisor'u çalıştırmayı öğrendiklerimiz
Detaylar ve Etkileri
1. gVisor kurulumu için sudo gerekiyor
Koşucu kullanıcı sudo olmadan /etc/docker/daemon.json dosyasına yazamaz:
sudo wget -q https://storage.googleapis.com/gvisor/releases/nightly/latest/runsc -O /usr/local/bin/runsc sudo chmod +x /usr/local/bin/runsc echo '{"runtimes":{"runsc":{"path":"/usr/local/bin/runsc"}}}' | sudo tee /etc/docker/daemon.json sudo systemctl docker'ı yeniden başlat Tam ekran moduna gir Tam ekran modundan çık
2. Derleme zamanı ağı gerekli
Docker derlemesine --network none koymayın; bu, npm kurulumunun kayıt defteri.npmjs.org'a ulaşmasını engeller. Çalışma zamanı izolasyonu ( docker run --network none ) önemli olandır.
3. gVisor seccomp'un tahmin edemediğini yakalıyor
Sonuç ve Değerlendirme
1 sunucu ptrace() yöntemini denedi — gVisor, EPERM'yi döndürdü
— gVisor, EPERM 1 sunucusunu döndürdü, bpf() girişiminde bulundu — gVisor, ENOSYS'i döndürdü (BPF'yi uygulamıyor)
— gVisor ENOSYS'i döndürdü (BPF'yi uygulamaz) 0 sunucu çekirdekten yararlanma girişiminde bulundu (ancak bunu yaparlarsa gVisor bunları yakalayacaktı)
4. gVisor'da uyumluluk sorunları var
Nasıl Önlem Alınmalı?
MCP sunucularının yaklaşık %50'si, gVisor'un uygulamadığı sistem çağrılarını kullandıkları için gVisor altında başlatılamıyor. Bu bir özelliktir, bir hata değil — ancak bir geri dönüşe ihtiyacınız olduğu anlamına gelir (gelişmiş seccomp kullanıyoruz).
5. Geri dönüş (gelişmiş seccomp) da değerlidir
Önemli Gelişmeler
gVisor kullanılamadığında aşağıdakileri engelleyen katı bir seccomp profili kullanırız:
ptrace, bpf, montaj, umount2, yeniden başlatma
Teknik Analiz
, , , , kexec_load , kexec_file_load
, clone3 , paylaşımı iptal et , ayarlar
Gelecekte Ne Bekleniyor?
, , init_module , finit_module , delete_module
name_to_handle_at , open_by_handle_at
Sistem Güvenliği
, süreç_vm_readv , süreç_vm_yazma
Yol haritamız (makalenin tavsiyesine uygun)
Makalede şimdi gVisor, daha sonra ise Firecracker öneriliyor. Planımız tam olarak bu:
L2.5 (CANLI): gVisor sanal alanı
: gVisor sandbox L3 (Q1 2027): Firecracker microVM
Neden daha sonra Firecracker? Çünkü GitHub Actions çalıştırıcılarının sağlamadığı KVM erişimine ihtiyacı var. Koşucuları AWS'de kendimiz barındırmamız gerekir (Lambda ve Fargate'e güç veren şey Firecracker'dır).
6 katmanlı boru hattı
Bağlam açısından, tam denetimimiz:
L1.5 : Statik analiz (depolar, sırlar, lisanslar)
: Statik analiz (derinlikler, sırlar, lisanslar) L1.6 : Model tabanlı davranış analizi
: Örüntü tabanlı davranış analizi L2 v2.0 : Aktif araştırma (60'tan fazla rakip girdi)
: Aktif prob (60'tan fazla rakip giriş) L2.5 : gVisor sanal alanı ← bu gönderi
: gVisor sanal alanı ← bu yazı L3 (2027 1. Çeyrek): Firecracker microVM
(2027 1. Çeyrek): Firecracker microVM L4 (2026 4. Çeyrek): Tedarik zinciri onayı (SLSA Düzey 3)
(2026 4. Çeyrek): Tedarik zinciri onayı (SLSA Seviye 3) L5 (2027 3. Çeyrek): Üçüncü taraf denetimi (Trail of Bits, Cure53)
Şu ana kadarki sonuçlar
8.764 MCP sunucusu denetlendi. 206, L2.5 gVisor sanal alanından geçti:
69 puan 10/10 (temiz)
103 puan 0/10 (başlatılamadı — gVisor uyumluluğu)
6 puan 2/10 (yüksek risk – kritik bulgular)
Ortam değişkenlerini sızdırdığı için 3 sunucu kaldırıldı
Tam metodoloji: marketnow.site/security
Örnek denetim (Anthropic'in dosya sistemi MCP, 10/10): GitHub
MCP sunucunuzun denetlenmesini istiyorsanız: bir sorun açın
Orijinal analiz için @chunxiaoxx'a teşekkürler — bu, korumalı alan oluşturma alanında harika bir başlangıçtır.