Skip to main content
DevOps ve Güvenlik

CI/CD Boru Hatlarında Güvenlik: DevOps'ta Otomatik Test ve Tehdit Önleme

Şubat 21, 2026 4 dk okuma 16 views Raw
albüm koleksiyonu, Arşiv, bilgi depolama içeren Ücretsiz stok fotoğraf
İçindekiler

Modern yazılım geliştirme süreçlerinde CI/CD (Continuous Integration / Continuous Delivery) boru hatları hız ve sürekli teslimat sağlar. Ancak hız, güvenlikten ödün verildiği anlamına gelmemelidir. Bu yazıda DevOps süreçlerinde otomatik testlerin ve tehdit önleme mekanizmalarının nasıl entegre edileceğini, hangi araçların ve yaklaşımların etkili olduğunu ve uygulanabilir bir güvenlik stratejisinin nasıl kurgulanacağını anlatıyoruz.

Neden CI/CD boru hatlarında güvenlik önemli?

Günümüzün dağıtık ve sıklıkla güncellenen yazılımlarında bir zafiyetin üretime gitmesi büyük riskler doğurur. CI/CD boru hattı, kodu geliştirme ortamından üretime taşıyan süreç olduğundan, saldırganlar tedarik zinciri, bağımlılıklar veya otomasyon noktalarındaki zayıflıkları hedefleyebilir. Bu nedenle güvenliğin boru hattının her aşamasına yerleştirilmesi (shift-left ve shift-right) kritik öneme sahiptir.

Otomatik testlerin rolü ve türleri

Test otomasyonu, hataları erken yakalamak ve insan hatasını azaltmak için temel bir araçtır. Güvenlik odaklı otomatik testler şunları içerir:

Birim ve entegrasyon testleri

Birim testleri kod düzeyindeki iş mantığını doğrular; entegrasyon testleri ise bileşenlerin bir arada güvenli çalışmasını kontrol eder. Hassas verilerin yanlış işlenmesi veya yetki kontrollerinin atlanması burada ortaya çıkar.

Statik Uygulama Güvenlik Testi (SAST)

SAST araçları kaynak kodunu analiz ederek SQL enjeksiyonu, XSS ve yanlış kullanım desenleri gibi güvenlik açıklarını erken aşamada tespit eder. Örnek araçlar: SonarQube, Checkmarx, Semgrep.

Dinamik Uygulama Güvenlik Testi (DAST)

DAST, çalışan uygulamaya karşı tarama yaparak runtime zafiyetlerini bulur. Bu testler CI/CD'in test ortamlarında düzenli olarak çalıştırılmalıdır. Örnek araçlar: OWASP ZAP, Burp Suite (otomasyon entegrasyonlarıyla).

İkincil testler: SCA, IaC taraması, gizli anahtar taraması

Bağımlılık Yönetimi (SCA) araçları bilinen kütüphane zafiyetlerini tespit eder (Snyk, Dependabot, Renovate). Altyapı kodu güvenliği için IaC tarayıcıları (Checkov, TFSec, Terraform-Compliance) kullanmak, hatalı yapılandırmaların üretime yansımasını engeller. Ayrıca gizli anahtar ve credential sızıntılarını tespit eden git-secrets, truffleHog gibi araçlar pipeline içinde çalıştırılmalıdır.

Tehdit önleme stratejileri

Tehditleri önlemek, sadece zafiyet bulmaktan daha geniş bir yaklaşımdır. Aşağıdaki stratejiler boru hattında uygulanmalıdır:

Policy-as-Code (PaC) ve otomatik onay süreçleri

Politikaları kod olarak tanımlamak (ör. Open Policy Agent, Conftest) boru hattında standardizasyon sağlar. Örneğin, herkese açık container görüntüleri kullanılmasını engelleyen veya belirli güvenlik taramalarından geçmeyen build'lerin reddedilmesini sağlayan otomatik kurallar konulabilir.

Gizlilik, kimlik ve erişim yönetimi

Pipeline için kullanılan servis hesapları, short-lived credentials ve RBAC ile sınırlandırılmalıdır. HashiCorp Vault, AWS Secrets Manager veya Azure Key Vault gibi çözümlerle statik secrets kullanımını ortadan kaldırın.

