Yenilik güvenliği

Yenilik, dijital çağdaki bir kuruluşun yaşam ve hem etkin hem de korumalı olması gereken bir kuruluştur. Yenilik güvenliği, yeniliklere yönelik süreçler ve veri süreçlerini korumalarına karşı korur. dijital çağdaki yenilik DevOps veya devsecops yöntemini kullanarak uygulamalar geliştirme biçimini, sürümler arasında ay veya yıl sürebilmekte olan geleneksel şelale gönderim zamanlamasını beklemeden hızla yenilik yapın etmek için kullanır.

DevSecOps kalp

Yeni özellik ve uygulama geliştirme, üç farklı gereksinim türünü başarıyla toplantısı gerektirir:

  • İş geliştirme ( ): uygulamanızın iş ve Kullanıcı ihtiyaçlarını karşılaması gerekir ve bu genellikle hızla gelişiyor.
  • Güvenlik ( ): uygulamanız hızla gelişen saldırganlar saldırılarına karşı dayanıklı olmalıdır ve güvenlik savunmalarına yönelik yeniliklerden yararlanın.
  • BT işlemleri ( ): uygulamanız güvenilir olmalıdır ve verimli bir şekilde gerçekleştirilir.

Bu üç gereksinimi birlikte birleştirmek ve paylaşılan bir kültür oluşturmak oldukça önemlidir, ancak genellikle zorlayıcı bir öneme sahiptir. Geliştirme, BT ve güvenlik ekiplerinin bu değişikliği yapmak için birlikte çalışması gerekir. Daha fazla bilgi için bkz. zorunlu liderlik: kültürleri harmanlama.

DevSecOps nedir?

teknoloji yeniliği, geliştirme ve işlemleri bir DevOps işleminde birlikte birleştiren hızlı ve çevik bir geliştirme yaklaşımı bağlamında geliştirilmiştir. Bu işlemle güvenliğin tümleştirildiği, yenilik süreci, kuruluşun büyümesi ve kuruluştaki mevcut varlıklar için riskleri azaltmak üzere kritik öneme sahiptir. Güvenliği işlemle tümleştirmek bir Devsecops işlemi oluşturur.

Tasarım ve sola kaydırma ile güvenli

kuruluşlar DevOps ve diğer hızlı yenilik yöntemlerini benimseyebileceği için güvenlik, kuruluşun ve geliştirme işlemlerinin bir parçası olarak bir iş parçacığı olmalıdır. İşlemdeki güvenliği geç tümleştirme pahalıdır ve düzeltilmekte zordur.

Planlama, tasarım, uygulama ve hizmet ve ürünlerin çalışması ile bütünleştirmek için zaman çizelgesinde sola kaydırma yapın. geliştirme ekipleri DevOps ve bulut teknolojilerini benimseyen bir güvenlik, bu dönüşümün bir parçası olmalıdır.

Işlemin tamamında güvenlik

Şelale modelinde güvenlik, geliştirme bittikten sonra geleneksel olarak bir kalite kapısıdır .

DevOps, işlem ekiplerini dahil etmek için geleneksel geliştirme modelini (kişiler, süreç ve teknoloji) genişletti. Bu değişiklik, geliştirme ve operasyon ekiplerinin ayrılmasından kaynaklanan gelişenleri azalmıştır. benzer şekilde, devsecops , ayrı veya farklı güvenlik ekiplerinden uçuşmayı azaltmak için DevOps genişletir.

devsecops, planlama, mimari tasarım, yinelemeli uygulama geliştirme ve işlemler aracılığıyla fikrin DevOps yaşam döngüsünün her aşamasında güvenliğin tümleştirilmesine sahiptir. Teams, yenilik hızı, güvenilirliği ve güvenlik esnekliği hedeflerine aynı anda hizalanmalıdır. Her biri için karşılıklı olarak anlaşılması ve karşılıklı bir şekilde karşılaşmak üzere takımlar, ilk olarak kaynağı her ne kadar önemli olan konularda çalışacaktır.

Bulut benimseme çerçevesinin düzenleme yöntemi, bir kuruluştaki DevSecOps yapıları üzerinde daha fazla bağlam sağlar. Daha fazla bilgi için bkz. uygulama güvenliğini ve DevSecOps Işlevlerini anlama.

Neden DevSecOps?

DevOps çeviklik, devsecops güvenli çevikliği getirir.

