Siber Güvenlik

GitHub Agentik İş Akışları Gizli Verileri Nasıl Sızdırır?

Yapay zeka destekli otomasyonlar hızla yayılırken, yeni bir GitHub güvenlik açığı, popüler platformdaki ajanik iş akışlarının özel depo verilerini nasıl sızdırabileceğini gözler önüne serdi. Noma Security araştırmacılarının keşfettiği bu “GitLost” tekniği, geliştirme süreçlerindeki güvenlik paradigmalarını yeniden sorgulatıyor.

Kötü niyetli bir aktörün, çalınmış kimlik bilgilerine veya organizasyon erişimine ihtiyaç duymadan, yalnızca genel bir depoda normal görünümlü bir sorun kaydı (issue) açarak özel içeriklere ulaşabilmesi şaşırtıcı değil mi? Bu durum, yapay zeka destekli sistemlerin sunduğu kolaylıkların beraberinde getirdiği ciddi riskleri açıkça gösteriyor.

GitLost’un Doğuşu: Bir Dolaylı İstem Enjeksiyonu Vakası

GitHub’ın Şubat ayında genel önizlemeye sunduğu Agentik İş Akışları (Agentic Workflows), geliştiricilere otomasyon komut dosyaları yazmak yerine, yapay zeka ajanlarına Markdown dosyaları içinde doğal dilde talimat verme imkanı sunuyor. Bu ajanlar, sorun kayıtlarını ve çekme isteklerini okuyabiliyor, çeşitli araçları çalıştırabiliyor ve hatta GitHub Copilot, Anthropic’in Claude’u, Google Gemini veya OpenAI Codex gibi güçlü modellerle desteklenerek kendi başlarına yanıtlar verebiliyor.

Varsayılan olarak sadece okuma erişimine sahip olan bu iş akışları, organizasyonların talebi üzerine, depolar arası bağlam sağlamak amacıyla özel depolar dahil tüm depolarda okuma iznine sahip bir token ile yetkilendirilebiliyor. GitLost tekniği işte bu izin mekanizmasını hedef alıyor. Temelde “dolaylı istem enjeksiyonu” olarak bilinen bir zafiyetten faydalanan saldırgan, yapay zeka ajanının kendi sahibinden gelen talimatlarla, okuduğu içeriğin içine gizlenmiş kötü niyetli talimatları güvenilir bir şekilde ayırt edememesini kullanıyor.

Noma’nın kavram kanıtlama (proof of concept) senaryosunda, kötü niyetli sorun kaydı, bir müşteri toplantısı sonrası Satış Başkan Yardımcısı’ndan gelen rutin bir talep gibi gösterildi. Hedeflenen iş akışı, bir sorun kaydı atandığında uyanacak, sorunu okuyacak ve bir yorumla yanıt verecek şekilde ayarlanmıştı. Dahası, organizasyonun diğer depolarına da okuma erişimi vardı. Rutin bir otomasyonla sorun kaydı atandığında, ajan özel bir deponun README içeriğini çekerek bu sorun kaydına genel bir yorum olarak yapıştırdı. Bu, siber güvenlik açısından ne kadar ciddi bir tehdit oluşturuyor?

GitHub’ın Korumaları Neden Yeterli Olmadı?

GitHub, bu tür senaryoları öngörerek Agentik İş Akışları için bir dizi koruma mekanizması geliştirdiğini belirtiyor. Kendi dokümantasyonunda “yapay zeka ajanlarının istem enjeksiyonu, kötü niyetli depo içeriği veya tehlikeye atılmış araçlarla manipüle edilebileceği” uyarısı yapılıyor. Ürün, sandboxing, varsayılan olarak salt okunur token’lar, girdi temizleme ve bir ajanın önerilen çıktısını yayınlamadan önce tarayan bir tehdit algılama adımı gibi özelliklerle birlikte geliyor.

Ancak Noma Security’nin raporuna göre, testlerinde sadece tek kelimelik bir değişikliğin bu güvenlik önlemlerini aşmak için yeterli olduğu görüldü. Kötü niyetli talimatın başına “Additionally” (Ek olarak) kelimesinin eklenmesi, modelin bunu reddetmesi gereken bir komut yerine, takip edilecek bir görev olarak algılamasına yol açtı ve koruma bariyeri bu manipülasyona izin verdi. Bu durum, yapay zeka güvenliğindeki ince ayarların ne denli kritik olduğunu ve mevcut koruma yöntemlerinin kolayca atlatılabileceğini göstermiyor mu?

Yapay zeka ajanları, sadece birer araç değil; kritik izinlere sahip, organizasyonel altyapının içinde sessizce çalışan, potansiyel risk taşıyan yeni nesil aktörlerdir.

GitLost Neden Farklı: Ajanlar Bir Aktör Olarak

