4 puan yazan GN⁺ 2026-02-04 | 1 yorum | WhatsApp'ta paylaş
  • Güvenilmeyen kodu güvenli şekilde çalıştırmak için güvenli bir Linux microVM ortamı sunuyor
  • Kod çalıştırılırken gizli anahtar koruması ve ağ erişim kontrolü ile LLM tarafından üretilen kodun veya kullanıcı kodunun veri sızdırma riskini engelliyor
  • sandbox.deploy() komutuyla geliştirme ortamından doğrudan Deno Deploy’a dağıtım yapılabiliyor; ek derleme veya kimlik doğrulama süreci gerekmiyor
  • Volume ve snapshot özellikleri ile önbellek, veritabanı ve geliştirme ortamları hızla yeniden üretilebiliyor
  • Yapay zeka ajanları, eklenti sistemleri, CI runner’ları gibi güvenlik gerektiren kod çalıştırma ortamları için uygun

Deno Sandbox’a genel bakış

  • Deno Sandbox, Deno Deploy bulutu üzerindeki hafif Linux microVM’lerde güvenilmeyen kodu çalıştırma imkanı sunuyor
    • JavaScript veya Python SDK ile oluşturulabiliyor ve açılış süresi 1 saniyenin altında
    • SSH, HTTP ve VS Code üzerinden doğrudan etkileşim kurulabiliyor
  • LLM’in ürettiği kodun veya kullanıcı tarafından sağlanan kodun API anahtarları içeren harici çağrılar yapması sırasında ortaya çıkan güvenlik sorunlarını çözmeyi amaçlıyor
  • Sandbox içinde çalışan kod, sistem izolasyonu ve çok katmanlı savunma (defense-in-depth) yapısıyla korunuyor

Çalınamayan Secrets

  • Sandbox ortamında gizli anahtarlar gerçek ortam değişkenleri olarak açığa çıkmıyor
    • Kodun içinden yalnızca placeholder string’lere erişilebiliyor
    • Gerçek anahtarlar yalnızca izin verilen host’lara yapılan giden istekler sırasında enjekte ediliyor
  • Örneğin OPENAI_API_KEY, sadece api.openai.com adresine istek gönderildiğinde etkinleşiyor; başka bir domaine sızdırılmaya çalışılırsa geçersiz hale geliyor
  • Böylece prompt injection veya kötü amaçlı kodların anahtar çalma girişimleri engellenebiliyor

Ağ Çıkış Kontrolü

  • Sandbox, izin verilen host listesi (allowNet) dışındaki ağ isteklerini engelliyor
    • Örnek: ["api.openai.com", "*.anthropic.com"]
  • Tüm ağ trafiği VM sınırında engelleniyor ve coder/httpjail benzeri bir çıkış proxy’si üzerinden politikalar uygulanıyor
  • İleride giden bağlantı analizi ve istekleri incelemek/değiştirmek için programlanabilir hook’lar eklenmesi planlanıyor
  • Deno’nun --allow-net bayrağıyla birlikte kullanıldığında çift katmanlı ağ güvenliği sağlanabiliyor

Sandbox’tan Production’a

  • sandbox.deploy() komutuyla sandbox’tan doğrudan Deno Deploy’a dağıtım yapılabiliyor
    • Ayrı bir CI build veya kimlik doğrulama süreci olmadan geliştirme ortamı anında serverless production’a dönüştürülebiliyor
    • Örnek kodda my-app, production: true seçeneğiyle dağıtılıyor ve ardından URL yazdırılıyor
  • Böylece otomatik ölçeklenebilen serverless dağıtım tek bir çağrıyla gerçekleştirilebiliyor

Kalıcılık

  • Sandbox varsayılan olarak ephemeral olsa da, durum saklamanın gerektiği durumlar için şu özellikler sunuluyor
    • Volumes: önbellek, veritabanı ve kullanıcı verileri için okuma/yazma depolama
    • Snapshots: araç zinciri veya temel volume’leri içeren salt okunur imajlar
  • apt-get install sonrasında snapshot oluşturulursa, sonraki tüm sandbox’lar önceden kurulmuş ortamla anında açılabiliyor
  • Snapshot tabanlı volume’lerle yeni geliştirme ortamları birkaç saniye içinde oluşturulabiliyor