Plandaki neredeyse her kuruluş, yeniliklerle rekabet avantajı kazanmak için yazılım geliştirmeye bakar. DevOps işlemin güvenliğini sağlamak, kuruluşun başarısı için önemlidir. Saldırganlar bu özel uygulamalara kaydırma hakkında bildirim almış ve saldırıları sırasında özel uygulamalar giderek daha fazla saldırıyor. Bu yeni uygulamalar genellikle Market 'te henüz bir emtia olmayan değerli yeni fikirler içeren değerli fikri mülkiyet açısından zengin bir özelliktir.

Bu yeniliği korumak, kuruluşların hem geliştirme sürecinde hem de uygulamaları barındıran altyapıda potansiyel güvenlik zayıflıkları ve saldırıları ele vermesini gerektirir. Bu yaklaşım hem buluta hem de şirket içine uygulandı.

Saldırgan fırsatları

Saldırganlar, içinde zayıf yönleriyle yararlanabilir:

  • Geliştirme süreci: Saldırganlar, örneğin, zayıf veya iletişim için şifreleme kullanma gibi, uygulama tasarım sürecinde zayıf yönleri bulabilir. ya da saldırganlar tasarımın uygulamasındaki zayıflıkları bulabilir; örneğin, kod girişi doğrulamaz ve SQL ekleme gibi yaygın saldırılara izin verir. Bunlara ek olarak, saldırganlar daha sonra ortamınızda veya müşterinizin ortamında daha önce kullanılmasına izin veren kodda yerleştirme ters kapılarına sahip olabilirler.
  • BT altyapısı: Saldırganlar, geliştirme sürecinin standart saldırıları kullanarak barındırıldığı uç nokta ve altyapı öğelerini tehlikeye atabilir. Saldırganlar Ayrıca, ortamın diğer parçalarından geliştirme altyapısına erişmek için çalınmış kimlik bilgileri veya kötü amaçlı yazılım kullanan çok aşamalı bir saldırı gerçekleştirebilir. Ayrıca, yazılım tedarik zinciri saldırıları riski, güvenliğin her ikisi için de işleminizle tümleştirileceğini önemli hale getiriyor:
  • Kuruluşunuzu koruma: Kaynak kodu tedarik zincirinizdeki kötü amaçlı koddan ve güvenlik açıklarından
  • Müşterilerinizi koruma: Uygulamalarınızda ve sistemlerinizde yer alan herhangi bir güvenlik sorununu, bu durum, kuruluşunuzda hasar, sorumlulukların veya diğer olumsuz iş etkilerine neden olabilecek

DevSecOps yolculuğu

çoğu kuruluş, belirli bir iş yükü veya uygulama için DevOps veya devsecops 'in gerçekten bir güvenli alana ve daha sonra üretime ve yinelenen ve sürekli olarak güncelleştirilmesini sağlayan iki aşamalı bir süreç olduğunu bulur.

Bu diyagramda, bu tür bir yenilik fabrikası yaklaşımının yaşam döngüsü gösterilmektedir:

DevSecOps aşamaları

Güvenli yenilik, bu aşamaların her ikisi için tümleşik bir yaklaşımdır:

  • İlk bir fikrin oluşturulduğu, doğrulandığı ve ilk üretim kullanımı için hazır hale geldiği konusunda fikir sahibi olma. Bu aşama yeni bir fikir ile başlar ve ilk üretim sürümü için en düşük uygun ürün (MVP) ölçütlerini karşıladığında son bulur:
    • Geliştirme: İşlevsellik, en düşük iş gereksinimlerini karşılıyor
    • Güvenlik: Üretim kullanımı için yasal uyumluluk, güvenlik ve güvenlik gereksinimlerini karşılayan yetenekler
    • İşlemler: İşlevselliği, en düşük kalite, performans ve desteklenebilirlik gereksinimlerini bir üretim sistemi olacak şekilde karşılıyor
  • DevOps: bu aşama, sürekli yenilik ve geliştirmeyi sağlayan uygulamanın veya iş yükünün sürekli yinelemeli geliştirme sürecindedir

Bu liderlik zorunludur: kültürleri harmanlama

Bu üç gereksinimi karşılamak için, tüm takım üyelerinin tüm gereksinim türlerini ve ortak hedeflere doğru bir şekilde birlikte çalışmasını sağlamak için bu üç kültürün birlikte birleştirilmesi gerekir.

Bu kültürleri ve hedefleri, doğru bir DevSecOps yaklaşımına tümleştirmek zor olabilir, ancak bu değer yatırım getirisini karşılayabilir. Birçok kuruluş, birbirinden bağımsız olarak çalışan geliştirme, BT işlemleri ve güvenlik ekiplerinden yüksek düzeyde kötü bir şekilde bir sorun yaşar ve bunlarla ilgili sorunlar oluşturuyor:

  • Yavaş değer teslimi ve düşük çeviklik
  • Kalite ve performans sorunları
  • Güvenlik sorunları

