AI Destekli Uygulamalara Yönelik Saldırıların AI Kill Chain Çerçevesi ile Modellenmesi

Yapay zeka destekli uygulamalar, geleneksel güvenlik modellerinin tam olarak yakalayamadığı yeni saldırı yüzeyleri oluşturuyor. Özellikle bu otonom sistemlerin bağımsızlık kazandığı düşünülürse, bu durum daha da önem kazanıyor. Gelişen saldırı alanı için belirleyici ilke nettir: Veri enjeksiyonu varsayımını kabul edin. Ancak bunun etkili savunmalara dönüşmesi genellikle karmaşık bir süreçtir.

Siber Kill Zinciri güvenlik çerçevesi, saldırganların nasıl hareket ettiğini tanımlar. NVIDIA’da, düşmanların AI uygulamalarını nasıl etkisiz hale getirdiğini göstermek ve savunucuların zinciri kırabileceği yerleri gösteren AI Kill Zincirini geliştirdik. Bu çerçeve, AI kullanan saldırganların eylemlerine odaklanmak yerine, AI sistemlerine yönelik saldırıları öne çıkarıyor.

Bu blog yazısında aşamaları belirtecek, örnekler verecek ve bunu diğer güvenlik modelleriyle ilişkilendireceğiz.

AI Kill Zinciri saldırıları nasıl aşamalara ayırır?

AI Kill Zincirimiz, recon, poison, hijack, persist ve impact olmak üzere beş aşamadan oluşur. Aşağıdaki bölümde her aşamayı derinlemesine inceleyeceğiz.

Recon aşamasında ne olur?

Recon aşamasında, saldırgan sistemi haritalayarak saldırısını planlar. Bu noktada bir saldırganın sorduğu temel sorular şunlardır:

  • Hangi verilerim AI modeline girebilir?
  • Uygulamanın kullanabileceği hangi araçlar, Model Bağlam Protokolü (MCP) sunucuları veya diğer işlevler istismar edilebilir?
  • Uygulamada hangi açık kaynak kütüphaneler bulunuyor?
  • Sistem koruma mekanizmaları nerelerde uygulanıyor ve nasıl çalışıyor?
  • Uygulama hangi tür sistem belleği kullanıyor?

Recon genellikle etkileşimlidir. Saldırganlar, sistemin davranışlarını gözlemlemek için sistemi probe ederler. Sistemin davranışlarına dair aldıkları gözlemler, bir sonraki adımlarını daha doğru bir şekilde belirlemesine yardımcı olur.

Defansif öncelikler:

  1. Erişim kontrolü: Sisteme erişimi yetkili kullanıcılarla sınırlayın.
  2. Bilgi minimizasyonu: Hata mesajlarını sterilize edin, sistem istemlerini ve bileşen tanımlayıcılarını çıktılardan çıkarın.
  3. Probe davranışlarını izleme: Teknik olarak anormal girişler veya erişim desenlerini algılamak için telemetri uygulayın.
  4. Modelleri güçlendirin: Modelleri, transfer saldırılarına ve hassas bilgi edinmeye karşı dirençli hale getirin.

Recon aşamasını erken boşa çıkarmak, saldırganların, Kill Zincirinin sonraki aşamalarında gerçekleştirecekleri doğru saldırılar için gerekli bilgiye erişmelerini önler.

Saldırganlar, AI sistemlerini bu aşamada nasıl zehirler?

Zehrleme aşamasında, saldırganın amacı kötü niyetli girdi parçalarını AI modelinin işlem göreceği yerlere yerleştirmektir. İki ana teknik yaygındır:

  • Doğrudan prompt enjeksiyonu: Saldırgan kullanıcıdır ve normal kullanıcı etkileşimleri yoluyla girdiler sağlar. Etki genellikle saldırganın oturumuyla sınırlıdır.
  • Dolaylı prompt enjeksiyonu: Saldırgan, uygulamanın diğer kullanıcıların adına beslediği verileri zehirler.

