« Tüm yayınlar

GhostApproval: AI kodlama asistanlarında sembolik link açığı

Araştırmacılar, 6 büyük AI kodlama asistanında sembolik link tabanlı bir güvenlik açığı buldu. Onay ekranları gerçek hedefi gizleyerek kullanıcıyı yanıltıyor.

Güvenlik araştırmacıları, GhostApproval adını verdikleri sistematik bir zafiyet keşfetti: Amazon Q Developer, Anthropic Claude Code, Augment, Cursor, Google Antigravity ve Windsurf gibi altı önde gelen AI kodlama asistanının tamamında, kötü niyetli bir depo içindeki sembolik link (symlink) kullanılarak ajan çalışma alanının dışındaki dosyalara -örneğin ~/.ssh/authorized_keys- yazma işlemi yaptırılabiliyor. Bu klasik CWE-61 zafiyeti, bazı araçlarda kullanıcıya gösterilen onay diyaloğunun gerçek hedefi gizlemesiyle (CWE-451) birleşince, kullanıcı masum bir yerel değişikliği onayladığını sanırken aslında sistem dosyalarına yazma işlemine izin vermiş oluyor.

En çarpıcı örnek Claude Code'da görüldü: ajanın iç akıl yürütmesi hedef dosyanın aslında bir zsh yapılandırma dosyası olduğunu açıkça fark etmesine rağmen, kullanıcıya sunulan onay ekranı sadece zararsız görünen bir dosya adını gösteriyordu. Bu durum, insan denetimini (human-in-the-loop) anlamlı bir onaydan çıkarıp bir kağıt üzerinde formalite haline getiriyor.

Bulgular altı satıcıya da bildirildi. AWS, Cursor ve Google sorunu hızla düzeltti; ikisi bildirimi aldığını doğruladı ancak sessiz kaldı; Anthropic ise durumu 'tehdit modelimizin dışında' diyerek reddetti. Amazon Q'da ise ajan, kullanıcı onayından önce dosyaya yazıp ardından yalnızca bir 'geri al' seçeneği sunuyordu - bu da onay mekanizmasının aslında işlevsiz kaldığını gösteriyor.

Bu araştırma, hızla piyasaya sürülen AI kodlama araçlarında güven sınırlarının (trust boundary) ne kadar kırılgan olabileceğini ortaya koyuyor. Mühendisler için mesaj net: ajan tabanlı araçlarda kullanıcı onayı, ajanın gerçekte ne yaptığını doğru şekilde yansıtmadığı sürece güvenlik garantisi sağlamıyor.