Yapay zeka kodlama ajanları (Claude Code, OpenAI Codex, OpenClaw gibi) için geliştirilen eklenti skill'leri, kötü niyetli saldırganlar için yeni bir hedef haline geldi. Hong Kong Bilim ve Teknoloji Üniversitesi araştırmacılarının yayımladığı yeni bir çalışma, bu skill'leri taramak için kullanılan statik tarayıcıların basit değişikliklerle kolayca atlatılabildiğini ortaya koyuyor. Araştırmacıların geliştirdiği SkillCloak adlı araç, zararlı skill'leri tarayıcılardan gizlerken aynı işlevselliği koruyor. En güçlü yöntemleri, test edilen tüm tarayıcıları %90'ın üzerinde bir başarıyla atlatırken, ekip ayrıca bu gizlenmiş skill'leri yakalayan bir çalışma zamanı denetleyicisi de geliştirdi.
Skill'ler, genellikle bir Markdown talimat dosyası ve birkaç betikten oluşan küçük paketlerdir. Ajanlar bu paketleri yükleyerek yeni bir yetenek kazanır. Bir skill, aynı dosya bütünüyle farklı ajanlarda çalışabilir ve ajanın sahip olduğu erişimle (dosyalarınız, terminaliniz, kayıtlı şifreleriniz) hareket eder. Kötü niyetli bir skill, kimlik bilgilerinizi çalabilir, kaynak kodunuzu kopyalayabilir veya arka kapı kurabilir. Genel pazaryerlerinde listelenen skill'lerin çoğu, çok az denetimden geçmiş yabancılar tarafından yüklenir.
Şu ana kadar ana savunma mekanizması, skill tarayıcılarıydı. Bu tarayıcılar, skill'in dosyalarını yüklemeden önce okur ve tehlikeli görünenleri engeller. Ancak 'Cloak and Detonate' başlıklı makale, bu savunmanın gerçekte ne kadar dayanıklı olduğunu test ediyor. Sonuçlar pek iç açıcı değil. Daha önce The Hacker News, araştırmacıların sahte bir skill'i tüm tarayıcılardan geçirmeyi başardığını ve bu skill'in on binlerce ajana ulaştığını bildirmişti. Bu yeni çalışma, bunu sistematik ve ölçeklenebilir bir şekilde yapmanın yolunu sunuyor.
SkillCloak iki farklı yöntem kullanıyor. Hafif yöntem, tarayıcının odaklandığı şüpheli baytları yeniden yazıyor: bir karakteri başka bir alfabeden benzer görünümlü bir karakterle değiştirmek veya bayrak bir komutu yeni satıra bölmek gibi. Böylece tarayıcının deseni eşleşmez ama komut hala çalışır. Daha ağır yöntem ise kendini açan paketleme (self-extracting packing) olarak adlandırılıyor. Bu yöntemde, tüm zararlı yük, tarayıcının atladığı bir dizine (örneğin .git/) taşınıyor. Zararsız görünen bir kod çözücü, skill'i yalnızca ajan çalıştırdığında yeniden oluşturuyor. Tarayıcılar, zaman kazanmak ve yanlış alarmları azaltmak için bu tür dizinleri atlar, işte bu yöntem tam da bu kör noktayı kullanıyor.
Sekiz farklı tarayıcı ve ClawHub adlı bir pazaryerinden alınan 1.613 gerçek zararlı skill üzerinde yapılan testlerde, paketleme yöntemi her bir tarayıcıyı %90'ın üzerinde, çoğunu ise %99'un üzerinde atlattı. Hafif yeniden yazma yöntemi ise çoğu tarayıcıda %80'in üzerinde, bir tarayıcıda ise %96 başarı elde etti. Üstelik bu gizleme işlemi saldırgana neredeyse hiçbir maliyet getirmiyor: Claude Code ve OpenAI Codex'te gizlenmiş skill'ler orijinalleri kadar iyi çalıştı.
Teknik Analiz
Görünüşün taklit edilebilmesi nedeniyle araştırmacılar, bunun yerine davranışı incelemeyi öneriyor. SkillDetonate adını verdikleri araç, skill'i bir kum havuzunda (sandbox) çalıştırıyor ve işletim sistemi düzeyinde neler yaptığını izliyor: ne okuduğu, ne yazdığı, verileri nereye gönderdiği. İki fikir bu aracı ajanlar için etkili kılıyor: Hassas verileri görünüşüne göre değil, akışına göre takip ediyor; böylece base64 veya şifreleme onu yanıltmıyor. Ayrıca, bir skill'in yalnızca çalışma zamanında oluşturduğu talimatları çalıştırıyor; bu da paketleme yönteminin yükünü tam olarak gizlediği nokta. Kontrollü testlerde, SkillDetonate saldırıların %97'sini yakalarken, güvenli skill'lerin yalnızca %2'sini yanlışlıkla işaretledi. Bu, yendiği tarayıcılardan daha düşük bir yanlış alarm oranı. Gerçek dünyadaki zararlı skill'lerde ise %87 başarı elde etti. Ancak yöntemin bir dezavantajı var: Skill başına birkaç dakika süren tarama süresi, tarayıcıların birkaç saniyesine kıyasla oldukça yavaş.
Tüm bunlar teorik değil. Kamuya açık pazaryerleri, tarayıcıların durduramadığı zararlı skill'lerle dolu. Bitdefender, bir pazaryerinde kontrol ettiği skill'lerin yaklaşık %17'sinin gizli kötü amaçlı kod içerdiğini buldu. Koi Security, ClawHavoc adlı tek bir kampanyada 341 skill tespit etti; daha sonra bu sayı 824'e yükseldi. Bazı skill'ler, makalenin test ettiği yöntemlerin aynısını kullanıyor. Örneğin, Unit 42 tarafından bulunan beş gizlenmiş skill'den biri olan omnicogg, README dosyasını 22 MB'lık gereksiz veriyle doldurarak tarayıcının boyut sınırını aştı. Diğer iki skill Mac şifre hırsızı, ikisi ise finansal tavsiyeleri manipüle ederek bağlı kuruluş bağlantıları ve meme-coin lansmanları için kullanıldı.
Uzmanların Görüşleri
Çalışma zamanı açığı, skill pazaryerlerinin dışında da kendini gösteriyor. Temiz görünen bir GitHub deposu, Claude Code'u geliştiricinin kendi makinesinde bir ters kabuk (reverse shell) açmaya yönlendirdi. Kötü amaçlı kod hiçbir zaman depoda bulunmuyordu; kurulum betiği, onu çalışma zamanında bir DNS kaydından çekiyordu. Bu nedenle statik taramanın yakalayacak bir şeyi yoktu. Mozilla'nın 0DIN ekibi bu zinciri takip etti. Araştırmacılar, bu çalışmanın bir ön baskı olduğunu ve henüz hakem denetiminden geçmediğini belirtiyor. Kodlarını açık kaynak olarak yayımladılar. Gerçek dünyada bu tür paketleme hilelerini büyük ölçekte kullanan saldırganlar henüz tespit edilmiş değil; ancak bu çalışma, gelecekteki saldırıların ne kadar sofistike olabileceğini gösteriyor.
Kaynak: thehackernews.com