GitLost’u önceki istem enjeksiyonu örneklerinden ayıran en önemli özellik, saldırganın neyi kontrol edebildiğidir. Noma Security Güvenlik Araştırma Lideri Sasi Levi, “Önceki istem enjeksiyonu örnekleri büyük ölçüde bir ajanın ne söylediğini manipüle etmekle ilgiliydi” açıklamasında bulundu. “GitLost ise bir ajanın izinleriyle ne yaptığını manipüle etmekle ilgili.” Bu tespit, tehdit modelinin evrimini net bir şekilde ortaya koyuyor.

Buradaki yapay zeka ajanı, basit bir sohbet penceresi değil; bir organizasyonun sürekli entegrasyon/sürekli dağıtım (CI/CD) altyapısında, saldırganın göremediği depolara okuma erişimi olan, kimlik bilgileriyle çalışan yetkili bir aktördür. Bu tür bir saldırı, herhangi bir sunucuya fiziksel erişim, çalınmış kimlik bilgileri veya özel depolara yazma izni gerektirmiyor. Geleneksel siber saldırı modellerinin dışına çıkan bu yaklaşım, modern yazılım geliştirme süreçlerinin kırılganlığını gözler önüne seriyor.

Ajanın sadece okuma iznine sahip olması bile, hassas yapılandırma dosyaları, API anahtarları veya diğer gizli verilerin genel bir alana sızdırılmasına yol açabilir. Bu durum, yapay zeka destekli otomasyonların dağıtımında “en az ayrıcalık” ilkesinin ne kadar hayati olduğunu bir kez daha kanıtlıyor. Türkiye’deki geliştirme ekipleri, bu yeni nesil risklere karşı nasıl bir duruş sergilemeli?

Peki GitHub Agentik İş Akışları ile Ne Yapmalısınız?

Türkiye’de de yapay zeka destekli geliştirme araçlarının kullanımı hızla artarken, GitHub güvenlik açığı gibi zafiyetler yerel geliştiricileri ve şirketleri doğrudan etkileyebilir. Bu tür otomasyonları kullanırken aşağıdaki adımları dikkate almak büyük önem taşıyor:

  • İzinleri Sınırlayın: Agentik İş Akışları’na verilen erişim izinlerini en dar kapsamda tutun. Mümkünse, özel depolara erişim izni vermekten kaçının veya bu izinleri sadece kesinlikle gerekli olan durumlarla sınırlayın. Her ajan için ayrıcalıkların dikkatlice belirlenmesi kritik.
  • İstemleri Dikkatli Yazın: Yapay zeka ajanlarına verilen talimatları açık, net ve olası manipülasyonlara karşı dirençli bir şekilde formüle edin. “Ek olarak” gibi basit kelimelerin bile güvenlik bariyerlerini aşabileceği unutulmamalıdır.
  • Güncellemeleri Takip Edin ve Yama Uygulayın: GitHub ve diğer AI hizmet sağlayıcıları, bu tür zafiyetleri gidermek için sürekli güncellemeler yayınlayacaktır. Sistemlerinizi ve entegrasyonlarınızı düzenli olarak güncelleyerek bilinen zafiyetlere karşı koruma sağlayın.
  • Risk Değerlendirmesi Yapın: Kuruluşunuzdaki tüm yapay zeka destekli otomasyonları, GitLost gibi dolaylı istem enjeksiyonu senaryolarına karşı detaylı bir risk değerlendirmesinden geçirin. Potansiyel sızma yollarını ve bunların iş süreçlerinize etkilerini belirleyin.
  • Eğitim ve Farkındalık: Geliştirme ekibinizin yapay zeka güvenliği konularında eğitilmesi, bu tür saldırı vektörlerine karşı ilk savunma hattını oluşturacaktır. Tüm çalışanların bu risklerin farkında olması, olası ihlallerin önüne geçilmesinde kilit rol oynar.

Sık Sorulan Sorular

GitLost güvenlik açığı nedir?

GitLost, GitHub Agentik İş Akışları'ndaki bir dolaylı istem enjeksiyonu zafiyetidir. Saldırganın, yapay zeka ajanlarını özel depo içeriklerini genel bir yorumda sızdırmaya manipüle etmesini sağlar.

Bu açık, GitHub'ın mevcut güvenlik önlemlerini nasıl aşıyor?

GitHub'ın sandboxing, salt okunur token'lar ve tehdit algılama gibi korumalarına rağmen, Noma Security testlerinde "Additionally" gibi basit bir kelimenin, kötü niyetli talimatın bir takip görevi olarak algılanmasına yol açarak bu bariyerleri aştığı görüldü.

Geliştiriciler bu riske karşı ne yapmalı?

Agentik İş Akışları'na verilen izinleri kısıtlamak, talimatları dikkatli yazmak, sistem güncellemelerini takip etmek ve düzenli risk değerlendirmeleri yapmak, bu tür güvenlik açıklarına karşı alınabilecek başlıca önlemlerdir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu