· kaynak dev.to (home feed)
Plugin4Shell: Sıfır tıklamalı eklenti açığı Claude Code, Codex, Copilot ve Gemini CLI'ı vurdu
AIR Security, bir SHA sabitleme atlatma yönteminin depo sahiplerinin Claude Code, Codex, Copilot ve Gemini CLI içindeki incelenmiş eklenti kodunu sessizce değiştirmesine izin verdiğini söylüyor; iki agent yamalandı, Copilot yamalanmadı ve Gemini CLI için düzeltme yapılmayacak.

Ne oldu
Güvenlik araştırma firması AIR Security, Plugin4Shell adını verdiği, yaygın olarak kullanılan dört AI kodlama agent'ını etkileyen sıfır tıklamalı bir açık duyurdu: Anthropic'in Claude Code'u, OpenAI'nin Codex'i, Microsoft'un GitHub Copilot'ı ve Google'ın Gemini CLI'ı. Araştırmayı özetleyen dev.to yazısına göre açık, bir eklentinin deposunu kontrol eden kişinin marketplace incelemesinden geçmiş ve sürümü sabitlenmiş kodu, kullanıcının hiçbir işlem yapmasına gerek kalmadan sessizce değiştirmesine imkân veriyor. AIR Security milyonlarca agent'ın etkilendiğini iddia ediyor.
Bunu tipik eklenti kötücül yazılımından ayıran şey hedef: Dikkatsiz kullanıcılar değil, kitaba uygun her şeyi yapan, güvenilir bir marketplace'ten yükleyen, incelemeyi bekleyen ve sürümleri sabitleyen kişiler.
SHA sabitleme atlatması nasıl çalışıyor
Bu agent'lar için marketplace incelemesi, onaylanan eklenti sürümünün commit hash'ini kaydetmekle yapılır. Agent daha sonra bu SHA'ya kilitlenir ve kurulum ya da güncelleme sırasında yalnızca eşleşen commit'i çeker. Teoride, depo sahibinin sonraki değişiklikleri hiçbir zaman kullanıcılara ulaşmaz.
Boşluk şurada: Agent o numara için checkout yapar ancak getirdiği şeyin gerçekten hash ile eşleşip eşleşmediğini doğrulamaz. AIR Security buna SHA sabitleme atlatması diyor ve iki çalışan yol gösterdi.
Claude Code, Codex ve Copilot için araştırmacılar git'in çözümleme sırasını istismar etti: İstenen bir ad commit tanımlayıcısıyla çakıştığında git dalı tercih eder. Depoyu kontrol eden bir saldırgan, adı sabitlenmiş hash ile aynı onaltılık dizgi olan bir dal oluşturur ve bunu kötücül kodla doldurur; böylece agent'ın checkout'u incelenmiş commit yerine sahte dalı getirir.
Gemini CLI farklı bir getirme ve checkout mekanizması kullanıyor ancak araştırmacılar aynı sonucun elde edildiğini bildiriyor.
Dikkat çekmeye değer bir kısıtlama var: Dal adı hilesi, hash'e benzeyen dal adlarını kabul eden bir git barındırıcısı gerektiriyor. GitHub'ın tam olarak 40 onaltılık karakterden oluşan dal adlarını reddettiği bildirilirken, Bitbucket ve self-hosted git sunucuları bunlara izin veriyor.
Neden sıfır tıklamalı
Sıfır tıklama nitelemesi yalnızca ilk kurulum için geçerli değil. Claude Code ve Codex varsayılan olarak arka planda güncelleme yapar; dolayısıyla sabitlenmiş SHA bir kez değiştirildiğinde, değiştirilen kod kullanıcı hiçbir şeye dokunmadan, eklentinin kurulu olduğu her makineye yayılır.
Önceki saha çalışmalarının desteklediği iki senaryo
Araştırmacılar senaryoların gerçekçi olduğunu savunmak için önceki ölçümlere işaret ediyor. Önceki bir testte, ekiplerinin yayınladığı bir eklenti geri çekilmeden önce 26.000 agent'a yayıldı. Ayrı bir araştırma olan SkillJacking, aktif kullanımdaki 925 skill'in özgün sahiplerinden devralındığını ve 134.000 agent'a ulaştığını tespit etti; ekip bunu, kitlesel depo ele geçirmenin zaten yaşandığının kanıtı olarak sunuyor.
Yama durumu: ikisi düzeltildi, biri beklemede, biri terk edildi
Araştırmacılar açığı Mayıs ayında, dört agent'ın hepsi için çalışan kavram kanıtlarıyla buldular ve ertesi ay üreticileri bilgilendirdiler, diye yazıyor dev.to yazısı. Help Net Security'nin özetlediği gibi yanıtlar keskin biçimde ayrıştı.
Anthropic, Claude Code'u 2.1.179 sürümünde yamaladı. OpenAI, Codex'i 0.146.0 sürümünde yamaladı. Microsoft Copilot için bir yama yayınlamadı ve bu kullanıcıları şimdilik düzeltmesiz bıraktı. Google, Gemini CLI'ı yamalamak yerine kullanımdan kaldırmayı seçti ve kullanıcıları, eski eklenti sabitleme mekanizması olmadan geliştirilmiş daha yeni bir agent olan Antigravity'ye geçmeyi önerdi; bu da mevcut Gemini CLI kurulumlarının açıkta kalması anlamına geliyor.
Kritik bir ayrıntı: Eksik doğrulama agent'ta, marketplace'te değil. Marketplace tarafında yapılacak hiçbir değişiklik bu boşluğu tam olarak kapatamaz; tek eksiksiz çare yamalanmış bir agent'a güncellemek.
Şimdi ne yapmalı
Claude Code'u 2.1.179 veya sonrasına, Codex'i 0.146.0 veya sonrasına güncelleyin. Copilot kullanıcıları Microsoft'un yama duyurularını yakından izlemeli ve bu arada tanımadıkları eklentileri kurmaktan kaçınmalı. Gemini CLI kullanıcıları, mevcut araç için yama gelmeyeceğinden göç etmeyi değerlendirmeli.
Her durumda, kurulu eklentileri denetleyerek depolarının hâlâ özgün sahiplerinin kontrolünde olduğunu doğrulayın; özellikle yakın zamanda güncellenmemiş eski eklentilerde, SkillJacking verisinde ele geçirilen depoların çoğunun uyduğu profil.
Neden önemli
AI agent ekosistemi yazılım tedarik zinciri hikâyesini hızla yeniden sahneliyor: önce özellik çıkarma yarışı, büyüyen bir güven ilişkileri ağı ve sonra güvenin kendisinin saldırı yüzeyi olduğunun keşfi. Plugin ve skill marketplace'leri bu dönemin npm'i haline geliyor ve eski ders geri dönüyor: endpoint aldığını doğrulamadığı sürece incelenmiş, güvenli anlamına gelmez. Agent'lar getirilen kodun sabitlenmiş hash ile eşleştiğini kriptografik olarak doğrulayana kadar sürüm sabitleme bir garanti değil bir vaat ve üzerine kurulmuş her marketplace bu boşluğu miras alıyor.
- #security
- #ai-agents
- #supply-chain
- #developer-tools
- #claude-code