Bazı sorunlar normaldir ve yeni geliştirmeyle birlikte beklenirken takımlar arasındaki çakışmalar genellikle bu sorunların sayısını ve önem derecesini önemli ölçüde artırır. Genellikle, bir veya iki ekibin siyasi bir avantajı olduğu ve diğer takımların gereksinimlerini tekrar tekrar geçersiz kıldığı için çakışmalar oluşur. Zaman içinde, ihmal edilen sorunlar hacim ve Birimsellik açısından artar. bu dinamik, iş gereksinimlerinin ve müşteri tercihlerinin hızlı evrimini karşılamak için kararların artmasının hızına göre DevOps daha kötü bir şekilde çıkabilir.

Bu sorunların çözülmesi için, liderlik tarafından desteklenen dev, SEC ve Ops gereksinimlerinin değerlerini içeren paylaşılan bir kültür oluşturulması gerekir. Bu yaklaşım, takımlarınızın daha iyi çalışmasına ve belirli sprintlerde güvenlik, işletimsel kararlılık veya kritik iş özellikleri ekleme gibi en acil sorunları çözmenize yardımcı olur.

Liderlik teknikleri

Bu temel teknikler, liderlik bir paylaşılan kültür oluşturmasına yardımcı olabilir:

  1. Hiçbir kimse bağımsız değişken kazanır: Liderler, tek bir anlayış olmadığından, işletmeyi olumsuz yönde etkileyen bir dengesizme neden olabilecek tüm kararların olmamasını sağlamalıdır.

  2. Mükemmelliğe ihtiyacınız değil sürekli geliştirme beklenir: Liderler sürekli iyileştirme ve sürekli öğrenme beklentilerini ayarlamış olmalıdır. Başarılı bir DevSecOps programının oluşturulması fazla gece olmaz. Bu, artımlı ilerleme durumuyla sürekli bir yolculuktu.

  3. Hem ortak ilgi alanlarınızı hem de benzersiz tek değerleri kutlayın: Ekiplerin ortak sonuçlar altında çalıştığını ve her bireyin diğerlerinin ne gibi bir şey sağladığını görebilecekleri konusunda emin olun. Gereksinim türlerinin hepsi aynı iş değerini oluşturma ve koruma ile ilgilidir. Geliştirme yeni değer oluşturmaya çalışıyor, Ops ve Security, bu değeri farklı risk senaryolarına karşı korumaya ve korumaya çalışıyor. Kuruluşun tamamında tüm düzeylerde bulunan liderler, bu ortak bir şekilde iletişim kurmalıdır ve bu, hem anında hem de uzun vadeli başarı için her türlü gereksinimi karşılamak açısından önemlidir.

  4. Paylaşılan anlama geliştirin: Ekipteki herkes temel olarak anlaşılmalıdır:

    • İş aciliyet: Takımın, Stake 'da açık bir gelir resmi olması gerekir. Bu görünümde geçerli gelir (hizmet çevrimdışıysa) ve uygulamalar ve Özellikler tesliminde bir gecikmeden etkilenecek olan gelecekteki gelir yer almalıdır. Bu, liderlik paydaşlarının sinyallerine doğrudan dayalı olmalıdır.
    • Olası riskler ve tehditler: Varsa, tehdit bilgileri takım girişine bağlı olarak, takım uygulama portföyünün yüz yüze olacağı olası tehditleri anlamalıdır.
    • Kullanılabilirlik gereksinimleri: Takım, gerekli çalışma süresi, uygulamanın beklenen yaşam süresi ve sorun giderme ve bakım gereksinimleri gibi işletimsel gereksinimlerin paylaşılan bir hissi olmalıdır. Örneğin, hizmet çevrimiçi olduğunda düzeltme eki uygulama.
  5. İstenen davranışı gösterir ve modelleyin: Liderler, takımlarından istedikleri davranışı herkese açık bir şekilde modellemelidir. Örneğin, Humility göster, öğrenme ve diğer disiplinlere odaklanın. Geliştirme yöneticileri, güvenlik ve yüksek kaliteli uygulamaların ve güvenlik yöneticilerinin hızlı yenilik ve uygulama performansının değerini tartıştığımız bir örnektir.

  6. Güvenlik uyuşmazlıkları düzeyini izleyin: Güvenlik doğal olarak süreçlerini yavaşlatan bir savunma oluşturur. Liderlerin, güvenliğin ürettiği ve güvenlik tarafından kullanılan kilit düzeyini ve türünü izlemesi için kritik öneme sahiptir:

    • Sağlıklı bir sorun: alıştırmanın daha güçlü hale gelmesini de benzer şekilde, DevOps işleminde doğru güvenlik düzeyini tümleştirerek, doğru zamanda önemli bir düşünmeyi zorlayarak uygulamayı güçlendirir. Ekipler öğreniyor ve güvenliği artırmak için bu dersleri kullanıyorsa, örneğin, neden ve bir saldırganın bir uygulamanın güvenliğini nasıl tehlikeye atabileceğini ve önemli güvenlik hatalarını bulup düzeltmesinin ne olduğunu düşünün.
    • Sağlıksız bir sorun: Korunmakla daha fazla değere sahip bir değer veren uçuşme için göz atın. Bu durum genellikle, araçlar tarafından oluşturulan güvenlik hataları yüksek bir pozitif hız veya yanlış alarmlar olduğunda ya da bir şeyi gidermeye yönelik güvenlik çabası bir saldırının olası etkisini aşarsa oluşur.
  7. Güvenliği bütçe planlamasıyla tümleştirin: Güvenlik bütçesinin diğer güvenlik yatırımlarına orantılı olarak tahsis edilmiş olduğundan emin olmak. Bu, olay bütçesinin norm olarak fiziksel güvenliği de dahil olduğu bir etkinlik gibi fiziksel bir olayla benzerdir. Bazı kuruluşlar, en iyi güvenlik uygulamalarının tutarlı bir şekilde uygulamasını sağlamak için genel bir kural olarak toplam güvenlik maliyetinin yüzde 10'larını ayırır.

  8. Paylaşılan hedefler kurma: Uygulama iş yükleri için performans ve başarı ölçümlerinin geliştirme, güvenlik ve operasyon hedeflerini yansıttırmalarını sağlar.

