İşletmeniz yazılıma dayanıyor ve saldırganlar bunu biliyor. Uygulamalarınızın size karşı kullanılmasını önlemek için üç önemli şeyi sağlayan bir uygulama güvenliği (AppSec) programına ihtiyacınız var:

  • Güvenlik Kodu: Kodunuz güvenlik açığı içermemeli ve iyi korunmalıdır.
  • Güvenli yazılım tedarik zinciri: Kitaplıklarınız, ürünleriniz ve geliştirme araçlarınız için aynen.
  • Güvenli işlemler: Üretimde saldırıları tespit etmeli ve istismarları engellemelisiniz.

Bu koruma düzeyine ulaşmak için birkaç yol seçebilirsiniz. Hangi yolu seçeceğiniz ekiplerinize, süreçlerinize, teknolojinize ve kültürünüze bağlıdır. Hepsi birlikte nasıl çalışır? Bir AppSec programının riski ortadan kaldırmakla ilgili olmadığını unutmayın. İş, risk almayı içerir ve bunu tamamen ortadan kaldırmanın bir yolu yoktur. Ancak neyin yanlış gidebileceğini bilmeden körü körüne riskler almakla, bir sorunun bulunup istismar edilme olasılığının ve sonuçların ne kadar feci (ya da değil) olabileceğinin farkında olmak arasında büyük bir fark vardır.

Risk kararları söz konusu olduğunda, karşılaşacağınız en önemli şey AppSec programınız için bir strateji seçmektir. Bir AppSec programı kurmak nüanslı ve çeşitlidir, ancak aşağıdaki üç genel türden hangisinin şirketinize en uygun olduğunu düşünün. Yanlış yol, sizi büyük bir güvenlik borcu ile bırakabilir veya hatta muhtemelen ihlal edebilir, çünkü o kadar da alakalı olmayan güvenlik açıklarını takip etmek için zaman harcandı ve gerçek riskler “hiç ulaşılamadı” yığınına gömüldü.

1. Denetçi: Onay Kutusu AppSec

“Minimal” AppSec programlarında, küçük ekipler yalnızca dış standartlar veya müşterileri tarafından kendilerinden istenenleri yapar. Amaç, tümü aslında kontrol listeleri olan OWASP, PCI ve NIST gibi uygulama güvenlik standartları için kutuları işaretlemektir. Birçok şirket türü bu stratejiyi benimser – en yaygın olarak küçük ve orta ölçekli işletmeler – ancak kontrol listeleri onlara gerçek güvenlik getirmez.

Minimal AppSec programları asla başarılı olamaz. Kodu değerlendirmek için OWASP ZAP ve DependencyCheck gibi ücretsiz veya çok ucuz araçlara güvenerek yapabilirler. Üretim için ucuz bir bulut web uygulaması güvenlik duvarı (WAF) da karışımda olabilir. Ancak bu araçlar, gerçek güvenlik açıklarını gözden kaçıran yanlış negatifler göstererek kuruluşlara yanlış bir güvenlik hissi verebilir. Bu tür araçlar aynı zamanda, gerçek düzeltme yerine kaynakların israf edilmesine ve büyük birikmiş iş yığınlarına yol açan yanlış pozitifler atma eğilimindedir.

Minimal bir AppSec programına sahip olmanın bir avantajı, insanlar ve araçlar için bütçenin küçük olma eğiliminde olmasıdır. Ancak minimal AppSec programları iş riskinin net bir şekilde anlaşılmasını sağlamadığından, kuruluşlar eksik bilgilere dayalı kurumsal güvenliğe yetersiz yatırım yapmaktadır.

2. Avukat: Düşmanca AppSec

Rakip AppSec programlarında, geliştirme ekibi kodu olabildiğince hızlı teslim etmeye çalışırken, silolu güvenlik ekibi kontrol için boğuşur. Geliştirme, özellikler sunmaya odaklanırken, güvenlik ekibi daha fazla güvenlik etkinliği eklemeye çalışır. Finans, bankacılık, e-ticaret ve sigorta gibi kritik sektörler gibi büyük şirketler de bu yaklaşımı benimseme eğilimindedir.

Bu yaklaşım, tüm faaliyetleri yürütmek için büyük bir güvenlik ekibi gerektirir. Çoğunun mimari, politika, tehdit modelleme, politika, statik tarama, dinamik tarama, WAF’ler, eğitim ve daha fazlasına odaklanan çeşitli alt ekipleri vardır. Rakip programların her zaman yapacak daha fazla analizi vardır, ancak güvenlik ekipleri bu tür programlarda kodu gerçekten düzeltmez. Kuruluşlar, tüm işlerin yapılmasına yardımcı olmak için genellikle “şampiyon” programları benimser. Ancak, faaliyetlerin istenen sonuçlarından net bir görüş açısı olmadan, yoğun işlerin çoğunun ölçülebilir bir etkisi yoktur veya çok azdır.

Yeterince büyük bir ekip ve büyük bir bütçe verildiğinde, rakip AppSec programları etkili olabilir. Ancak çoğu program, özellikle geliştirme ekipleri yazılım sürümlerini hızlandırdıkça, araç çıktısının hacmini idare etmekte zorlanıyor. Çoğu güvenlik açığı, ne önceliklendirilen ne de giderilmeyen, sürekli büyüyen bir sorun yığınında ortaya çıkar. Geliştirme ekipleri, güvenlik testleri ve geçitlerle birleşen bu birikimler nedeniyle önemli gecikmeler ve darboğazlar ile karşı karşıya kalmaktadır. İnovasyon, hayal kırıklığına neden olan ve geliştirme ekiplerini istisnalar aramaya ve güvenliği atlamaya zorlayan bu gecikmeler nedeniyle zarar görüyor.