Teknik Ayrıntılar

  • Bölge: Amsterdam, Chicago
  • vCPU: 2
  • Bellek: 768MB ~ 4GB
  • Ömür: geçici (ephemeral) veya zaman aşımı temelli, gerekirse uzatılabiliyor
  • Maksimum ömür: 30 dakika
  • Açılış süresi: 1 saniyenin altında
  • Uygun kullanım alanları: yapay zeka ajanı kod çalıştırma, güvenli eklenti sistemleri, geçici CI runner’ları, kullanıcı tarafından sağlanan kod çalıştırma ortamları

Fiyatlandırma

  • Deno Deploy planlarına dahil ve kullanım bazlı ücretlendiriliyor
    • CPU süresi: $0.05/saat (Pro planda 40 saat dahil)
    • Bellek: $0.016/GB-saat (Pro planda 1000 GB-saat dahil)
    • Volume depolama: $0.20/GiB-ay (Pro planda 5 GiB dahil)
  • Enterprise planı için ayrıca iletişime geçilebiliyor

Başlangıç

1 yorum

 
GN⁺ 2026-02-04
Hacker News görüşleri
  • Deno ya da JavaScript hiç kullanmak zorunda olmamak ilginç görünüyor
    Python için deno-sandbox SDK’sı üzerinden sandbox oluşturma, komut çalıştırma, dosya giriş/çıkışı gibi işlemler yapılabiliyor
    API protokolünün WebSocket tabanlı çalıştığı görülüyor

    • Sandbox’ın yerelde değil bulutta çalıştığı ilk başta net değildi
  • Deno Sandbox’ın secret işleme biçimi etkileyici
    Kodun içinde gerçek anahtar yerine yalnızca placeholder görünüyor ve gerçek anahtar sadece izinli hostlara giden isteklerde enjekte ediliyor
    Kötü amaçlı kod bu placeholder’ı dışarı sızdırmaya çalışsa bile işe yaramaz

    • Ama proxy yalnızca basit bir string değiştirme yapıyorsa, saldırgan izinli hostlardan birinde anahtarı echo back ettirmeyi deneyebilir mi sorusu akla geliyor
      Proxy yanıt yönünde de anahtarı yeniden değiştiriyorsa bu zorlaşır ama yine de kusursuz bir savunma gibi görünmüyor
      Bağlamı bilen proxy tabanlı secret enjeksiyonu daha güvenli olabilir
    • Fly’ın Tokenizer aracını hatırlatıyor
      Uygulama anahtarı doğrudan ele almak yerine proxy API anahtarını onun adına ekliyor; böylece güvenlikte maruz kalma riski azalıyor
    • Deno’nun resmi blogunda da bu fikir anlatılıyor
      Secrets that can’t be stolen
      Kötü amaçlı kod secret’ı kalıcı olarak çalamasa da, o anahtarı kullanarak kötü niyetli istekler gönderebilir
      Bu, XSS’in httpOnly cookie’yi okuyamayıp yine de o cookie ile istek gönderebilmesine benzer bir fikir
    • Bunun büyük olasılıkla HTTPS isteklerini araya girerek yöneten bir MITM proxy yöntemi olduğu düşünülüyor
      Bu durumda certificate pinning gibi özellikler zorlaşabilir
    • TCP tabanlı DB bağlantılarında olduğu gibi header değiştirme mümkün değilse bunun nasıl ele alındığı merak ediliyor
      Vault benzeri bir özellik eklenip eklenmeyeceği de sorulmak isteniyor
  • Deno ekibinin anlattığına göre son dönemde LLM’in ürettiği kodu doğrudan çalıştıran platform tipi servisler artıyor
    Bu kodların dış API’leri çağırabilmesi için gerçek kimlik bilgileri ve ağ erişimi gerekiyor
    Sadece sandboxing yetmiyor; ağ kontrolü ve secret koruması birlikte gerekiyor
    Deno Sandbox ikisini de sağlıyor ve kod hazır olduğunda doğrudan Deno Deploy’a dağıtılabiliyor

    • “Bu basit bir plugin sandbox’ı değil, bir AI code execution platform” ifadesini her okuduğumda içgüdüsel olarak “bu da AI” diye düşünüyorum
  • Bizim ekip de benzer bir sandbox ortamını Firecracker + Go ile kendisi kurdu
    Veri egemenliği nedeniyle yalnızca AB içinde hizmet vermek zorundayız; bu yüzden donanım sanallaştırmasını destekleyen her yere dağıtabiliyoruz
    Kimlik bilgilerini LLM doğrudan kullanmasın diye, scope’u sınırlı bir CLI anlık olarak üretip veriyoruz
    LLM bunu sadece bir bash komutu gibi çağırıyor
    Güncel modeller coding assistant olarak eğitildiği için bu yaklaşım çok daha doğal ve verimli

  • Secret değiştirme yaklaşımı ilginç ama pratikte OAuth 1, JWT, HMAC gibi anahtar dönüşümü gereken durumlarda bozulabilir gibi görünüyor
    Ayrıca anahtar payload’ın bir parçasıysa, bu değiştirme Content-Length uyumsuzluğu gibi HTTP sorunları da çıkarabilir
    Üstelik bu yöntem SQL injection gibi başka saldırılara karşı da etkisiz
    Sonuçta bu, tam bir savunmadan çok kısmi bir hafifletme gibi duruyor

  • Ücretsiz katman olduğu için Glitch gibi denemelik kullanma isteği uyandırıyor ama böyle ücretsiz servislerin yarıda kapandığını çok gördüğümden temkinliyim

  • Secret placeholder tasarımı iyi bir tercih gibi görünüyor
    Ama artık çok fazla sandbox ürünü var — Modal, Daytona, Fly, Cloudflare, Deno vb.
    İnsan gerçek üretim ortamında hangisinin kullanıldığını merak ediyor

    • Aslında bu servislerin çoğu büyük ölçüde bir VM wrapper seviyesinde; EC2 veya GCP SDK ile doğrudan da kurulabilir
    • Factory, Nvidia, Perplexity, Manus gibi şirketlerin üretimde E2B kullandığı ve şu ana kadar 200 milyondan fazla sandbox çalıştırdığı söyleniyor
  • Deno Sandbox’ın sunduğu hafif Linux microVM’lerin Deno Deploy bulutunda çalıştığı söyleniyor,
    ama asıl soru bunun self-hosted Linux ortamında da çalıştırılıp çalıştırılamayacağı

    • Yine de çoğu şirket lock-in stratejisi izliyor
      Tamamen açık kaynak yaparlarsa AWS ya da GCP bunu kopyalayabilir
      Sonuçta başkasının sandbox’ı içinde kale kuruyormuş hissi veriyor ama pratikte tek gelir modeli de bu gibi görünüyor
  • Claude Pro ya da Max planlarını böyle bir ortamda kullanınca her seferinde farklı bir IP’den bağlanılacağı için Anthropic’in bunu çok kullanıcılı erişim sanıp engelleyebileceğinden endişe ediliyor
    Ayrıca oturumların neden 30 dakikayla sınırlı olduğu da merak ediliyor

    • Yakında oturum süresini uzatmayı planladıklarını söylüyorlar. Bunun için içeride bazı teknik ayarlamalar gerekiyormuş
    • Benzer şekilde yaklaşık 50 IP’den kullanıyorum ve sorun yaşamadım
      Anthropic sanki sadece “gerçekten bir insan mı kullanıyor” sorusuna yönelik sezgisel yöntemler uyguluyor
    • Bu kullanım biçiminin amacının aylık abonelik planıyla API’ye doğrudan erişmeye çalışmak mı yoksa başka bir şey mi olduğu da merak ediliyor