Not

İdeal olan, kuruluşun tamamı veya belirli bir proje ya da uygulama için satın almayı en üst düzeye çıkarmak için bu paylaşılan hedefleri topluca oluşturmalarıdır.

DevSecOps MVP'lerini tanımlama

Bir fikirden üretime geçiş sırasında, özelliğin her gereksinim türü için en düşük gereksinimleri veya en düşük uygun ürünü (MVP) karşılayması kritik öneme sahiptir:

  • Geliştiriciler (geliştirme) kullanıcıların, müşterilerin ve iş liderlerinin beklentilerini karşılayacak yeteneklerin hızlı bir şekilde teslimi için iş ihtiyaçlarını temsile odaklanır. Özelliğin kuruluşun başarılı olmasını sağlamak için en düşük gereksinimleri belirleme.
  • Güvenlik (sn), uyumluluk yükümlülüklerini yerine getirmek ve kuruluşun kaynaklarından sürekli olarak yasal olmayan kazançlar elde etmek isteyen saldırganlara karşı savunmaya odaklanır. Mevzuat uyumluluğu gereksinimlerini karşılamak, güvenlik duruşlarını sürdürmek ve güvenlik işlemlerinin etkin bir saldırıyı hızla algılaya ve yanıtlamaya yönelik en düşük gereksinimleri belirleme.
  • İşlemler (ops) performans, kalite ve verimlilik odaklıdır ve iş yükünün uzun vadede değer sağlamaya devam eder. İş yükünün öngörülebilir gelecekte çok büyük mimari veya tasarım değişikliklerine gerek kalmadan gerçekleştirebilir ve desteklenebilir olmasını sağlamak için en düşük gereksinimleri belirleme.

MVP tanımları zaman içinde ve farklı iş yükü türleriyle değişebilir. Ekip kendi deneyimlerinden ve diğer kuruluşlardan birlikte öğrenir.

Bu süreçte güvenliği yerel olarak tümleştirin

Güvenlik gereksinimleri, mevcut süreç ve araçlarla yerel olarak tümleştirmeye odaklanmaktadır. Örnek:

  • Tehdit modellemesi gibi tasarım etkinlikleri tasarım aşamasıyla tümleştirildi
  • Güvenlik tarama araçları, Azure DevOps, GitHub ve Jenkins gibi sürekli tümleştirme ve sürekli teslim (CI/CD) sistemleriyle tümleştirildi
  • Güvenlik sorunları, diğer hatalar gibi öncelik belirleme şeması gibi aynı hata izleme sistemleri ve işlemleri kullanılarak bildirmelidir.

Ekiplerin öğrenmesi ve süreçleri olgunlaştıkça güvenliğin süreçle tümleştiriliği sürekli geliştirin. Güvenlik incelemeleri ve risk değerlendirmeleri, risk azaltma işlemlerinin 1 4.000'den fazla geliştirme sürecine, son üretim hizmetine ve temel alınan altyapıya tümleştirilmiş olduğundan emin olmaktır.