3. Geliştirici: Geliştirici Merkezli AppSec

Geliştirici merkezli AppSec programları, uygulama güvenliğini düzenli çalışmalarının bir parçası olarak doğrudan yazılım geliştirme ekiplerinin ellerine teslim etmeye çalışır. Amaç: Ekiplerin sonunda, geliştiriciden başlayarak üretime kadar yazılım geliştirme yaşam döngüsü boyunca güçlü güvenlik sağlayan otomatikleştirilmiş bir işlem hattı oluşturması. Bu tür programlara genellikle “DevSecOps” veya “sola kaydırma” adı verilir.

DevSecOps programları, daha küçük, silolu AppSec ekiplerinin aksine, güvenlik çalışması yapmak için yazılım geliştirmenin “büyük makinelerini” kullanır. Geliştiricilerin ardışık düzenleri yavaşlatmaya veya yanlış pozitiflerle zaman kaybetmeye tolerans göstermeyecekleri göz önüne alındığında, geliştirici ekipleri, hızlı güvenlik geri bildirim döngüleri sağlayan ve maliyeti azaltan hızlı ve son derece hassas araçlar kullanarak işlem hatlarındaki güvenlik testlerini otomatikleştirir.

Geliştirici merkezli programlar, tam otomatik güvenlik ve kalite testlerini aynı anda gerçekleştirmek için etkileşimli uygulama güvenlik testi (IAST) araçlarını kullanır. Ekipler test kapsamını genişletmek ve boru hattını güçlendirmek için birlikte çalıştıkça, bunu yapmak geliştirme ve güvenlik çıkarlarını hizalar. Çalışma zamanı uygulaması kendini koruma (RASP) ile saldırılara ilişkin görünürlük, ekiplere güvenlik önceliklerini bildiren tehdit istihbaratı da sağlar. RASP teknolojisi, güvenlik açıklarının istismar edilmesini önleyerek ekiplerin bir yangın tatbikatı yapmak zorunda kalmadan yeni güvenlik açıklarına yanıt vermesini sağlar.

Geliştirici merkezli yaklaşım, DevOps dönüşümündeki aşamaları ne olursa olsun projeler için idealdir. Bununla birlikte, bu yaklaşım tamamen geleneksel projelere uygulandığında otomatikleştirilmiş boru hatlarından, kalite test altyapısından ve DevOps kültüründen yararlanamayabilir. Yine de, geliştirici merkezli bir güvenlik yaklaşımı benimsemek, bir DevOps dönüşümünü başlatmak veya hızlandırmak için mükemmel bir katalizör olabilir.

Yazılım Güvenliği Değişti

SolarWinds, Log4Shell ve Spring4Shell gibi olaylardan ilham alan dünya hükümetleri, uygulama güvenliği konusunda bir şeyler yapmaya zorlandı. NIST, PCI ve OWASP’ın yeni düzenlemeleri ve standartlarının tümü, AppSec’e daha karmaşık bir yaklaşım ve yaptığınız şeyin gerçekten etkili olduğuna dair gerçek kanıtlar gerektirir.

“Asgari” veya “karşıt” bir AppSec programı kullananlar, aşağıdakiler de dahil olmak üzere bazı değişiklikler yaparak yanıt vermek zorunda kalacaklardır:

  • Tehdit modellemesi: Kontrol listeleri günleri sona erdi. Uygulamalarınızı tehdit modellemeniz ve ardından her biri için uygun kontroller uyguladığınızı göstermeniz gerekecek.
  • AST: Ayrıca, uygulamalarınızın ve API’lerinizin güvenliğini test etmek için çok daha kapsamlı bir iş yapmanız beklenecektir. Savunmalarınızın etkinliğini test ettiğinize ve bulunan sorunları giderdiğinize dair kanıt sağlamanız gerekecek.
  • SBOM’lar: Açık kaynak kullanımınızı gerçekten ele almak için, muhtemelen kitaplık verilerini her zaman güncel bir veritabanına rapor eden sensörlere ihtiyacınız olacak. Ancak bu arada, müşterileriniz için yazılım malzeme listeleri (SBOM’ler) oluşturmanız da gerekecek.

Yaklaşımınızı değiştirmeye karar verirseniz, her şeyi bir kerede değiştirmeye çalışmaktansa, her seferinde bir ekibi dönüştürmenin muhtemelen tercih edildiğini unutmayın.

Kutuları işaretlemenin ötesine geçen daha şeffaf uygulama güvenliğine yönelik eğilim muhtemelen burada bitmeyecek. Birincisi, ABD hükümeti, görünürlük oluşturmak ve üreticilerden daha iyi güvenlik sağlamak için bir yazılım güvenlik etiketleme planını değerlendiriyor. Bunun gerçek olup olmayacağı henüz belli değil, ancak şunu söylemek güvenli: Şimdi, uygulama güvenliği için doğru stratejiyi seçtiğinizden emin olmanın tam zamanı.



siber-1