Her uygulamanın kalbinde sırlar vardır. İnsan-makine ve makine-makine iletişimine izin veren kimlik bilgileri. Makine kimlikleri, insan kimliklerinden bir 45’e 1 faktörü ve endişelenmemiz gereken sırların çoğunluğunu temsil eder. CyberArk’ın son araştırmasıKuruluşların %93’ü geçen yıl iki veya daha fazla kimlikle ilgili ihlal yaşadı. Bu büyüyen sorunu ele almamız gerektiği açık. Ek olarak, birçok kuruluşun özel depolarında bu kimlikler için düz metin kimlik bilgilerini kullanmaktan memnun olduğu ve bunların gizli kalacağını düşündüğü açık. Ancak, özel koddaki yetersiz hijyen, haberlerde çok sık gördüğümüz gibi, genel sızıntılara yol açıyor. Sorunun kapsamı göz önüne alındığında, ne yapabiliriz?
Gerçekten ihtiyacımız olan şey, özellikle makine kimliklerinin oluşturulması, depolanması ve bunlarla çalışılması konusunda süreçlerimizde bir değişiklik. Neyse ki, mevcut sır yönetimi çözümlerini ve sır algılama ve düzeltme araçlarını birleştirerek, geliştiricilerin bulunduğu yerde onları karşılayan net bir yol var.
Uçtan uca bir sır güvenliği oyun planı yapmak
Makine kimliği sorununu, yani sırların yayılmasını çözmeyi düşündüğümüzde, sorunu birkaç cümleyle ortaya koyabiliriz.
“Kodumuza, yapılandırmalarımıza, CI boru hatlarımıza, proje yönetim sistemlerimize ve diğer kaynaklara yayılmış, hesabını veremediğimiz ve tutarlı bir rotasyon stratejisine sahip olmadığımız bilinmeyen sayıda geçerli uzun ömürlü düz metin sırrımız var. Bu arada, geliştiriciler uygulamanın çalışmasını sağlamanın güvenilir, ancak sorunlu bir yolu olduğu için düz metindeki sırlarla çalışmaya devam ediyor.”
Bu çalışma tanımını düşünerek her kaygıyı ele almak için çok adımlı bir plan yapabiliriz.
- Sırların Tespiti – Yazılım geliştirme yaşam döngüsünde yer alan kod ve sistemlerde arama yaparak mevcut düz metin kimlik bilgilerini belirleyin ve her biri hakkında mümkün olduğunca fazla bilgi toplayın.
- Sır Yönetimi – Merkezi bir kasa platformu aracılığıyla bilinen tüm sırların muhasebeleştirilmesi.
- Geliştirici İş Akışları – Gizli bilgileri güvenli bir şekilde oluşturmayı, depolamayı ve çağırmayı kolaylaştırmak için süreçleri ve araçları ayarlayın.
- Sır Tarama – Düz metin olarak eklenen yeni sırları sürekli olarak izleme.
- Otomatik Döndürme – Geçerli sırların düzenli olarak değiştirilmesi, bunların kötü niyetli kişiler tarafından potansiyel olarak sömürülmesini azaltır.
Bu yolculuğu adım adım ilerleyebilir, bunu aşamalı bir uygulama olarak ele alabilirsiniz. Farkına varmadan, sırların yayılmasını ortadan kaldırmaya ve tüm makine kimliklerinizi güvence altına almaya çok daha yakın olacaksınız.
Sırlarınızı bulmak
Her takımın gizli yayılmayı kontrol altına almaya çalışırken karşılaştığı ilk sorun, hangi sırlara sahip olduklarını belirlemektir. Bilinmeyen sırları bulmak için manuel bir arama çabası herhangi bir takımı hızla bunaltabilir, ancak neyse ki, şu gibi sır tarama araçları vardır: GitGuardian’ınbu süreci otomatikleştirebilen ve kritik ayrıntılara ilişkin içgörü sağlayabilen. Kararlı bir platformdan, geliştiricilerle düzeltme için çalışmak üzere bir iletişim yolu sağlamalısınız.
Merkezi bir sır kasasının uygulanması
Herhangi bir iyi sır yönetimi stratejisinin merkezinde sırların nasıl saklandığı ve kullanıldığı yer alır. Kurumsal kasalar, bilinen tüm sırları şeffaf bir şekilde hesaba katmanıza, bunları hareketsizken ve hareket halindeyken şifrelemenize olanak tanır. İyi bir kasa çözümü, şunları içerir: Cyberark’tan Büyü Ve Hashicorp Kasa İşletmesi. Tüm altyapınız aynı sağlayıcıdan geliyorsa, örneğin AWS veya GCP, bunlar çok iyi seçenekler ilave olarak.
Geliştirici iş akışının güvence altına alınması
Gizli bilgilerin yönetimi, tarihsel olarak geliştiricilerin çözmesi gereken bir konu olarak bırakılmış ve bu da `.env` dosyaları gibi çok çeşitli çözümlere ve ne yazık ki gizli bilgilerin kod tabanına sabitlenmesine yol açmıştır. Merkezi bir kasa çözümünden yararlanmak, geliştiricilere uygulamalarından kimlik bilgilerini tüm ortamlarda güvenli bir şekilde çağırmak için tutarlı bir yol sunar. Şu anda yaptıkları kadar kolay uygulanabilen standart bir yaklaşım sunabilirseniz, birçok geliştiricinin dağıtımlarının bu güvenlik endişesi nedeniyle engellenmemesini garanti altına alma şansına atlayacağını göreceksiniz.
Ayrıca sola kaydırmayı da düşünebilirsiniz. ggshield gibi komut satırı araçları, geliştiricilerin herhangi bir commit yapılmadan önce düz metin kimlik bilgilerini taramak için otomatik Git kancaları eklemelerine olanak tanır. Bir sırrın bir commit’e ulaşmasını engellemek, daha sonra uğraşılacak bir olay olmaması ve sorunun yazılım geliştirme yaşam döngüsünün en ucuz noktasında çözülmesi anlamına gelir.
Her paylaşılan etkileşimde gizli tarama
Ayrıca bazen kazaların meydana geldiği gerçeğini hesaba katmak için bir yola ihtiyacınız var. Mevcut geliştiricilerin hata yapması veya henüz süreçlerinizi bilmeyen yeni ekipler veya alt yükleniciler işe alındığında ortaya çıkabilecek yeni sorunları izlemek için sürekli izleme gereklidir. Tıpkı ilk kez sır tespiti yaparken olduğu gibi, bilgileri tutarlı bir olayda toplayan bir platform kullanmak, bu yeni sorunlara hızla yanıt vermenize yardımcı olacaktır. Örneğin GitGuardian, her push veya yorumda otomatik olarak saniyeler içinde yeni düz metin kimlik bilgilerini yakalamak için kod deposu düzeyinde entegre olur.
Kısa ömürlü kimlik bilgileri otomatik rotasyonun hedefi olmalıdır
Bir saldırgan geçerli bir sır bulursa, bu onun işini çok daha basit hale getirir, çünkü karşılaştıkları herhangi bir kapıyı açabilirler. Aynı saldırgan geçersiz bir sır bulursa, onunla pek bir şey yapamaz. Merkezi bir kasa ile, otomatik rotasyon planları uygulayabilirsiniz. Çoğu modern platform ve hizmet, bir API çağrısı aracılığıyla yeni kimlik bilgileri oluşturmanın bir yoluna ve mevcut sırları geçersiz kılmanın bir yoluna sahiptir. Biraz komut dosyasıyla, AWS veya CyberArk gibi platformlar tarafından yayınlanan birçok kılavuzdan birini izleyerek, herhangi bir kimlik bilgisinin düzenli, hatta günlük bir programda güvenli bir şekilde değiştirilmesini otomatikleştirmek mümkündür.
Uçtan uca sır güvenliği bir plan gerektirir
Uçtan uca sır güvenliğiyle ilgili sorunları ele almak için en iyi zaman tam da şimdi. Eğer halihazırda bir oyun planınız yoksa, bugün bu konuşmaları yapmaya başlamak için en iyi zamandır. “https://thehackernews.com/2024/07/”hangi sırlarımız var?” veya “Bir kasa var mı?” gibi sorular sorarak başlayın. Sonuç olarak, geliştiricilere geliştirme akışlarına odaklanmalarını sağlayan iş akışları ve bariyerler sağlamalıyız.
Yeni sırların keşfedilmesi ve derhal ele alınması konusunda uyanık olmak devam eden bir süreçtir. Farkındalığı artırmak ve doğru süreçleri ve teknolojileri benimsemek de dahil olmak üzere çaba gerektirecektir, ancak herhangi bir şirket, kuruluş genelinde makine kimlikleri ve sırları üzerinde uçtan uca daha iyi bir kontrole sahip olabilir.