Hızlı cevap: CI/CD pipeline güvenliği, yazılımı otomatik derleyip test edip yayına alan hattı ele geçirme ve zehirleme saldırılarına karşı korumaktır. Bu hat, kaynak koddan üretime giden yolun tamamına erişir; bu yüzden ele geçirilirse saldırgan doğrudan üretime zararlı kod yerleştirebilir. En kritik riskler şunlardır: pipeline yapılandırma dosyalarında gömülü sırlar, aşırı yetkili derleme adımları, güvenilmez üçüncü taraf eklenti ve bağımlılıklar, ve derleme çıktısının imzalanmaması sonucu kaynağın doğrulanamaması. Kök çözüm, sırları koddan çıkarıp güvenli bir kasada tutmak, her adıma en az yetkiyi vermek, bağımlılıkları ve eklentileri sabitleyip doğrulamak ve üretilen yapıyı imzalayarak tedarik zinciri bütünlüğünü kanıtlamaktır.

Modern yazılım, elle değil otomatik hatlarla yayına alınır. Bu hız büyük bir avantajdır, ama CI/CD hattı aynı zamanda üretime giden en kısa ve en değerli yoldur. Bir saldırgan bu hattı ele geçirdiğinde, tek bir geliştiriciyi değil, o hattan çıkan tüm yazılımı etkiler. Bu yazı, CI/CD hattındaki riskleri ve doğru savunmayı anlatır.

CI/CD hattı neden kritik bir hedef

CI/CD hattı, kaynak koda, sırlara, derleme ortamına ve üretim erişimine aynı anda dokunur. Bu yoğunlaşmış yetki, onu saldırgan için çok değerli kılar. Geliştiricinin kodunu tek tek denetleseniz bile, hattın kendisi ele geçirilirse zararlı kod denetimden sonra eklenebilir. Bu, tedarik zinciri saldırısının en tehlikeli biçimidir: güvendiğiniz üretim yolu zehirlenir.

En sık CI/CD riskleri

Risk Ne yapıyor Sonuç
Gömülü sır Yapılandırmada token, anahtar Sızan sır ile erişim
Aşırı yetkili adım Derleme adımı gereğinden yetkili Üretime yanal hareket
Güvenilmez eklenti Denetimsiz üçüncü taraf adım Hat içi kod çalıştırma
Sabitlenmemiş bağımlılık Sürüm sabit değil Zehirli sürüm otomatik gelir
İmzasız yapı Çıktı doğrulanamaz Sahte yapı üretime girer

Sabitlenmemiş bağımlılık ve güvenilmez eklenti, yazılım bileşen analiziyle (SCA) birlikte ele alınmalıdır; hatta gelen her bileşen bilinen zafiyetler için taranmalıdır.

Sırlar, en sık sızıntı noktası

CI/CD hattının en yaygın açığı, sırların yapılandırma dosyalarına ya da günlüklere gömülmesidir. Bir derleme adımı üretim veritabanına, buluta ya da API'ye erişmek için token kullanır; bu token yapılandırmaya yazılırsa ya da günlüğe düşerse ele geçirilir. Sırlar koddan çıkarılıp güvenli bir kasada tutulmalı, hatta yalnızca çalışma anında ve en az kapsamla verilmelidir.

Tedarik zinciri bütünlüğü

CI/CD güvenliğinin son halkası, üretilen yapının gerçekten sizin hattınızdan çıktığını kanıtlamaktır. Derleme çıktısı imzalanmazsa, saldırgan araya sahte bir yapı sokabilir ve kimse fark etmez. Yapının imzalanması ve bağımlılıkların doğrulanması, üretime yalnızca güvenilir ve değişmemiş kodun girmesini sağlar. Bu, konteyner ve Kubernetes güvenliğiyle birlikte, üretim ortamının bütünlüğünü tamamlar.

Doğru savunma

1. Sırları kasaya taşı

Token ve anahtarlar yapılandırmadan çıkarılıp güvenli bir kasada tutulmalı, adımlara yalnızca çalışma anında ve dar kapsamla verilmelidir. Günlüklere sır düşmemelidir.

2. En az yetki

Her derleme adımı yalnızca ihtiyacı olan erişime sahip olmalıdır. Üretim erişimi, yalnızca gereken adımla sınırlanmalıdır.

3. Bağımlılık ve eklenti doğrulama

Üçüncü taraf adımlar ve bağımlılıklar sabitlenmeli, kaynağı ve bütünlüğü doğrulanmalı, bilinen zafiyetler için taranmalıdır.

4. Yapıyı imzala

Üretilen yapı imzalanmalı ve üretime yalnızca imzası doğrulanan yapı alınmalıdır. Bu, tedarik zinciri bütünlüğünü kanıtlar.

KAOS ile CI/CD güvenlik değerlendirmesi

DSET'in yerel yapay zekâ güvenlik motoru KAOS, CI/CD hattınızı ve ürettiği yazılımı kanıt temelli değerlendirir. Yapılandırmadaki gömülü sırları yanlış pozitif olmadan tespit eder, aşırı yetkili adımları ve sabitlenmemiş bağımlılıkları çıkarır, üretilen yapının bütünlüğünü kontrol eder. KAOS tümüyle çevrim dışı çalıştığı için hattınızın hassas yapılandırması ve kaynak kodu dış servislere gönderilmez, bu da KVKK uyumu için önemlidir. Sonuç, üretime giden yolun gerçek güvenlik durumudur.

Sık sorulan sorular

CI/CD hattı neden ayrı bir güvenlik konusu? Çünkü hat, kaynak koda, sırlara ve üretim erişimine aynı anda dokunur. Kodun kendisini denetleseniz bile, hat ele geçirilirse zararlı kod denetimden sonra eklenebilir. Bu yoğunlaşmış yetki, hattı ayrı ve öncelikli bir güvenlik konusu yapar.

Sırları pipeline yapılandırmasına yazmak neden tehlikeli? Çünkü yapılandırma dosyaları ve günlükler çoğu zaman geniş erişimlidir. Oraya yazılan bir token, kod deposuna erişimi olan ya da günlükleri gören herkes tarafından ele geçirilebilir. Sırlar güvenli bir kasada tutulmalıdır.

Yapıyı imzalamak gerçekten gerekli mi? Evet. İmzasız bir yapı, üretime giren kodun gerçekten sizin hattınızdan çıktığını kanıtlayamaz. İmza, araya sahte yapı sokulmasını engeller ve tedarik zinciri bütünlüğünü sağlar.

Kaynaklar

CI/CD hattınızı gömülü sır, aşırı yetki ve tedarik zinciri bütünlüğü açısından çalışan bir kanıtla değerlendirmek için DSET ile iletişime geçin. Ankara Hacettepe Teknokent laboratuvarımızdan güvenli yazılım denetimi ve sızma testi sağlıyoruz.