Metin tabanlı prompt zehirlemesi en yaygın tekniktir. Ancak diğer teknikler de vardır:

  • Eğitim verisi zehirlenmesi: Modellerin ince ayar yapmak veya eğitmek için kullanılan verilere kirli veriler eklemek.
  • Karşıt örnek saldırıları: Girdilerin bit düzeyinde manipülasyonu (görüntüler, sesler vb.) ile yanlış sınıflandırma sağlamak.
  • Görsel yükler: Model çıktısını fiziksel bağlamlarda etkileyen kötü niyetli semboller veya veriler (örneğin otonom araçlarda).

Zehrlemeyi bozma öncelikleri:

  • Tüm verileri sterilize edin: İç sistemlerinizin güvenli olduğunu varsaymayın. Kullanıcı girdileri, RAG kaynakları ve API akışları için koruma önlemleri uygulayın.
  • Girdileri yeniden şekillendirin: İçeriği, saldırgan tarafından hazırlanmış yükleri bozacak şekilde dönüştürün.
  • Veri beslemesini kontrol edin: Herhangi bir kamuya yazılan veri kaynaklarını beslemeden önce sterilize edin.
  • Beslemeyi izleme: Beklenmedik veri artışlarını, anormal gömme değerlerini veya besleme borularına yüksek frekansta katkıları izleyin.

Zehrleme başarılı olduysa, saldırganlar AI modelinin davranışını nasıl ele geçirir?

Ele geçirme aşaması, saldırının aktif hale geldiği noktadır. Zehirleme aşamasında başarılı bir şekilde yerleştirilen kötü niyetli girdiler, model tarafından işlenir ve saldırganın hedeflerine hizmet edecek şekilde model çıktısını ele geçirir. Yaygın ele geçirme örüntüleri şunlardır:

  • Saldırganın kontrol ettiği araç kullanımı: Modelin belirli araçları saldırgan tarafından tanımlanan parametrelerle çağırmasını sağlamak.
  • Veri sızdırma: Model bağlamından hassas verileri çıkışlara kodlamak.
  • Yanlış bilgi üretimi: Kasten yanlış veya yanıltıcı yanıtlar oluşturmak.
  • Bağlama özel yükler: Hedeflenen kullanıcı bağlamında yalnızca kötü niyetli davranışları tetiklemek.

Otonom süreçlerde, ele geçirme daha da etkili hale gelir. LLM’ye verilen artan otonomi, saldırganların yalnızca çıktılar değil, aynı zamanda modelin hedeflerini de manipüle etmesine olanak tanır.

Ele geçirmeyi bozmak için öncelikler:

  • Güvenilir ve güvenilmeyen verileri ayırın: Saldırgan kontrolündeki ve hassas verilerin aynı model bağlamında işlenmesini engelleyin.
  • Model dayanıklılığını güçlendirin: Saldırı tekniklerine dirençli hale getirmek için karşıt eğitim ve sağlam RAG kullanın.
  • Araç çağrılarını bağlama göre doğrulayın: Her araç çağrısının orijinal kullanıcı talebiyle uyumlu olduğundan emin olun.
  • Çıktı katmanı koruma önlemleri uygulayın: Model çıktılarının amacını, güvenliğini ve alt akışı etkisini kontrol edin.

Ele geçirme, saldırganın işlevsel kontrol kazandığı kritik noktadır. Zinciri burada kırmak, aşağı akış sistemlerini korur; zehirleme tam olarak önlenmemiş olsa bile.

Saldırganlar, etkilerini oturumlar ve sistemler arasında nasıl sürdürülebilir hale getirir?