İmza ve SBOM (Software Bill of Materials)

Artifact imzalama (cosign, Notary), üretilen paketlerin bütünlüğünü garanti eder. SBOM oluşturmak, hangi bileşenlerin kullanıldığını ve olası zafiyet kaynaklarını izlemenizi kolaylaştırır.

Container ve görüntü güvenliği

Container görüntüleri otomatik olarak taranmalı (Trivy, Clair, Anchore) ve minimal baz imajlar tercih edilmelidir. Ayrıca runtime güvenliği için Falco veya eBPF tabanlı izleme çözümleri kullanılabilir.

Tedarik zinciri güvenliği

Third-party bağımlılıkların yönetimi, mirror ve cache kullanımı, imzalanmış paketler ve upstream doğrulaması ile desteklenmelidir. Dependabot/Snyk gibi araçlar otomatik güncelleme ve bildirim sağlar.

CI/CD boru hattına güvenlik testleri entegrasyonu: pratik adımlar

Aşağıda uygulanabilir bir pipeline güvenlik entegrasyon rehberi yer alıyor:

  • Shift-left uygulayın: Geliştirme aşamasında SAST, SCA, unit testleri otomatik olarak çalışsın.
  • Pull request koruması: Zorunlu güvenlik taramaları ve testler PR merge öncesi geçmeli.
  • IaC taraması: Altyapı değişiklikleri PR aşamasında Checkov/TFSec ile taransın.
  • Build time tarama: Container ve paket görüntüleri build sırasında Trivy/Anchore ile kontrol edilsin.
  • Imzalama ve SBOM: Başarılı bir build sonrası artifact imzalanıp SBOM oluşturulsun.
  • DAST ve pentest: Staging ortamında DAST ve düzenli otomatik pentestler çalıştırılsın.
  • Runtime izleme: Üretimde Falco, Prometheus veya EDR çözümleri ile anomaliler izlensin.
  • Otomatik müdahale: Kritik bulgular için pipeline’da otomatik rollback veya canary deploy policy’leri uygulansın.

Pratik araç ve entegrasyon önerileri

Popüler CI/CD platformları (GitHub Actions, GitLab CI, Jenkins, Azure DevOps, Tekton) güvenlik araçlarını plugin veya container adımları olarak çalıştırmaya uygundur. Önerilen entegrasyon örnekleri:

  • GitHub Actions + Dependabot + Snyk/Semgrep (PR'de SAST/SCA çalıştırma)
  • GitLab CI + Trivy + Checkov (IaC ve container taraması)
  • Jenkins + OWASP ZAP (otomasyonlu DAST) + SonarQube (kod kalitesi & SAST)
  • Artifact imzalama için cosign, SBOM için syft kullanımı

Metrikler ve sürekli iyileştirme

Güvenlik etkililiğini ölçmek için bazı temel metrikleri izleyin: ortalama düzeltme süresi (MTTR), tespit süresi (MTTD), pipeline başarısızlık oranları, üretime geçen güvenlik bulguları sayısı. Bu metrikler ile hangi testlerin iyileştirilmesi gerektiği ve hangi zayıflıkların tekrarlandığı görülebilir.

Sonuç: Güvenlik kültürü ve otomasyon el ele

CI/CD boru hatlarında güvenlik yalnızca araçların konulmasıyla sağlanmaz; ekip kültürü, otomasyon disiplini ve politikaların kod olarak tanımlanması gerekir. Otomatik testleri pipeline'a entegre etmek, politikaları otomatik uygulamak ve tedarik zinciri güvenliğine odaklanmak, modern DevOps organizasyonlarının en önemli öncelikleri arasındadır. Bu yaklaşımla hem hız korunur hem de riskler anlamlı şekilde azaltılır.

Sen Ekolsoft olarak, güvenli CI/CD uygulamalarını kurarken araç seçimi, politika tanımlama ve entegrasyon adımlarında teknik danışmanlık sağlayabiliriz. Boru hattınızı güvenli hale getirmek için önceliklerinizi birlikte belirleyelim.

Bu yazıyı paylaş