CI/CD Secret Rotation ve DevSecOps
CI/CD İçindeki Secret En Kısa Saldırı Yoludur
DevOps ekipleri için CI/CD pipeline hız demektir. Ancak pipeline içinde saklanan uzun ömürlü token, cloud key veya deploy secret aynı zamanda saldırgan için üretime giden en kısa yoldur. GitHub Actions, GitLab CI, Jenkins veya self-hosted runner fark etmez; build sistemi üretime dokunuyorsa kimlik güvenliği artık DevSecOps konusudur.
En sık görülen hata, secret rotation işinin "sonra bakarız" listesine atılmasıdır. Oysa bir token aylarca değişmeden kalıyorsa, sızdığı gün değil üretimde kötüye kullanıldığı gün fark edilir.
Risk Nerede Başlar?
CI/CD secret riski genellikle şu noktalarda büyür:
- Aynı deploy key hem staging hem production için kullanılır.
- Runner logları hata anında environment değişkenlerini sızdırır.
- Pull request workflow'ları gereğinden fazla secret'a erişir.
- Self-hosted runner temizlenmeden tekrar kullanılır.
- Cloud IAM rolü yalnızca deploy değil yönetici yetkisi de taşır.
Bu hataların ortak sonucu şudur: Saldırgan kod yazmadan, yalnızca pipeline kimliğini ele geçirerek production kaynaklarına erişebilir.
Güvenli Mimari
Modern DevSecOps yaklaşımı statik secret yerine kısa ömürlü kimlik kullanmalıdır:
- OIDC tabanlı cloud role federation uygulanmalı.
- Production deploy ayrı workflow ve ayrı onay mekanizmasına bağlanmalı.
- Secret erişimi branch, environment ve job bazında sınırlandırılmalı.
- Runner izolasyonu her işten sonra sıfırlanmalı.
- Deploy yetkisi resource-level IAM ile daraltılmalı.
- Secret rotation olayı audit log ve alarm üretmeli.
Eresus Yaklaşımı
Eresus Security, DevSecOps incelemelerinde yalnızca pipeline YAML dosyasına bakmaz. Runner mimarisi, cloud IAM, secret store, branch protection ve deploy akışını birlikte test eder. CI/CD sisteminiz production'a dokunuyorsa, secret rotation güvenlik kontrolü değil doğrudan iş sürekliliği kontrolüdür.
Sık Sorulan Sorular
Bu konuda ilk adım ne olmalı?
Önce varlık, veri, kimlik ve iş etkisi birlikte haritalanmalıdır. Böylece güvenlik testi araç odaklı değil risk odaklı ilerler.
Profesyonel destek ne zaman gerekir?
Sistem üretime yakınsa, hassas veriye erişiyorsa veya bulgular birden fazla ekibi etkiliyorsa bağımsız güvenlik değerlendirmesi gerekir.
Temel Değerlendirme
CI/CD Secret Rotation ve DevSecOps konusu yalnızca teknik bir ayrıntı değildir; yanlış ele alındığında veri sızıntısı, yetki aşımı, operasyon kesintisi veya regülasyon riski doğurur. En doğru yaklaşım, varlıkları ve kullanıcı rollerini netleştirip gerçek saldırı yolunu kanıtla test etmek, ardından düzeltmeyi ölçülebilir retest kriterine bağlamaktır.
Neden Kritik?
- Saldırganlar çoğu zaman en zayıf teknik kontrolü değil, en zayıf varsayımı hedefler.
- Otomatik taramalar bilinen kalıpları yakalayabilir ama iş etkisini ve zincirleme saldırı yolunu tek başına göstermez.
- Güvenlik çıktısı geliştirici, yönetici ve uyum ekibi tarafından aynı şekilde anlaşılmıyorsa aksiyona dönüşmez.
Pratik Senaryo
Bir ekip sistemi güvenli kabul eder çünkü login çalışır, pipeline yeşildir veya model beklenen cevabı üretir. Ancak saldırgan aynı akışta farklı kullanıcı, farklı tenant, farklı dosya veya farklı token ile deneme yaptığında tasarımın sakladığı gerçek risk ortaya çıkar. Bu yüzden testler mutlu yol yerine kötüye kullanım senaryolarıyla yazılmalıdır.
Yanlış Bilinenler
- “Araç taradı, kritik yok” güvenlik onayı değildir.
- “İç sistem, saldırgan erişemez” varsayımı modern saldırı zincirlerinde zayıftır.
- “Bu sadece teknik borç” denilen konu çoğu zaman müşteri verisi veya production erişimiyle birleşir.
Karar Tablosu
| Durum | Risk seviyesi | Önerilen aksiyon | | --- | --- | --- | | Demo veya izole test ortamı | Düşük-Orta | Mimari kararları ve veri akışını belgeleyin | | Staging production verisine yakın | Orta-Yüksek | Yetki, log ve abuse testlerini ekleyin | | Production veya müşteri verisi | Yüksek | Profesyonel assessment, remediation ve retest planlayın |
Kontrol Listesi
- CI/CD tokenları kısa ömürlü mü?
- Secret bulunduğunda revoke ve rotation otomatik mi?
- Image imzası admission aşamasında doğrulanıyor mu?
- Branch protection bypass edilebiliyor mu?
- Pipeline logları hassas veri sızdırıyor mu?
Ne Zaman Profesyonel Destek Gerekir?
Pipeline production deploy yapıyorsa, uzun ömürlü secret taşıyorsa, Kubernetes/cloud erişimi varsa veya çok repo yönetiliyorsa profesyonel DevSecOps review gerekir.
Eresus Yaklaşımı
Eresus Security bulguları yalnızca başlık olarak raporlamaz. Her bulgu için tekrar üretilebilir kanıt, iş etkisi, önerilen düzeltme, sorumlu ekip ve retest koşulu yazılır.
Eresus Security, CI/CD token, secret rotation, image signing, Git policy ve supply-chain kontrollerini pipeline hızını bozmadan sertleştirir. Tarık Çelik liderliğinde mevcut akışınızı kanıt odaklı inceleyebiliriz.
Uygulama Planı
1. Kapsamı Netleştir
- Etkilenen varlıkları, kullanıcı rollerini ve veri sınıflarını çıkarın.
- Normal kullanıcı akışıyla saldırgan akışını ayrı ayrı yazın.
- Hariç tutulan sistemleri ve test sınırlarını açıkça belirtin.
2. Kanıt Üret
- Bulguyu tek ekran görüntüsüne değil, tekrar üretilebilir adımlara bağlayın.
- Etkiyi teknik hata ve iş sonucu olarak ayrı açıklayın.
- Log, request ID, test hesabı ve zaman bilgisini not edin.
3. Retest Kriterini Belirle
- Düzeltmenin ne zaman tamam sayılacağını önceden yazın.
- Aynı sınıf hatanın başka endpoint veya akışlarda olup olmadığını kontrol edin.
- Bulguyu kapatmadan önce negatif test senaryosunu yeniden çalıştırın.
Sık Sorulan Sorular
CI/CD Secret Rotation ve DevSecOps için ilk adım nedir?
İlk adım sistemin hangi veriye, hangi kimlikle ve hangi iş akışı üzerinden eriştiğini çıkarmaktır. Araç seçimi bundan sonra anlamlı hale gelir.
Otomatik araçlar bu riski tamamen yakalar mı?
Hayır. Otomatik araçlar başlangıç için faydalıdır, fakat yetki sınırı, iş mantığı, zincirleme etki ve gerçek istismar kanıtı manuel analiz gerektirir.
Bu çalışma çıktısı nasıl aksiyona dönüşür?
Her bulgu bir remediation sahibi, öncelik, iş etkisi ve retest kriteriyle yazıldığında doğrudan güvenlik backlog’una veya sprint planına girebilir.
Eresus bu konuda nasıl destek olur?
Eresus Security kapsam çıkarma, teknik test, kanıt üretimi, remediation danışmanlığı ve retest aşamalarını tek çalışma akışında destekler.
Raporlama ve İç Link Stratejisi
- Yazı ilgili hub sayfasına bağlanmalı ve okuyucuya bir sonraki teknik adımı göstermelidir.
- Aynı pillar içindeki en az iki destekleyici bloga bağlantı verilmelidir.
- Hizmet CTA’sı genel iletişim çağrısı gibi değil, okuyucunun karar anına uygun şekilde yazılmalıdır.
- Raporlama dili teknik kanıt, iş etkisi ve düzeltme önceliğini aynı yerde göstermelidir.
Retest Kapanış Kriteri
Bir bulgu yalnızca düzeltme yapıldı diye kapanmış sayılmaz. Aynı saldırı adımı tekrar denendiğinde başarısız olmalı, loglarda beklenen kayıt oluşmalı ve benzer akışlarda aynı sınıf hata bulunmamalıdır. Bu yaklaşım içeriği sadece bilgilendirici olmaktan çıkarıp uygulamaya dönük hale getirir.
İlgili Araştırmalar
Git History'deki Secret Sızıntısı Nasıl Temizlenir?
Git geçmişine düşen API key, cloud token veya private key sızıntısında revoke, rotate, log inceleme ve kalıcı önleme adımlarını anlatıyoruz.
DevSecOpsSecret Scanning İçin SAST Yeterli mi?
SAST, secret scanning, git history, valid credential doğrulama ve incident response arasındaki farkları DevSecOps bakışıyla açıklıyoruz.
DevSecOpsCI/CD Süreçlerinizi Nasıl Tam Otonom ve Güvenli Hale Getirirsiniz?
DevOps ekipleri için CI/CD hatlarını otonom, güvenli ve izlenebilir (Observability) bir hale getirmenin DevSecOps sırları ve Otonom Boru Hattı...