GitHub, otomatik güvenlik açığı algılama araçlarının yeteneklerini genişletir ve JavaScript veya TypeScript proje geliştiricilerine, makine öğrenimine dayalı yeni bir güvenlik açığı algılama özelliğini test etme fırsatı sunar.
Kod paylaşım platformu sunar geçen haftadan beri bu yeni özellik herkese açık beta sürümünde.
Yeni özellik, JavaScript ve TypeScript projelerinde en yaygın olarak tanımlananlar arasında dört tür güvenlik açığına odaklanıyor: SQL ve NoSQL enjeksiyonları, siteler arası komut dosyası çalıştırma güvenlik açıkları ve Yol Geçişi güvenlik açıkları. GitHub’a göre, bu dört güvenlik açığı kategorisi, son birkaç yılda JavaScript/Typescript projelerinde tanımlanan güvenlik açıklarının çoğunu temsil ediyor.
Potansiyel güvenlik açıklarını belirlemek için bir ML modeli
Etkilerini sınırlamak için GitHub, bu nedenle, analiz edilen projelerde bu tür güvenlik açığını otomatik olarak tanımlamasını sağlamak için bir makine öğrenimi modeli eğitmeye karar verdi.
Bu, Microsoft tarafından geliştirilen CodeQL kod tarama aracına dayanmaktadır. Bu otomatikleştirilmiş araç, bir kaynak koddaki güvenlik açıklarının varlığını analiz ederek test etmeyi mümkün kılar. GitHub, CodeQL tarafından derlenen verilerden yararlanarak, çok sayıda güvenlik açığını belirlemek ve bir güvenlik açığına yol açabilecek koşulları belirlemek için makine öğrenimi modelini eğitmeyi başardı.
Model bu tür koşulları belirlediğinde, belirli kod parçalarındaki olası güvenlik açıklarını belirten bir dizi uyarı aracılığıyla yöneticiyi bilgilendirir ve yöneticiye söz konusu kodu analiz etme veya varsa hatayı düzeltme olanağı sunar.
Beta sürümü mevcut
Ancak GitHub, modelin CodeQL gibi geleneksel kod analiz araçlarından daha fazla hatalı pozitiflere eğilimli olduğunu belirtir.
Yine de kuruluş, modelin zaman içinde işleyişini ve tespitlerini iyileştirmek için geniş ölçekli kullanımından fayda sağlayacağını umuyor.
Bu özellik şu anda JavaScript veya TypeScript kullanan tüm depolar için deneysel beta sürümünde mevcuttur ve etkinleştirmek isteyen geliştiriciler bunu izleyebilir GitHub tarafından verilen talimatlar.