0Pricing
Cyber Security Academy · Ders

Bağımlılık ve Yapıt İmzalama

SLSA ve Sigstore ile kaynağı doğrulama.

Bağımlılık ve Yapıt İmzalama, CoddyKit'te ücretsiz bir Cyber Security Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Cyber Security Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Cyber Security Academy kursu toplamda 4 dersten oluşur.

Köken Bilgisi Neden Önemlidir

Bir SBOM, bir yapıtın içinde ne olduğunu gösterir. Köken bilgisi ise nereden geldiğini ve nasıl derlendiğini gösterir. İmzalama, bir yapıtı doğrulanabilir bir kaynağa bağlar; böylece tüketiciler, güvenilir işlem hattınız tarafından üretilmemiş her şeyi reddedebilir.

Köken bilgisi olmadan, kayıt deponuzdaki bir tar arşivini değiştiren saldırganı meşru bir sürümden ayırt etmek mümkün değildir.

Etiketler Değil, Özetler

Bütünlüğün temeli, içeriğe dayalı adreslemedir. Bir yapıtın kriptografik karması (özeti), o yapıtın tam olarak aynı baytlarını benzersiz biçimde tanımlar. latest gibi değiştirilebilir etiketler başka bir içeriği gösterecek şekilde yeniden yönlendirilebilir; özet ise yönlendirilemez.

# pull by immutable digest, not a tag
docker pull my-app@sha256:1d52838af602b4b5a831beb13a0e4d073280665ea7be7f69ce2382f29c5a613f

# compute a file digest
sha256sum release-1.4.0.tar.gz

Dijital İmzaların Temelleri

Dijital imza, yapıtın karmasını imzalamak için özel bir anahtar kullanır; eşleşen ortak anahtara sahip herkes imzayı doğrulayabilir. Bu, iki güvence sağlar:

  • Bütünlük — yapıt imzalandıktan sonra değiştirilmemiştir
  • Özgünlük — özel anahtarın sahibi tarafından imzalanmıştır

Zor kısım matematik değil, anahtar yönetimi ve güvenin dağıtımıdır: Doğrulayan kişi hangi ortak anahtara güveneceğini nasıl bilebilir?

Sigstore ile Anahtarsız İmzalama

Geleneksel imzalama, ekipleri sızdırılabilen uzun ömürlü özel anahtarları korumaya zorlar. Sigstore ise anahtarsız imzalama sunar: Bir OIDC kimliğine (sürekli tümleştirme iş yükü veya geliştirici e-posta adresi gibi) bağlı kısa ömürlü bir sertifika verir, imzalama işlemini gerçekleştirir ve bu olayı Rekor adlı herkese açık bir şeffaflık günlüğüne kaydeder.

Çalınabilecek uzun ömürlü bir anahtar yoktur ve her imza herkes tarafından denetlenebilir.

Cosign ile İmzalama

Cosign, konteyner görüntülerini ve diğer yapıtları imzalamaya yarayan Sigstore aracıdır. Anahtarsız kipte işlem hattının OIDC belirtecini kullanır; bu nedenle diskte hiçbir anahtar dosyası bulunmaz.

# keyless sign in CI (uses ambient OIDC identity)
COSIGN_EXPERIMENTAL=1 cosign sign my-registry/my-app@sha256:1d5283...

# verify, asserting the expected signer identity
cosign verify my-registry/my-app@sha256:1d5283... \
  --certificate-identity-regexp '.*@my-org\.com' \
  --certificate-oidc-issuer https://accounts.google.com

Şeffaflık Günlüğü

Sigstore, her imzalama olayını Rekor adlı, kurcalandığı anlaşılabilen ve yalnızca eklemeye açık herkese açık bir günlüğe kaydeder. Bu, güçlü bir tespit denetimidir:

  • Bir şeyin ne zaman imzalandığını kanıtlayabilirsiniz
  • Bir kimliği çalan saldırgan gizlice imza atamaz — olay herkese açık biçimde kaydedilir
  • Anormal imzalar (beklenmeyen kimlik, çalışma saatleri dışındaki zamanlar) tespit edilebilir hâle gelir

Şeffaflık, sessiz bir ihlali gözlemlenebilir kanıta dönüştürür.

SLSA: Derleme Bütünlüğü Düzeyleri

SLSA (Yazılım Yapıtları için Tedarik Zinciri Düzeyleri), derleme sürecinizin ne kadar güvenilir olduğunu derecelendiren bir çerçevedir. Daha yüksek düzeyler, kurcalamaya karşı daha güçlü güvenceler gerektirir.

  • L1 — köken bilgisi mevcuttur ve belgelenmiştir
  • L2 — barındırılan bir derleme hizmetinden alınan imzalı köken bilgisi
  • L3 — sağlamlaştırılmış, yalıtılmış derlemeler; köken bilgisi, işlem hattının içindeki biri tarafından bile sahte üretilemez

