Skip to main content
DevSecOps

Güvenli Yazılım Geliştirme: CI/CD Boru Hattında Güvenlik (Shift-Left) Uygulamaları

February 26, 2026 4 min read 23 views Raw
ağ, bilgi, bilgi Teknolojisi içeren Ücretsiz stok fotoğraf
Table of Contents

Yazılım geliştirme hızlandıkça güvenlik uygulamalarının da aynı hızla entegre edilmesi gerekiyor. CI/CD boru hattında "Shift-Left" yaklaşımı, güvenliği yaşam döngüsünün en başına taşıyarak zafiyetleri üretime gitmeden önce yakalamayı amaçlar. Bu yazıda, Shift-Left uygulamalarının ne olduğu, hangi araç ve tekniklerin kullanıldığı, pratik uygulama adımları ve dikkat edilmesi gereken noktalar ele alınacaktır.

Shift-Left Nedir ve Neden Önemlidir?

Shift-Left, güvenlik testlerini yazılım geliştirme süreçlerinin daha erken aşamalarına (soldaki aşamalara) kaydırmak anlamına gelir. Geleneksel modelde güvenlik testleri genellikle test veya üretim öncesi yapılırken, Shift-Left ile kod yazımı, kod incelemeleri ve CI aşamasında otomatik güvenlik kontrolleri uygulanır. Bu sayede hataların düzeltme maliyeti düşer, güvenlik geri bildirim süresi kısalır ve güvenli yazılım üretimi daha tutarlı hale gelir.

CI/CD Boru Hattına Entegre Edilecek Temel Güvenlik Katmanları

Statik Uygulama Güvenlik Testi (SAST)

SAST araçları kaynak kodu üzerinde otomatik analiz yaparak, SQL enjeksiyonu, XSS, yanlış kullanım örüntüleri gibi güvenlik sorunlarını erken tespit eder. Bu araçların CI işlemine entegrasyonu, her push veya pull request sonrasında kodu tarayarak geliştiricilere hızlı geri bildirim sağlar. Popüler örnekler: Semgrep, SonarQube, CodeQL.

Yazılım Bileşen Analizi (SCA)

Üçüncü taraf kütüphanelerindeki zafiyetler sıklıkla saldırı yüzeyi oluşturur. SCA araçları bağımlılıkları tarar, lisans uyumluluğu kontrolü yapar ve bilinen CVE'leri raporlar. Dependabot, OWASP Dependency-Check, Snyk gibi araçlar CI'da otomatik olarak çalıştırılabilir.

Dinamik Uygulama Güvenlik Testi (DAST)

Çalışan uygulamaya karşı gerçekleştirilen DAST testleri (ör. OWASP ZAP) runtime güvenlik açıklarını tespit eder. DAST genellikle QA ortamında veya staging üzerinde çalıştırılır ve API, web uygulaması davranışlarını test eder.

Altyapı Kod Analizi (IaC Security)

Terraform, CloudFormation, Kubernetes manifestleri gibi altyapı kodları da güvenlik açığı taşıyabilir. IaC tarayıcıları (tfsec, Checkov, terrascan) boru hattında kullanılarak hatalı konfigürasyonlar erkenden düzeltilir.

Konteyner ve Görüntü Taraması

Container image'ları, paket ve işletim sistemi düzeyindeki zafiyetlere karşı taranmalıdır. Trivy, Clair, Anchore gibi araçlar image taraması yapar; ayrıca image imzalama (cosign) ve image provenance teknikleri ile güvenli dağıtım sağlanabilir.

Secrets ve Anahtar Yönetimi

CI loglarında veya kod tabanında gizli anahtar bırakmamak kritiktir. Secrets scanning (git-secrets, truffleHog) ve merkezi secret store (Vault, AWS Secrets Manager) kullanımı zorunludur. CI işlerinin çevre değişkenleri güvenli şekilde yönetilmelidir.

