EresusSecurity
Araştırmalara Dön
Rehber

Docker Container Güvenliği: Üretim Görselleri İçin Pratik Kontrol Listesi

Yiğit İbrahim SağlamOfansif Güvenlik Uzmanı
9 Kasım 2026
3 dk okuma
GuideDevSecOps

Docker Container Güvenliği: Üretim Görselleri İçin Pratik Kontrol Listesi

Container'lar mini sanal makine değildir. Bir container host kernel'ini paylaşır; bu yüzden görseldeki ve runtime'daki her sıkılaştırma kararı, bir breakout'un etki alanına doğrudan yansır. Bu rehber, CIS Docker Benchmark kontrollerini ve Docker'ın kendi güvenlik dokümantasyonunu bir mühendislik ekibinin her görselin yayınından önce uygulayabileceği bir kontrol listesine çevirir.

1. Minimal ve Destekli Bir Base Image Seçin

Üretimde latest etiketini build anında çekip digest ile sabitleyin. Uygulamada kurallar şunlardır:

  • Tam dağıtım görseli yerine minimal bir base (Alpine, distroless veya slim) tercih edin; görseldeki her paket saldırı yüzeyidir.
  • Base image'leri en az haftada bir yenileyip rebuild edin. Base image CVE'leri, "güvenli" bir görselin sessizce istismar edilebilir hale gelmesinin en yaygın yoludur.
  • Çok aşamalı build kullanın: derleyiciler, paket yöneticileri ve build-time secret'lar runtime görseline hiç girmemelidir.

2. Non-Root Çalışın ve Capability'leri Kısıtlayın

CIS Benchmark iki kontrolde açıktır:

  • Container'ı root olmayan bir kullanıcı ile çalıştırın. UID eşlemeli bir container işlemi host'a kaçtığında, süreç root olarak çalışıyorsa çok daha yüksek yetkiyle varır.
  • Linux capability'lerini düşürün (--cap-drop=ALL) ve sadece sürecin ihtiyaç duyduğu kadarını geri ekleyin. Privileged mod (--privileged) açık bir güvenlik istisnası olarak ele alınmalıdır; runtime'ın sağladığı izolasyonun çoğunu devre dışı bırakır.

Buna --read-only ve yazılabilir yollar için copy-on-write mount, --no-new-privileges bayraklarını ekleyin; böylece alt süreçler setuid ikili dosyalarıyla yetki kazanmaz.

3. Digest ile Sabitleyin, İmzalayın, Deploy'da Doğrulayın

  • Üretim manifestlerinde image@sha256:<digest> referansları kullanın; bir registry etiketini ele geçiren saldırgan, dağıtılan artefaktı hareket ettiremez.
  • Görselleri imzalayın (Cosign/Sigstore veya registry native imzalama) ve imzaları admission yolunda doğrulayın. Docker image imzalama akışı ve Sigstore belgeleri mekanikleri anlatır.
  • CI'da bir registry taraması bulundurun; base image'de yeni açıklanan bir CVE, üretimde hayata geçmeden önce promosyonu engellesin.

4. Görselleri Tarayın — Yeni CVE'leri Takip Edin

Görsel tarama araçları bilinen CVE'leri yakalar; kendi yanlış yapılandırmalarınızı yakalayamaz (root kullanıcı, yazılabilir filesystem, katmanlarda secret). Tarama ile IaC-benzeri kontrolleri birlikte kullanın: bir Dockerfile lint'i ve runtime yapılandırma kontrol listesi kod incelemesinde. Bir tarayıcı High CVE raporlar ama uygulama katmanı temizse, base image en olası hareketli parçadır — rebuild ve repin yapın.

5. Secret ve Log'ları Kontrol Altına Alın

  • Secret'ları image katmanlarına kesinlikle gömme-
    ye­yin. Runtime secret mount'ları (Docker secrets, Kubernetes Secret volume'ları veya vault entegrasyonu) kullanın; build secret'larını multi-stage build ile temizleyin.
  • Container'lardaki log ve crash dump'lar düzenli olarak log toplayıcılara akar; authorization header'ı içeren bir debug log, aranabilir bir kimlik bilgisi sızıntısıdır.

İlk 30 Gününüz

Gerçekçi bir dağıtım dört adımda ilerler. Birinci hafta: En kritik üç serviste non-root kullanıcıyı ve --cap-drop=ALL ayarını etkinleştirin, regresyonları izleyin. İkinci hafta: Üretim manifestlerinde görselleri digest ile sabitleyin, CI'da Critical CVE'leri engelleyen bir registry tarama kapısı kurun. Üçüncü hafta: Admission yolunda imza doğrulama ekleyin. Dördüncü hafta: Her privileged container incelemesini sahip ve emeklilik tarihiyle açık bir güvenlik istisnası olarak takvimleyin. Yukarıdaki CI kontrolleri, yayınladıkça varsayılan şablon haline gelsin.

Eresus Container Riskini Nasıl Değerlendirir

İncelemelerimiz container'ları uygulama ile host kernel arasındaki güven sınırları olarak ele alır. Değerlendirme; registry ve tedarik zinciri hijyeni, runtime izolasyonu, yetki ve capability yapılandırması ve ele geçirilen bir container'dan host seviyesinde etkilenmeye giden yolu kapsar, bulguları elde edilen yetki kanıtıyla iş etkisine çevirir.

Kaynaklar

AI Security Başlangıç Eğitimi

Prompt injection, RAG veri sızıntısı, MCP riskleri ve model dosyası güvenliği için pratik kontrol listesini e-posta ile isteyin.

Prompt injection ve koruma kuralı atlatma kontrolleri.
RAG veri sızıntısı ve izin sınırı incelemesi.
MCP kimlik, taşıma ve komut riski kontrolleri.

Spam yok. Yalnızca kaynağı ve ilgili güvenlik notlarını paylaşmak için kullanılır.

İlgili Hizmetler

Kapsam Tahmini

Kapsam görüşmesinden önce tahmini çalışma büyüklüğünü öğrenin.

Bu derinlik neyi kapsar
Kapsamdaki hedefler için OWASP test planının tam uygulaması: kırık erişim kontrolü, enjeksiyon, kimlik doğrulama ve yetkilendirme kusurları, iş kuralı kötüye kullanımı, yeniden üretim adımlarıyla bulgular.
Neyi kapsamaz
Haftalar süren rakip simülasyonu, fiziksel ve oltalama vektörleri, özel istismar geliştirmesi, kaynak kod incelemesi.

Tahmini efor

~5 testci-günü

Bu bir tahmindir, teklif değil. Yukarıdaki üç faktörle ölçeklenir; hedeflerin test penceresi içinde erişilebilir olduğunu ve test hesaplarının sağlandığını varsayar.

Kesin kapsam talebi