Devamlılık, saldırganların tek bir ele geçirmeyi sürekli bir kontrol haline getirmelerini sağlar. Zararlı yükler kalıcı depolama alanlarına yerleştirilerek, etkilerinin kullanıcı oturumları arasında sürmesini garanti eder. Devamlılık yolları, uygulamanın tasarımına bağlıdır:

  • Oturum geçmişi devamlılığı: Birçok uygulamada, enjekte edilmiş komutlar, aktif oturum boyunca etkin kalır.
  • Oturumlar arası bellek: Kullanıcıya özel bellekleri olan sistemlerde, saldırganlar, oturumlar arasında hayatta kalabilen yükler gömme yeteneğine sahip olabilirler.
  • Paylaşılan kaynak zehirlenmesi: Saldırganlar, çoklu kullanıcıları etkilemek için paylaşılan veritabanlarını hedef alır.
  • Otonom plan devamlılığı: Otonom varlıklarda, saldırganlar, saldırgan tanımlı hedeflerin takip edilmesini sağlamak için varlığın hedeflerini ele geçirir.

Devamlılık, saldırganların ele geçirilmiş durumlardan sürekli olarak yararlanmalarını sağlar ve aşağı akışta etki olasılığını artırır. Otonom sistemlerde, sürekli yükler saldırgan kontrolündeki süreçler haline dönüşebilir.

Devamlılığı bozma öncelikleri:

  • Önce sterilize edin: Tüm verilere yönelik koruma önlemleri uygulayın.
  • Kullanıcıya görünür bellek kontrolleri sağlayın: Kullanıcıların depolanmış anılarını görmesine, yönetmesine ve silmesine imkan tanıyın.
  • Bağlamsal bellek hatırlama: Anıların yalnızca güncel kullanıcı talebiyle ilgili olduğunda geri çağrılmasını sağlayın.
  • Veri akışı ve denetliliğini zorunlu kılın: Kaynakların yaşam döngüsü boyunca izlenmesini sağlayın.
  • Yazma işlemlerini kontrol edin: Paylaşılan sistem durumunu etkileyen veri yazımları için insan onayı veya daha güçlü sterilizasyon gereksinimleri getirin.

Devamlılık, saldırganların tek anlık bir saldırıdan sürekli bir varlık haline geçişini sağlar ve çoklu oturumları etkileyebilir.

Saldırganlar, kontrol alanlarını genişletmek için nasıl iter veya pivot yapar?

Basit uygulamalarda, tek bir ele geçirme saldırı yolu sona ermiş olabilir. Fakat agentic sistemlerde, yapay zeka modellerinin otonom olarak plan yapabilmesi, karar alabilmesi ve eylemde bulunabilmesi sayesinde, saldırganlar bir geri bildirim döngüsü oluşturur: iterasyon ve pivot. Bir saldırgan başarılı bir şekilde model davranışını ele geçirdikten sonra:

  • Yanal çevir: Diğer kullanıcıları veya iş akışlarını etkilemek için ek veri kaynaklarını zehirler.
  • Plan üzerinde tekrarlama: Tamamen otonom sistemlerde, saldırganlar modelin hedeflerini değiştirerek, kendi belirledikleri hedeflerle değiştirebilirler.
  • Komut ve kontrol kurma (C2): Her iterasyonda saldırgan kontrolündeki yeni direktifleri almak için yükler yerleştirir.

Bu döngü, tek bir ihlali sistematik bir istismar haline dönüştürür. Her iterasyon, saldırganın konumunu ve etkisini pekiştirir, bu da sistemi daha zor korunur hale getirir.

Iterasyon/pivotu bozma öncelikleri:

  • Araçlara erişimi kısıtlayın: Belirli araçların, API’lerin veya veri kaynaklarının, özellikle güvenilmeyen bağlamlarda kullanılmasına izin vermeyin.
  • Ajanda planlarını sürekli doğrulayın: Eylemlerin, kullanıcı niyetine uygun kalmasını sağlamak için koruma önlemleri uygulayın.
  • Güvenilmeyen verileri sürekli seyreltiyin: Güvenilmeyen girdilerin, güvenilir bağlamları veya eylemleri etkilemesini önleyin.
  • Anomali davranışları izleyin: Ajandanın beklenen görev akışlarından sapmaları, yetki artırmaları veya alışılmadık kaynaklara erişim sağlaması durumlarını tespit edin.
  • Pivotalarda insan kontrolü uygulayın: Ajandanın operasyonel kapsamını veya kaynak erişimini değiştirecek eylemler için manuel onay gerektirin.

