Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale, Bir DevOps ekip üyesi olarak en az ayrıcalık Sıfır Güven ilkesini uygulamanıza ve DevOps platform ortamının güvenliğini sağlamanıza yardımcı olur. Kurumsal DevOps Ortamlarının Güvenliğini Sağlama e-Kitabımızın içeriğini içerir ve gizli dizi ve sertifika yönetimi için en iyi yöntemleri vurgular.
Modern kuruluşlar, geliştiricilerin üretken olması için ihtiyaç duyan işlem hatları ve üretim ortamları dahil olmak üzere dağıtım için DevOps platformlarını kullanır. Geçmişte uygulama güvenlik yöntemleri, günümüz boru hatlarının ve üretim ortamlarının açığa çıkardığı artan saldırı yüzeyini dikkate almamıştı. Kötü aktörler sola kaydıkça ve yukarı akış araçlarını hedefledikçe DevOps platform ortamlarınızın güvenliğini sağlamak için yenilikçi yaklaşımlara ihtiyacınız vardır.
Aşağıdaki diyagramda DevOps platform ortamının uygulama ortamına ve sürekli tümleştirme ve sürekli teslim (CI/CD) işlem hattı uzantılarına bağlandığını fark edin.
CI/CD işlem hattı uzantıları, kötü aktörlere uygulama ortamından ayrıcalık yükseltmeleri yapma fırsatları sunar. Uzantılar ve tümleştirmeler saldırı yüzeyi güvenlik açıklarını artırır. Kötü amaçlı yazılım yetkisiz erişim tehditlerine karşı savunmak çok önemlidir.
Kötü aktörler işlem hatlarını nasıl ve neden hedeflemektedir?
İşlem hatları ve üretim ortamları standart uygulama güvenliği uygulamalarından ve işlemlerinden bağımsız olabilir. Bunlar genellikle kötü aktörlere derin ve anlamlı erişim sağlayabilen üst düzey erişim kimlik bilgileri gerektirir.
Kötü aktörler sistemlerin güvenliğini aşmanın yeni yollarını bulsa da, işlem hatları için en yaygın güvenlik açıkları şunlardır:
- Çalışma zamanı değişkenlerinin çıkarılması ve bağımsız değişken enjeksiyonu.
- İşlem hatlarından hizmet ilkelerini veya kimlik bilgilerini alan betikler.
- Anahtarı olan herkesin DevOps platform ortamına erişmesine izin veren yanlış yapılandırılmış kişisel erişim belirteçleri.
- Tümleşik araçlardaki, koda erişim gerektiren güvenlik açıkları ve yanlış yapılandırmalar (genellikle salt okunur erişim, ancak bazen de yazma erişimi). Tümleşik araçlar test çerçeveleri, statik uygulama güvenlik testi (SAST) ve dinamik uygulama güvenliği testi (DAST) içerebilir.
Gizli anahtar ve sertifika yönetimi için en iyi yöntemler
Yıkıcı bir ihlalden kaçınmak, etkili gizli bilgi yönetimi kadar basit olabilir. Aşağıdaki diyagramda etkili gizli dizi, parola, erişim belirteci ve sertifika yönetimi örneği gösterilmektedir.
Önceki diyagramda gösterildiği gibi, geliştirici müşteri isteği için bir derleme başlatır. GitHub daha sonra bir Vault Uygulama Rolü'nün rol kimliği ve gizli kimliği ile bir çalıştırıcı başlatır. Güvenilen Varlık düzenli aralıklarla Kasadan yeni bir gizli kimlik ister ve GitHub'dan Gizli Kimlik alır. Kasa, oturum açmak ve kod imzalama varlıklarını almak için GitHub Sırları rol kimliğini ve gizli kimliği kullanır. Koşucu, mobil uygulamayı özelleştirir ve kod imzalama işlemi yapar.
Aşağıdaki en iyi yöntemler gizli dizi ve parametre açığa çıkarma işlemlerini en aza indiren güvenli bir kurulum oluşturmanıza yardımcı olur.
- Her uygulama yaşam döngüsü aşamasında gizli diziler ve sertifikalar için güvenli depolama alanı sağlayın. Her zaman açık kaynak bir proje gibi geliştirin. Ekiplerin gizli bilgileri kodda veya ekip çalışma ortamlarında değil, anahtar kasalarında depoladığından emin olun. Gizli dizileri güvenli bir şekilde depolamak ve bunlara erişmek için Azure Key Vault bulut hizmetini kullanın.
- Azure'ı GitHub'ın OIDC'sine federasyon kimliği olarak güvenecek şekilde yapılandırın. OpenID Connect (OIDC), GitHub Actions iş akışlarınızın Azure kimlik bilgilerini uzun ömürlü GitHub gizli dizileri olarak depolamaya gerek kalmadan Azure'daki kaynaklara erişmesine olanak tanır.
DevOps ortam güvenliği için diğer en iyi yöntemler
Güvenlik olaylarına karşı savunmaya yardımcı olmak için DevOps platform ortamlarınızı güçlendirmeye yönelik aşağıdaki en iyi yöntemleri gözden geçirin. Kurumsal DevOps Ortamlarının Güvenliğini Sağlama e-Kitabımızda bu önerilerin ayrıntılı bir tartışmasını bulabilirsiniz.
- Her DevOps platformu ortamını denetim izleriyle donatın.Erişim elde eden kişileri, hangi değişikliğin gerçekleştiğini ve etkin sistemlerin tarih/saatini izlemek için denetim günlüklerini gözden geçirin. Özellikle üretime akan CI/CD işlem hatlarına sahip DevOps platformlarını içerir. DevOps araçları için denetim izleri tehditleri daha hızlı düzeltmek, olası ihlallere veya güvenlik açıklarına karşı şüpheli etkinlikleri bulmak ve uyarmak ve olası verileri veya ayrıcalık kötüye kullanımını bulmak için sağlam yollar sağlar. Her ortamda ayrıntılı denetim ve denetim izlerinin kullanılabilir olduğundan emin olun.
- Yazılım tedarik zincirinin güvenliğini sağlayın. Kod tabanınıza getirdiğiniz her kitaplıkla yazılım tedarik zincirini genişletir ve her açık kaynak projeden veya araçtan bağımlılıkları devralırsınız. Dikkatli olun, yazılım tedarik zincirinizin saldırı yüzeyini azaltmak için gereksiz kitaplıkları ve açık kaynak bileşenleri kaldırın.
- Kod Olarak Altyapı (IaC) şablon taramalarını otomatikleştirin. IaC ortamlarında yanlış yapılandırmalar, uyumluluk denetimleri ve ilke sorunlarını taramak kolaydır. Uyumluluk denetimleri ve erişim denetimleri uygulamak, altyapınızın tamamının güvenlik duruşunu yükseltir. Otomasyon sistemi gereksinimlerini karşılayan araç tümleştirmelerinin güvenliğini doğrulayın.
- Onay iş akışlarını otomatikleştirin. Herhangi bir onay iş akışının kodu üretime göndermesi için, belirli otomatik veya el ile yapılan denetimlerin her isteğin güvenliğini, iş değerini, durumunu ve kalitesini onaylaması gerekir. Bu denetimler, bir uyarıyı işaretlemeden veya tetiklemeden üretim ortamlarına kod ekleyen hizmet reddi saldırılarını ve kötü aktörleri önlemek için geliştirme ve üretim arasında bir kapı işlevi görür.
- Yalnızca doğrulanmış DevOps aracı tümleştirmelerine izin verin. Geliştirici ortamlarında olduğu gibi DevOps araçları da DevOps ekibini verimli ve güvenli hale getirmek için uzantılar ve tümleştirmelerle birlikte gelir. Doğrulanmış tümleştirmelerin çalışmalarını yürütmek için mümkün olan en düşük ayrıcalığı gerektirdiğini onaylayın. Mümkün olduğunda en az ayrıcalık erişimi uygulayın ve doğru düzeyde okuma/yazma izinleri olduğundan emin olun. Kuruluşunuz için GitHub Actions'ı devre dışı bırakma veya sınırlama hakkında bilgi edinin.
Sonraki adımlar
- Geliştirici ortamının güvenliğini sağlama, geliştirme ortamlarınızda en az ayrıcalık, dal güvenliği ve güvenen araçlar, uzantılar ve tümleştirmeler için en iyi yöntemlerle Sıfır Güven ilkeleri uygulamanıza yardımcı olur.
- Geliştirici iş akışınıza Sıfır Güven güvenliği ekleme, hızlı ve güvenli bir şekilde yenilik oluşturmanıza yardımcı olur.
- Sıfır Güven için Güvenli DevOps ortamları , kötü aktörlerin geliştirici kutularını tehlikeye atmasını, yayın işlem hatlarına kötü amaçlı betikler bulaştırmasını ve test ortamları aracılığıyla üretim verilerine erişim kazanmasını önlemeye yönelik Sıfır Güven yaklaşımıyla DevOps ortamlarınızın güvenliğini sağlamaya yönelik en iyi yöntemleri açıklar.
- Geliştiricilere bulut deneyimi için en hızlı ve en güvenli kodu sunan araçlarla Azure DevOps ile kodunuzu hızlandırın ve güvenliğini sağlayın.