Pratik Shift-Left Uygulamaları: Adım Adım

  • 1. Tehdit Modelleme ve Güvenlik Gereksinimleri: Proje başında veri akışları, kritik varlıklar ve saldırı senaryoları belirlenmelidir. Bu, hangi testlerin öncelikli olacağını gösterir.
  • 2. Güvenlik Otomasyonunu CI'e Dahil Etme: Her PR/merge isteğinde SAST ve SCA çalıştırın. Kritik sonuçlar merge'i engelleyecek şekilde pipeline kuralları oluşturun.
  • 3. IaC ve Konfigürasyon Kontrolleri: IaC taramalarını commit aşamasında çalıştırarak hatalı konfigürasyonları erkenden düzeltin.
  • 4. DAST ve Pen Testleri Staging'de Süreklileştirme: Otomatik DAST testlerini gece çalıştırma veya release adımlarında tetikleyin; periyodik manuel pentestlerle destekleyin.
  • 5. Güvenlik Satın Alma ve Bağımlılık Politikaları: SCA çıktılarına göre otomatik PR veya update süreçlerini kurun; kritik CVE'lerde otomatik patch/alert mekanizmaları olsun.
  • 6. Pipeline Güvenliği: CI ortamlarını ve runner'ları izole edin, least-privilege prensibini uygulayın, imzalama ve SBOM üretimini zorunlu kılın.
  • 7. Eğitim ve Güvenlik Şampiyonları: Geliştiricilere güvenli kodlama eğitimi verin; ekip içinde güvenlik şampiyonları atayın.

PipeLine Hardening (Boru Hattı Sertleştirme)

CI/CD pipeline'ı da saldırıya açık bir yüzeydir. Yapılması gerekenler:

  • CI sağlayıcı erişimlerini MFA ile koru ve token sürelerini kısa tut.
  • Runner'ları izole et, ephemeral runner veya sandbox kullan.
  • Artefakt deposu ve imaj registry erişimlerine RBAC uygula, imzalama ve içerik doğrulama zorunlu kıl.
  • Pipeline adımlarında gizli bilgilerin loglanmasını engelle ve logları merkezi olarak sakla.

Ölçümler ve Süreklilik: Hangi Metrikler İzlenmeli?

Başarının ölçülmesi için bazı metrikler tanımlanmalıdır:

  • Bulunan güvenlik açıklarının sayısı ve türü (SAST/SCA/DAST ayrı ayrı)
  • Vulnerability Mean Time to Remediate (MTTR)
  • Pipeline'da güvenlik testlerinin geçme oranları
  • SBOM üretim oranı ve imzalanmış artefakt yüzdesi
  • Geliştirici başına güvenlik eğitim tamamlama oranı

Yaygın Tuzaklar ve Nasıl Kaçınılır?

Birçok ekip Shift-Left uygulamasına başlarken aşağıdaki hataları yapar:

  • Testleri sadece ek yük olarak görmek: Güvenlik testleri otomatik ve geliştirici dostu olmalı, sahte pozitifleri azaltmak için kurallar ayarlanmalı.
  • Tek araçla tüm sorunları çözmeye çalışmak: SAST, DAST, SCA ve IaC için uygun kombinasyon gereklidir.
  • Geri bildirim döngüsünü uzun tutmak: Tarama sonuçları hızlı ve anlaşılır biçimde geliştiricilere iletilmeli.

Sonuç ve İyi Uygulama Önerileri

Shift-Left, güvenli yazılım geliştirmeyi bir zorunluluk değil kültürel bir dönüşüm olarak ele alır. CI/CD boru hattına entegre edilmiş SAST, SCA, IaC kontrolleri, konteyner taramaları ve secrets yönetimi ile güvenliği üretim öncesine taşımak mümkündür. Bunun için küçük bir adımla başlayın: bir PR pipeline'ına SAST veya SCA ekleyin, bulguların kategorize edilmesi ve otomatik düzeltme yolunu oluşturun. Ardından DAST ve IaC taramalarını ekleyerek kapsamı genişletin.

Güvenlik otomasyonu araçları tek başına yeterli değildir; organizasyonel destek, eğitim, güvenlik şampiyonları ve uygun ölçümlerle birlikte yürütülmelidir. Bu yaklaşımla, yazılımın güvenliği geliştirme sürecinin doğal bir parçası haline gelir ve riskler üretim öncesinde etkin biçimde azaltılabilir.

Sen Ekolsoft olarak, Secure-by-Design prensiplerini CI/CD süreçlerinize entegre etmenize yardımcı olabiliriz. İlk adım için boru hattınızın kısa bir güvenlik değerlendirmesini tavsiye ederiz.

Share this post