SLSA bir yol haritasıdır: bir hedef düzey seçin ve açıkları kapatın.

Derleme Kökeni Beyanları

Köken beyanı, bir yapıtın nasıl derlendiğini açıklayan imzalı bir ifadedir: kaynak değişiklik kaydı, derleme hizmeti kimliği, derleme parametreleri ve girdiler. in-toto biçimi bunu standartlaştırır.

# generate and attach SLSA provenance for an image
cosign attest --type slsaprovenance \
  --predicate provenance.json \
  my-registry/my-app@sha256:1d5283...

# verify provenance matches expected source repo
cosign verify-attestation --type slsaprovenance my-registry/my-app@sha256:1d5283...

Kabul Aşamasında İmzaları Zorunlu Kılma

İmzalama, bir şey imzasız yapıtları reddetmiyorsa işe yaramaz. Kubernetes'te bir kabul denetleyicisi, güvenilir kimliğinizden alınmış geçerli bir imza ve köken bilgisi bulunmayan her görüntüyü engelleyebilir.

  • İlke denetleyicileri, bir pod başlatılmadan önce cosign imzalarını doğrular
  • Beklenmeyen kimlikler tarafından imzalanan görüntüleri reddeder
  • Onaylanmış kaynak deponuza işaret eden köken bilgisi ister

Bu, döngüyü tamamlar: güvenilmeyen yapıtlar hiçbir zaman çalıştırılmaz.

Bağımlılıkları Kaynakta İmzalama

Köken bilgisi, yalnızca sunduğunuz şeylere değil, tükettiğiniz şeylere de uzandığında en değerli hâline gelir. Ekosistemler yerleşik imzalama ve köken bilgisi desteği ekliyor:

  • npm köken bilgisi, yayımlanan bir paketi kaynak değişiklik kaydına ve sürekli tümleştirme çalıştırmasına bağlar
  • Konteyner temel görüntüleri giderek daha fazla cosign imzasıyla sunuluyor
  • Programlama dili kayıt depoları, Sigstore destekli doğrulamayı deniyor

Doğrulanabilir köken bilgisi yayımlayan bağımlılıkları tercih edin ve desteklendiği yerlerde kurulum sırasında bunu doğrulayın.

Doğrulamayı Önceliklendirme

Uygulanabilir bir imzalama stratejisi katmanlıdır ve uçtan uca doğrulanır:

  • Girdileri özetle sabitleyin
  • Yapıtları anahtarsız imzalayın ve SBOM ile köken beyanlarını ekleyin
  • Her şeyi bir şeffaflık günlüğüne kaydedin
  • Dağıtım sırasında bir kabul ilkesiyle doğrulamayı zorunlu kılın

Zincir, doğrulanmamış en zayıf halkası kadar güçlüdür; bu nedenle her tüketim noktasında doğrulama yapın.

Hızlı Kontrol: Anahtarsız İmzalama

Anahtarsız imzalamanın yazılım tedarik zinciri güvenliğini neden iyileştirdiğini değerlendirin.

Özet: Bağımlılık ve Yapıt İmzalama

Kökeni kanıtlamayı ve bunu zorunlu kılmayı öğrendiniz.

  • Değiştirilebilir etiketler yerine özetle sabitleyin
  • Dijital imzalar bütünlük ve özgünlük sağlar; zorluk anahtar yönetimidir
  • Sigstore + cosign, herkese açık bir Rekor şeffaflık günlüğüyle anahtarsız imzalamayı mümkün kılar
  • SLSA derleme bütünlüğünü derecelendirir; köken beyanları yapıtların nasıl derlendiğini kaydeder
  • Kabul ilkeleri, dağıtım sırasında imzasız veya güvenilmeyen her şeyi reddeder

Sırada: Bu yapıtları üreten sürekli tümleştirme/sürekli teslim işlem hattını sağlamlaştırmak.

Sıkça Sorulan Sorular

“Bağımlılık ve Yapıt İmzalama” dersi ücretsiz mi?

Evet — “Bağımlılık ve Yapıt İmzalama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Cyber Security Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Cyber Security Academy kursu toplamda 4 dersten oluşur.

“Bağımlılık ve Yapıt İmzalama” dersinde ne öğreneceğim?

SLSA ve Sigstore ile kaynağı doğrulama. Cyber Security Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Cyber Security Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Cyber Security Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Bağımlılık ve Yapıt İmzalama” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Cyber Security Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Cyber Security Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Tedarik Zinciri Tehditleri
  2. Yazılım Malzeme Listesi (SBOM)
  3. Bağımlılık ve Yapıt İmzalama
  4. CI/CD İşlem Hatlarını Güvenceye Alma
← Cyber Security Academy Sayfasına Dön