Iterasyon/pivot, saldırganın etkisinin çoğul hale gelmesine ve otonom sistemlerdeki kontrol noktalarını karmaşıklaştırmasına neden olur. Bu döngüyü kırmak, küçük ele geçirmelerin büyük çaplı bir ihlale dönüşmesini engellemek için önemlidir.

Compromised AI sistemleriyle saldırganlar hangi önemli sonuçları elde eder?

Etkileşim, saldırganın hedeflerinin gerçeğe dönüşmesi sürecidir. Geri döngü sırasında, bir model çıktısının gerçek dünyada mevcut sistemler, veriler veya kullanıcılar üzerinde etkiler yaratması mümkün hale gelir:

  • Durum değiştirici eylemler: Dosyaları, veritabanlarını veya sistem yapılandırmalarını değiştirmek.
  • Finansal işlemler: Ödemeleri onaylamak, transferleri başlatmak veya finansal kayıtları değiştirmek.
  • Veri sızıntısı: Hassas verileri, URL’ler veya API çağrıları aracılığıyla sistem dışına kodlamak.
  • Harici iletişimler: Güvenilir kullanıcıları taklit ederek e-postalar, mesajlar veya komutlar göndermek.

AI modelinin kendiliğinden bir etki yaratması zordur; etkiler, çıktılar aracılığıyla gerçekleşir. Güvenlik, modelin ötesine geçmeli ve çıktının altyapı süreçlerini kontrol etmelidir.

Etkiyi azaltma öncelikleri:

  • Hassas eylemleri sınıflandırın: Hangi araç çağrılarının, API’lerin veya eylemlerin dış durumu değiştirme veya verileri açığa çıkarma yeteneğine sahip olduğunu belirleyin.
  • Hassas eylemleri koruma önlemleri ile sarın: Uygulamadan önce insan onayı veya otomatik politika kontrolleri zorunlu kılın.
  • En düşük ayrıcalık ilkesiyle tasarlayın: Araçlar, kötüye kullanımı minimize etmek ve saldırı yüzeylerini azaltmak için dar kapsamda olmaları gerekmektedir.
  • Çıktıları sterilize edin: Beklenmedik eylemleri tetikleyebilecek yükleri kaldırın.
  • İçerik Güvenlik Politikalarını (CSP) kullanın: Kötü niyetli URL’ler veya açık kaynak saldırıları gibi ön uç bazlı sızıntı yöntemlerini engelleyin.

Altyapı kontrolündeki sağlam önlemler, etkilenen alanları sınırlamakta etkili olabilir.

AI Kill Zinciri gerçek bir uygulama örneğine nasıl uygulanabilir?

Bu bölümde, AI Kill Zinciri’ni basit bir Retrieval-Augmented Generation (RAG) uygulamasını analiz etmek için kullanacağız ve bunun veri sızıntısına nasıl yol açabileceğini göstereceğiz. Her adımda güvenliğini nasıl geliştirebileceğimiz üzerinde duracağız.

Architecture diagram of a simple Retrieval-Augmented Generation (RAG) application. Shows how user queries pass through embedding, reranking, and LLM components connected to a vector database. Highlights how attackers can poison data sources, hijack outputs, and trigger exfiltration as the RAG pipeline processes inputs.
Şekil 2. Basit bir RAG uygulamasının mimarisi

