Doğrudan ve Dolaylı Prompt Enjeksiyonu Farkı
Doğrudan prompt enjeksiyonu (Direct Prompt Injection), saldırganın kötü niyetli talimatlarını bizzat kullanıcı girdisi olarak sisteme gönderdiği durumdur. Dolaylı prompt enjeksiyonunda ise saldırgan, talimatları bir web sayfası, e-posta gövdesi, PDF belgesi veya harici API yanıtı gibi dış kaynaklara gömer.
Kullanıcı bu farkın farkında bile olmayabilir: Yapay zeka ajanı kötü niyetli talimat içeren sayfayı özetlemek için yüklerken aslında saldırganın tuzağına düşer. Bu durum, savunmayı çok daha karmaşık hâle getirir çünkü saldırı yüzeyi tüm dış veri kaynaklarına yayılır.
Gerçek Dünya Saldırı Senaryoları
- check_circle Web gezgini ajan: Sayfanın HTML'sine gizlenmiş beyaz-üzerine-beyaz talimatlar, ajan tarafından okunarak hassas kullanıcı verilerinin dışarıya sızdırılmasına neden olabilir.
- check_circle E-posta asistanı: Saldırgan tarafından gönderilen sahte e-posta, gelen kutusunu işleyen LLM ajanını kurbanın adına başka bir adrese yanıt göndermesi için yönlendirebilir.
- check_circle Belge özetleyici: PDF içine gizlenmiş talimatlar, belgeyi özetleyen ajanı gizli bilgileri sistem dışına iletmek için kullanılabilir.
- check_circle Kod asistanı: Ajan tarafından indirilen bir üçüncü taraf kütüphane README'sine gömülmüş talimatlar, ajanın zararlı kod oluşturmasına yol açabilir.
OWASP LLM Top 10 ve Akademik Bağlam
OWASP (Open Web Application Security Project) tarafından hazırlanan LLM Uygulamaları için En Kritik 10 Güvenlik Riski listesinde prompt enjeksiyonu en üst sıralarda yer almaktadır. Greshake ve ekibinin 2023 tarihli "Not What You've Signed Up For: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection" başlıklı makalesi bu alanın akademik temelini oluşturmaktadır.
Makalede araştırmacılar; Microsoft Bing Chat, Claude, ChatGPT eklentileri ve çeşitli LLM tabanlı asistan uygulamalarına yönelik başarılı dolaylı enjeksiyon saldırılarını göstermiştir. Bu bulgular, sektörde ajanları daha katı yetki sınırlarıyla çalıştırma ve içerik izolasyonunu zorunlu kılma yönünde kapsamlı güvenlik tartışmalarını başlatmıştır.
Savunma Stratejileri
- check_circle İçerik izolasyonu: Sistem talimatları, kullanıcı girdileri ve dış veri kaynakları birbirinden ayrı tutulur; ajan her katmanı farklı güven düzeyinde işler.
- check_circle En az ayrıcalık ilkesi: Ajan yalnızca belirtilen görevi tamamlamak için gereken minimum izinlere sahip olur; hassas verilere ve kritik eylemlere erişim kısıtlanır.
- check_circle Çıktı doğrulama katmanı: Ajanın nihai çıktısı ve gerçekleştirdiği eylemler, bağımsız bir denetim mekanizması tarafından yapısal tutarlılık ve güvenlik açısından değerlendirilir.
- check_circle Sandbox ve geri alınabilir işlemler: Ajan eylemlerinin sandbox ortamında çalışması veya geri alınabilir işlemler olarak tasarlanması, başarılı bir saldırının hasarını sınırlandırır.
MCP ve Ajan Zinciri Riskleri
Model Context Protocol (MCP) ve benzer araç entegrasyon protokollerinin yaygınlaşmasıyla dolaylı prompt enjeksiyonunun saldırı yüzeyi genişlemektedir. Birden fazla araç veya ajandan oluşan zincirlerde, tek bir aracın dış içeriği işlemesi tüm zincirin tehlikeye girmesine yol açabilir: "ajan-A" kötü niyetli talimat içeren bir belge alırsa "ajan-B"ye veya kullanıcının sistemine yönelik eylem tetikleyebilir.
Anthropic, OpenAI ve Google gibi önde gelen yapay zeka şirketleri ile MITRE ATLAS gibi güvenlik kuruluşları, ajan zinciri güvenliğini aktif araştırma alanı olarak tanımlamıştır. Güvenli MCP sunucu tasarımı, istek kaynaklarının kimlik doğrulaması ve insan onaylı araç çağrısı adımları (human-in-the-loop) bu riskleri azaltmaya yönelik güncel yaklaşımlar arasındadır.
Sıkça Sorulan Sorular
- check_circle Dolaylı prompt enjeksiyonu ile jailbreak arasındaki fark nedir? Jailbreak, genellikle kullanıcının modelin güvenlik kısıtlamalarını doğrudan aşmaya çalışmasıdır. Dolaylı prompt enjeksiyonu ise dış içerikleri araç olarak kullanır ve çoğunlukla otonom ajanları hedef alır; kullanıcı saldırının farkında olmayabilir.
- check_circle Bu saldırıya karşı tam güvenlik mümkün müdür? Mevcut teknoloji ile tam koruma zordur. LLM'ler doğası gereği talimat ile veriyi kesin olarak ayırt edemez. Savunma derinlemesine (defense in depth) mimarisi ile risk azaltılabilir ancak tamamen ortadan kaldırılamaz.
- check_circle Hangi uygulamalar risk altındadır? Dış kaynaklardan içerik okuyan, web'de gezinen, e-posta işleyen veya dosyalara erişen her LLM tabanlı ajan risk altındadır. Özellikle kullanıcı adına eylem gerçekleştiren ajanlar (dosya silme, mesaj gönderme vb.) en yüksek risk grubundadır.
- check_circle Bu saldırı tespit edilebilir mi? Tespit güçtür; zira talimatlar genellikle meşru görünen içeriğe gömülüdür. Günlük kaydı (logging), anomali tespiti ve çıktı izleme saldırı sonrası tespiti kolaylaştırabilir ancak gerçek zamanlı engelleme hâlâ araştırma aşamasındadır.
- check_circle MCP protokolü bu riski nasıl etkiler? MCP, LLM ajanlarına harici araçlara ve veri kaynaklarına yapılandırılmış erişim sağlar. Bu, saldırı yüzeyini genişletir: MCP üzerinden erişilen her dış kaynak potansiyel enjeksiyon noktasına dönüşebilir. Güvenli MCP sunucuları, gelen veriyi ayrıcalıklı talimatlardan sıkı biçimde ayırmalıdır.
- check_circle Bu saldırılara karşı hangi araçlar geliştirilmektedir? Microsoft Prompt Shields, NVIDIA NeMo Guardrails ve çeşitli açık kaynak çerçeveler (Rebuff, llm-guard) bu saldırılara karşı filtreleme ve tespit sağlamaktadır. Anthropic ve OpenAI ise sistem prompt kısıtlama katmanları ve araç çağrısı onay mekanizmaları gibi yapısal savunmalar entegre etmektedir.