Check Point Yazılım Teknolojileri Geliştirici Öncelikli Güvenlik Başkanı Dotan Nahum tarafından
İşte hızlı bir soru: tüm hassas verilerinizin nerede olduğunu biliyor musunuz? Her büyüklükteki işletme, her zamankinden daha fazla yerde daha fazla veri kaydı oluşturduğundan, biriktirdiğinden, depoladığından ve işlediğinden, tüm bu verileri sınıflandırmak ve izlemek – bunlardan yararlanmaktan bahsetmeye bile gerek yok – giderek daha zor hale geliyor.
Bir yandan, işletmeler izole edilmiş veri siloları ve eskimiş eski kodlarıyla dijital dönüşüme koşuyor. Öte yandan geliştiricilerin %86’sı, kodlama yaparken uygulama güvenliğini birinci öncelik olarak görmediklerini itiraf ediyor. Arada bir yerde, yazılım geliştirme yaşam döngüsü olan kaotik sürece kod güvenliği en iyi uygulamalarını, gizlilik düzenlemelerini ve uyumluluk standartlarını uygulamaya çalışırken tükenmişlikle karşı karşıya kalan CISO’lar var.
Bu gönderide, dağıtılmış verilerinizin haritalandırılmasının gerekli olduğuna, yol boyunca hangi zorluklarla karşılaşacağınıza ve bunların üstesinden nasıl geleceğinize bakacağız.
Veriler neden ilk etapta dağılmış durumda?
Beğenin ya da beğenmeyin, iş uygulamaları tarafından üretilen, depolanan ve işlenen çoğu veri doğası gereği dağıtılır. Herhangi bir uygulamanın işlevsellik ve performans açısından ölçeklenmesi için hem mantıksal hem de fiziksel veri dağıtımı gereklidir. Kuruluşlar, çeşitli amaçlar için farklı dosya ve veritabanlarında farklı veri türlerini depolar.
Bir şirket içindeki veri dağıtımının klasik örneği, alıcı ve müşteri verileridir. Bir KOBİ, düzinelerce dahili olarak geliştirilmiş ve üçüncü taraf SaaS uygulamasına yayılmış müşteri adayları, depo siparişleri, CRM ve sosyal medya izleme hakkında verilere sahip olabilir. Bu uygulamalar, sahip olunan ve paylaşılan havuzlara farklı aralıklarla ve biçimlerde veri okur ve yazar. Çoğu durumda, her birinin aynı verileri depolamak için çeşitli şemaları ve alan adları vardır.
Uygulama geliştirme süreçleri, özellikle sunucusuz, mikro hizmet tabanlı mimariler, API’ler ve üçüncü taraf (açık kaynak) kod entegrasyonu ile ilgili olarak, verilerin önemli bir bölümünü uygulama mimarisi içinde dağıtır. Dolayısıyla kritik soru, uygulamalarımızda verileri neden dağıttığımız değil. Bunun yerine, onu uygulamamızdaki yaşam döngüsü boyunca etkili ve güvenli bir şekilde yönetebiliriz.
Dağıtılmış verileri eşleme: Çaba ödüle değer mi?
“Sola kaydır” uygulama güvenliği, büyük veri güvenliği, kod güvenliği ve gizlilik mühendisliği yeni kavramlar değildir. Ancak, yazılım mühendisleri ve geliştiriciler, kodlarının ve verilerinin kötü niyetli kişilere karşı korunmasını sağlayan araçları ve metodolojileri benimsemeye yeni başlıyor. Temel olarak, yakın zamana kadar güvenlik araçları geliştiriciler yerine bilgi güvenliği ekipleri tarafından kullanılmak üzere tasarlanmış ve oluşturulmuştu.
Tasarım gereği gizlilik de yeni bir şey değil, ancak günümüzün telaşlı hızı ve teslimat odaklı geliştirici kültüründe, veri gizliliği hâlâ ihmal edilme eğiliminde. Düzenleyici standartlar (GDPR, PCI ve HIPAA gibi) iş öncelikleri haline gelene kadar genellikle göz ardı edilir. Alternatif olarak, bir veri ihlali sonrasında, C-suite ilgili tüm departmanların sorumluluk almasını ve önleyici tedbirler almasını talep edebilir.
Tüm yazılım hizmetleri ve algoritmalar, tasarım ilkeleri gereği gizlilikle geliştirilseydi harika olurdu. Veri yönetimini çocuk oyuncağı haline getirecek şekilde planlanmış ve oluşturulmuş sistemlerimiz olurdu; bu, uygulama mimarisi boyunca erişim kontrolünü düzene sokar ve ilk günden itibaren uyumluluk ve kod güvenliğini ürüne dahil ederdi. Kısacası, kesinlikle harika olurdu. Ancak bugün çoğu geliştirme takımında durum böyle değil. Veri gizliliği konusunda proaktif olmak istiyorsanız nereden başlamalısınız?
Verileri korumanın ilk adımı, nerede olduğunu, ona kimin eriştiğini ve nereye gittiğini bilmektir. Görünüşte basit olan bu sürece veri eşleme denir. Uygulamanızın veri akışlarını keşfetmeyi, değerlendirmeyi ve sınıflandırmayı içerir.
Veri eşleme, veri süreçlerinizi oluşturan ve veri kayıtlarına dokunan her hizmet, veritabanı, depolama ve üçüncü taraf kaynağı araştırmak ve listelemek için manuel, yarı otomatik ve tam otomatik araçların kullanılmasını gerektirir.
Uygulama veri akışlarınızı eşlemek, uygulamanızın hareketli parçalarının bütünsel bir görünümünü sunar ve depolama biçimi, sahibi veya konumu (fiziksel veya mantıksal) ne olursa olsun farklı veri bileşenleri arasındaki ilişkileri anlamanıza yardımcı olur.
Kolay bir sürüş beklemeyin.
Uyumluluk, güvenlik, birlikte çalışabilirlik veya entegrasyon amaçları için verilerinizi eşleştirmek, söylemesi yapmaktan daha kolaydır. İşte karşılaşmayı bekleyebileceğiniz engeller.
Hareket eden bir hedefin tasviri
Uygulamanızın genel boyutuna ve karmaşıklığına bağlı olarak, manuel veri eşleme işlemi haftalar hatta aylar sürebilir. Veri eşleme gerektiren uygulamaların çoğu gelişen ve büyüyen projeler olduğundan, genellikle kendinizi mikro hizmetler ve dağıtılmış veri işleme görevleri boyunca kod tabanı genişletme hızını takip ederken ve ek veri depoları dağıtırken bulacaksınız. Ancak, döndürürsünüz, veri haritanız tamamlanır tamamlanmaz geçersiz olur.
Veri dağıtım kolaylığı
Yeni veri depoları neden haritalayabileceğinizden daha hızlı açılıyor? Çünkü bulut tabanlı araçlar ve hizmetler kullanarak yeni veri tabanlı özellikleri, mikro hizmetleri ve iş akışlarını devreye almak çok kolay. Uygulamanız büyüdükçe, verilere dokunma hizmetlerinin sayısı da artar. Ayrıca, geliştiriciler yeni teknolojileri ve çerçeveleri denemeyi sevdiklerinden, kendinizi dağıtması çok kolay, ancak haritalaması bir kabus olan karmaşık, kapsayıcılı bir altyapıyla (Docker ve Kubernetes kümeleriyle) uğraşırken bulabilirsiniz.
Eski kodun dehşeti
İşletmeler, eski sistemlerinin dijital dönüşümünü üstlenirken, bu sistemler tarafından kullanılan ve oluşturulan verileri ele almaları gerekir. Pek çok durumda, özellikle yerleşik işletmelerde, eski kodu orijinal olarak yazan ve sürdüren kişi artık şirkette değildir. Bu nedenle, sınırlı görünürlük veya belgelere sahip eski bir ortamda hizmet ara bağlantısının ve veri standardizasyonunun inceliklerini keşfetmek size kalmış.
Güvenlik ve gizlilik mühendisliğini uygulamalarınıza entegre etme
Verilerin her gün çalındığı bir sır değil. Öyle ki, e-posta adresinizin dark web’de satışa sunulan bir veya daha fazla veri setinde yer aldığını hemen hemen garanti edebilirsiniz.
Uygulamanızı ve verilerinizi siber suçluların açgözlülüğünden ve düzenleyicilerin incelemesinden korumak için ne yapabilirsiniz?
Verilerinizi eşlemek için kodunuzu tarayın.
Modern CI/CD ardışık düzenleri ve süreçleri, kod sorunlarını, güvenlik açıklarını ve yanlışlıkla halka açık havuzlara gönderilen kod sırlarını belirlemek için Statik Uygulama Güvenliği Testi (SAST) araçlarını kullanır. Uygulamanızdaki veri akışlarını keşfetmek ve haritasını çıkarmak için benzer bir statik kod analizi tekniği kullanabilirsiniz.
Bu yaklaşım, verilere erişebilen, işleyebilen ve depolayabilen kod bileşenlerinin haritasını çıkarır, böylece herhangi bir veritabanının veya veri deposunun içeriğini tam olarak taramadan veri akışlarının haritasını çıkarır.
Mikro hizmetler için net sınırlar uygulayın.
Bir mikro hizmet mimarisinde, her bir mikro hizmet (ideal olarak) otonom olmalıdır (daha iyisi veya daha kötüsü için). Ancak hassas verilerle ilgili olarak her bir mikro hizmet nerede biter ve bir başkası nerede başlar?
Uygulamanın mantıksal etki alanı modellerine ve ilgili verilerine odaklanarak her bir mikro hizmetin ve ilgili etki alanı modelinin ve verilerinin sınırlarını belirleyebilirsiniz. Ardından, bu mikro hizmetler arasındaki eşleşmeyi en aza indirmeye çalışın.
Dağıtılmış bir dünyada gizlilik için sola kaydırın
Veri güvenliği ve gizliliği, uygulama geliştiricileri için nadiren bir önceliktir. Bu nedenle, uygulama verilerinin bulut varlıklarınız ve kurum içi cihazlarınız arasında kataloğa alınmamış ve yönetilmemiş olarak dolaşabilmesi şaşırtıcı değildir. Ancak 2023’te veri gizliliği yasalarını ve kodunuzda gizlenen potansiyel veri güvenliği tehditlerini göz ardı edemezsiniz.
Uygulamanıza giren ve çıkan veri akışlarının haritasını çıkarmak, gizliliği sola kaydırmanın ve gizlilik mühendisliğini, uyumluluğu ve kod güvenliğini CI/CD ardışık düzeninize entegre etmenin ilk adımıdır.
yazar hakkında
Dotan Nahum, Check Point Yazılım Teknolojileri’nde Geliştirici Öncelikli Güvenlik Başkanıdır. Dotan, Check Point Software tarafından satın alınan Spectralops’un kurucu ortağı ve CEO’suydu ve şimdi Developer-First Security Başkanı. Dotan deneyimli bir uygulamalı teknoloji gurusu ve kod ninjasıdır. Başlıca açık kaynak katılımcısı. React, Node.js, Go, React Native, dağıtılmış sistemler ve altyapı (Hadoop, Spark, Docker, AWS, vb.) ile ilgili yüksek uzmanlık Dotan’a çevrimiçi olarak ([email protected]) adresinden ulaşılabilir ve https://twitter.com/jondot ve şirketimizin web sitesinde https://www.checkpoint.com/.