Bir saldırganın AI Kill Zinciri’ndeki yolculuğu şu şekilde gelişebilir:

  • Recon: Saldırgan, sistemde üç modelin kullanıldığını görünce, zafiyetleri keşfetmek için açık kaynak belgelerini ve kullanıcı belgelerini inceler. Ayrıca, sistemi etkileşimde bulunarak model davranışını test eder.
    • Saldırgan, vektör veritabanında değerli bilgilerin bulunduğunu ancak erişim kontrolü ortamında olduğunu keşfeder. Ayrıca, sistemin hata ayıklama sırasında kullanıcı forum yorumlarını topladığını fark eder. Yukarıdaki verilere zarar vermek için inline stil değişiklikleri yaparak veri sızıntısına yol açabilecek bir sistem açığı bulur.
  • Zehrleme: Recon aşamasından edindiği bilgilerle, saldırgan bir forum gönderisi oluşturur. Bu gönderide, bir veri sızıntısı yükü içeren bir prompt enjeksiyonu yerleştirir. Bu gönderi daha sonra vektör veritabanına eklenir.
    • Önlemler: Kamuya açık yazılabilir veri kaynaklarının beslemesi öncesinde sterilize edilmesi gerekir. NeMoGuard-JailbreakDetect gibi prompt enjeksiyon tespit araçları eklemek, bu kaynaklar aracılığıyla enjeksiyonu zorlaştırabilir.
  • Ele Geçirme: Farklı bir kullanıcı, saldırganın forum gönderisi ile ilgili bir soru sorduğunda, bu gönderi vektör veritabanı tarafından döndürülür ve birlikte eklenen gizli yük ile LLM’ye gönderilir. Model bu yükü çalıştırarak eline geçen verileri sızdırmak için hazırlanır.
    • Önlemler: Güvenilir ve güvenilmeyen verilerin işlenmesini sağlamaktır. Eğer güvenilmeyen veriler, güvenilir iç verilerden ayrı bir işlemde işlenmiş olsaydı, LLM bu iç verileri ele geçirip sızdırma yapamazdı.
  • Devamlılık: Bu durumda, devamlılık otomatik olarak gerçekleşmektedir. Zehirlenmiş veri vektör veritabanında saklandıkça, diğer sorgular onu tetikleyerek tekrar kullanılabilir.
    • Önlemler: Veri ayrımı birlikte, dahil olan kaynakların denetim kaydını tutmak, saldırının etkisini azaltabilir ve kirli verilerin tespit edilip çıkartılmasına yardımcı olabilir.
  • Etkili Olma: LLM cevabı, LLM tarafından oluşturulan veri sızıntısı yükünü içeren bir isteği tetikler. Bu noktada veri, saldırganın kontrolündeki bir sunucuya sızdırılır.
    • Önlemler: LLM üretimi çıktılarında herhangi bir URL ve benzeri bilgiler kaldırılmalıdır. Yüksek koruma önlemleri, yalnızca güvenilir verileri dışarıya açarak olası veri sızıntılarını önleyebilir.

Bu uygulama yalnızca “Seviye 1” bir ajans olduğu için, iterasyon/pivot adımı kullanılmamaktadır.

Sonuç

Yapay zeka uygulamalarını güvence altına almak, AI’nın saldırı yüzeyini nasıl değiştirdiğini anlamayı ve otonomi seviyeleriyle ölçeklenebilen çok katmanlı savunmalar inşa etmeyi gerektirir. Kurumlar LLM‘leri, RAG sistemlerini ve otomatize iş akışlarını dağıttıkça, saldırganlar da bu AI destekli sistemleri istismar etmek için yöntemlerini sürekli olarak geliştiriyor.

AI Kill Zinciri, bu saldırıların aşama aşama nasıl geliştiğine dair açık ve uygulanabilir bir yol sunar. Takımların, genel “prompt enjeksiyonu” endişelerinin ötesine geçip, saldırganların kontrolünü nasıl ve neden artıracaklarını görmelerine yardımcı olur. NVIDIA olarak, NeMo Guardrails, Jailbreak Detection, yapılandırma ve mimari en iyi uygulamaları gibi birçok savunmayı uyguluyoruz.

Kaynak

Nvdia Blog

Exit mobile version