GitHub Çarşamba günü, yeni güvenlik sorunlarının ortaya çıkmasını önlemek amacıyla hedeflenen öneriler sağlamak üzere tüm Gelişmiş Güvenlik müşterilerine kod tarama otomatik düzeltme adı verilen bir özelliği genel beta sürümünde kullanıma sunduğunu duyurdu.
“GitHub Copilot ve CodeQL tarafından desteklenen kod tarama otomatik düzeltmesi, JavaScript, Typescript, Java ve Python'daki uyarı türlerinin %90'ından fazlasını kapsar ve çok az düzenlemeyle veya hiç düzenleme yapmadan bulunan güvenlik açıklarının üçte ikisinden fazlasını düzelten kod önerileri sunar. ” GitHub'dan Pierre Tempel ve Eric Tooley söyledi.
İlk kez Kasım 2023'te ön izlemesi yapılan bu özellik, kod önerileri oluşturmak için CodeQL, Copilot API'leri ve OpenAI GPT-4'ün birleşiminden yararlanıyor. Microsoft'un sahibi olduğu yan kuruluş ayrıca gelecekte C# ve Go da dahil olmak üzere daha fazla programlama dili için destek eklemeyi planladığını söyledi.
Kod tarama otomatik düzeltmesi, geliştiricilerin kod yazarken potansiyel düzeltmeler oluşturarak güvenlik açıklarını çözmelerine yardımcı olmak ve desteklenen bir dilde bir sorun keşfedildiğinde doğal bir dil açıklaması sağlamak için tasarlanmıştır.
Bu öneriler, mevcut dosyanın ötesine geçerek diğer bazı dosyalarda yapılan değişiklikleri ve sorunu düzeltmek için eklenmesi gereken bağımlılıkları da içerebilir.
Şirket, “Kod tarama otomatik düzeltmesi, en iyi uygulamalar hakkındaki bilgileri kod tabanı ayrıntılarıyla birleştirerek ve geliştiriciye potansiyel bir düzeltme önermek için uyarı vererek geliştiricilere giriş engelini azaltır” dedi.
“Güvenlik açığı hakkında bilgi aramak yerine geliştirici, kod tabanları için potansiyel bir çözüm gösteren bir kod önerisiyle başlıyor.”
Bununla birlikte, önerileri değerlendirmek ve bunun doğru çözüm olup olmadığını belirlemek ve amaçlanan davranıştan sapmadığından emin olmak geliştiriciye bırakılmıştır.
GitHub ayrıca otomatik düzeltme kodu önerilerinin mevcut sınırlamalarını da vurguladı, bu da geliştiricilerin değişiklikleri ve bağımlılıkları kabul etmeden önce dikkatlice incelemesini zorunlu kıldı –
- Sözdizimsel olarak doğru kod değişiklikleri olmayan düzeltmeler önerin
- Sözdizimsel olarak doğru kod olan ancak yanlış konumda önerilen düzeltmeleri önerin
- Sözdizimsel olarak geçerli olan ancak programın anlamını değiştiren düzeltmeler önerin
- Temel nedeni çözemeyen veya yeni güvenlik açıkları ortaya çıkaran düzeltmeler önerin
- Temeldeki kusuru yalnızca kısmen çözen düzeltmeler önerin
- Desteklenmeyen veya güvenli olmayan bağımlılıklar önerin
- Olası tedarik zinciri saldırılarına yol açacak şekilde keyfi bağımlılıklar önerin
Şirket, “Sistemin daha geniş ekosistemde yayınlanan bağımlılıklar hakkında eksik bilgiye sahip olduğunu” belirtti. “Bu, saldırganların istatistiksel olarak olası bir bağımlılık adı altında yayınladığı kötü amaçlı yazılımlara yeni bir bağımlılık ekleyen önerilere yol açabilir.”