DevSecOps hakkında daha fazla bilgi için bkz. DevSecOps teknik denetimleri.

İpuçları gezinmeye devam

Dönüşüm, bir yolculukta artımlı olarak bu ideal durum için oluşturma gerektirir. Birçok kuruluşun bu yolculukta karmaşıklık ve zorluklar arasında gezinmesi gerekir. Bu bölümde, kuruluşların karşı karşıya olduğu yaygın sorunlardan bazıları özetler.

  • Eğitim ve kültür değişiklikleri erken dönemde kritik öneme sahip adımlardır:Sahipolduğunuz askeriyle birlikte mücadeleye gidersiniz. Sahip olduğunuz ekibin genellikle DevSecOps modelinin diğer parçalarını anlamak için yeni beceriler geliştirmesi ve yeni bakış açılarını benimsemesi gerekir. Bu eğitim ve kültür değişikliği zaman alır, odak noktası, yönetici sponsorluğu ve düzenli takipler, kişilerin değişikliğin değerini tam olarak anlarını ve görmelerini sağlar. Kültürleri ve becerileri büyük ölçüde değiştirmek bazen kişilerin profesyonel kimliğine dokunarak güçlü direnç potansiyeline neden olabilir. Her birey ve onların durumu için değişikliğin neden, ne ve nasıl olduğunu anlamak ve ifade etmek kritik öneme sahip.
  • Değişiklik zaman alır: Yalnızca takımınız işleri yeni yollarla yapmanın etkilerine ayak uydura kadar hızlı hareket edersiniz. Teams dönüşüm sırasında her zaman mevcut işlerini yapmak zorunda olacak. En önemlileri dikkatle önceliklendirmek ve bu değişikliğin ne kadar hızlı olacağının beklentilerini yönetmek kritik öneme sahip. En önemli ve temel öğelerin ilk sıralarda yer alan gezinme, yol, çalıştırma stratejisine odaklanmak, kuruluşa iyi hizmet edecek.
  • Sınırlı kaynaklar: Kuruluşların genellikle erkenden karşı karşıya olduğu zorluklardan biri, hem güvenlik hem de uygulama geliştirme aşamasında beceri ve beceri bulmaktır. Kuruluşlar daha etkili bir şekilde işbirliğine başladıklarında, güvenlik zihniyeti olan geliştiriciler veya geliştirme geçmişine sahip güvenlik uzmanları gibi gizli yetenekleri bulabilirler.
  • Uygulamaların, kodun ve altyapının doğasını değiştirme: Bir uygulamanın teknik tanımı ve bileşimi, sunucusuz, bulut hizmetleri, bulut API'leri ve bulut api'leri gibi kodsuz uygulamalar gibi teknolojilerle birlikte temel olarak Power Apps. Bu geçiş, geliştirme uygulamalarını, uygulama güvenliğini ve hatta geliştirici olmayanları uygulama oluşturma gücüyle değiştiriyor.

Not

Bazı uygulamalar, operasyon ve güvenlik sorumluluklarını bir site güvenilirlik mühendisi (SRE) rolünde birleştirir.

Bu sorumlulukları tek bir rolde kullanmak bazı kuruluşlar için ideal son durum olabilir ancak bu durum genellikle geçerli kurumsal uygulamalar, kültür, araç ve beceri kümelerinden gelen aşırı bir değişikliktir.

Bir SRE modelini hedef alıyorsanız bile, yatırım getirisinde (ROI) iyi bir geri dönüş elde etmek ve acil ihtiyaçları karşılamak için bu kılavuzda açıklanan pratik hızlı kazançları ve artımlı ilerlemeyi kullanarak güvenliği DevOps'a eklemenizi öneririz. Bu işlem, operasyon ve geliştirme personelinize artımlı olarak güvenlik sorumlulukları ekler ve bu da çalışanlarınızı bir SRE'nin son durumuna yaklaştıracaktır (kuruluş bu modeli daha sonra benimsemeyi planlıyorsa).

Sonraki adımlar

DevSecOps hakkında daha ayrıntılı rehberlik için DevSecOps teknik denetimlerini gözden geçirme.

Gelişmiş güvenliğin GitHub sürekli tümleştirme ve sürekli teslim (CI/CD) işlem hatlarınıza nasıl tümleştirildi hakkında bilgi için bkz. Gelişmiş güvenlik hakkında GitHub.

Microsoft'un IT kuruluşlarının DevSecOps'u uygulama şeklinde daha fazla bilgi ve araç için bkz. Güvenli DevOps araç seti.