Microsoft, Anthropic'in Claude Code GitHub otomasyonunda bir güvenlik açığı bulduğunu duyurdu. Bu açık, CI/CD süreçlerinden sırların sızmasına yol açabilir. Microsoft Tehdit İstihbaratı araştırmacıları, bir saldırganın prompt enjeksiyonu kullanarak asistanı, API anahtarları ve diğer kimlik bilgilerini içeren hassas sistem dosyalarını okumaya ikna edebileceğini tespit etti.
Araştırma, yapay zekanın GitHub sorunlarını işlemek ve iş akışlarını otomatikleştirmek için kullanıldığı genel depolara yönelik saldırı girişimleri sonucunda başlatıldı. Prompt enjeksiyonu bu tür senaryolarda özellikle tehlikelidir: bir saldırganın proje kodunu değiştirmek için izin alması gerekmez. Botun okuduğu bir GitHub sorunu veya başka bir metin promptu bırakmak yeterli olabilir.
Microsoft, HTML yorumları içinde gizlenmiş talimatlarla bir örnek sunuyor. Normal GitHub arayüzünde bu parçalar kullanıcılar tarafından görünmez, ancak ham Markdown'ı okuyan AI modeli bunları tanır. Sonuç olarak, kötü niyetli bir komut insanlara zararsız bir özellik talebi gibi görünürken, AI'ya depoda veya otomasyon ortamında bir eylem gerçekleştirmesi için talimat olarak görünebilir.
Araştırmacılar, bu yaklaşımın Claude Code GitHub iş akışına karşı işe yaradığını doğruladı. Anthropic, komutları çalıştırmak için Bash aracı da dahil olmak üzere bazı araçları zaten sandbox'a almış olsa da, Microsoft dosya okuma aracının aynı kısıtlamalara sahip olmadığını keşfetti. Bu, korumayı aşmayı ve modelin yanıtına dahil edilmemesi gereken verilere erişmeyi mümkün kıldı.
Microsoft'un testinde, özel olarak hazırlanmış bir prompt enjeksiyonu yükü, iki koruma katmanını atlatmayı ve asistanı sırlar içeren sistem dosyalarını okumaya ikna etmeyi başardı. Bu senaryo yalnızca bireysel geliştiriciler için değil, aynı zamanda depolara, derleme hatlarına ve dahili araçlara AI ajanları bağlayan şirketler için de tehlikelidir.
Microsoft, bilgiyi 29 Nisan'da Anthropic'e bildirdi. Düzeltme, 5 Mayıs'ta Claude Code'un 2.1.128 sürümünde yayınlandı. Anthropic, programın /proc/ dizinindeki hassas dosyalara erişimini kısıtlayarak bu tür veri çıkarmayı önledi. Bu durum, geliştirmede otomasyonun yalnızca kullanışlı araçlar değil, aynı zamanda katı bir güvenlik modeli gerektirdiğini gösteriyor: ajanın okuduğu herhangi bir metin potansiyel olarak bir komuta dönüşebilir.