İçeriğe atla
0 XP 0
← Blog
Yapay Zeka Güvenliği

OWASP LLM Top 10 Nedir? 2025 Sürümünün On Maddesi Açıklaması

OWASP LLM Top 10'un 2025 sürümündeki on riskini, Altay Kargo örneğiyle ve savunma odaklı öneriler eşliğinde sade bir dille Türkçe olarak anlatıyoruz.

AltaySec Akademi7 dk okuma

OWASP LLM Top 10, büyük dil modeli (LLM) tabanlı uygulamalarda en sık görülen on güvenlik riskini sıralayan, OWASP GenAI Security Project tarafından derlenen referans listedir. Klasik OWASP Top 10 web uygulaması risklerini nasıl biliyorsan, bu liste de aynı mantıkla LLM dünyasına özgü riskleri (talimat manipülasyonu, veri sızıntısı, zehirlenmiş eğitim verisi, aşırı yetkilendirilmiş ajanlar) bir araya getirir. Bu yazıda listenin 2025 sürümündeki on maddesini, saldırı yükü paylaşmadan, kavram ve savunma odaklı anlatıyoruz.

OWASP LLM Top 10 Nedir?

Liste, güvenlik ekiplerinin ve geliştiricilerin ortak bir dil kullanması için tasarlandı. Bir kurum "LLM güvenliğine bakıyoruz" dediğinde, bu cümle çok muğlak kalabilir; ama "LLM01 ve LLM06 risklerini önceliklendirdik" dediğinde, hem güvenlik ekibi hem geliştirici ekip aynı çerçeveden konuşur. Liste düzenli aralıklarla güncellenir, çünkü LLM tabanlı ürünlerin mimarisi (retrieval-augmented generation, ajan tabanlı araç çağırma, çok modelli hatlar) hızla değişiyor ve yeni risk kalıpları ortaya çıkıyor.

Listenin en önemli özelliği, riskleri saf teknik bir bakış açısından değil, gerçek olay verisinden ve sektör pratiğinden süzerek oluşturmasıdır. Bu yüzden liste, akademik bir taksonomi olmaktan çok, güvenlik ekiplerinin denetim ve öncelik listesinde kullandığı pratik bir kontrol listesidir.

Liste, açık bir topluluk sürecinde, dünyanın farklı yerlerinden güvenlik araştırmacısının katkısıyla oluşturulur. Bir madde eklenmeden veya kaldırılmadan önce, sektörde gerçekten kaç kez o riskin bir olaya dönüştüğü, riskin ne kadar yaygın olduğu ve savunmasının ne kadar zor olduğu tartışılır. Bu süreç, listeyi güncel tutar ama aynı zamanda her sürüm arasında bazı maddelerin adının veya kapsamının değişmesine de yol açar; bu yüzden bir kurumun hangi sürümü referans aldığını net biçimde belirtmesi önemlidir.

Listenin On Maddesi

Aşağıda 2025 sürümünün on maddesini, her birini kısa bir açıklamayla veriyoruz. Amaç bir saldırı tarifi vermek değil, her riskin ne anlama geldiğini ve neden önemli olduğunu göstermek.

  • LLM01: Prompt Injection. Modelin işlediği metnin içine, gerçek talimatları değiştirmeyi amaçlayan komutlar yerleştirilmesi. Doğrudan (kullanıcı girdisi) veya dolaylı (üçüncü taraf içerik üzerinden) olabilir.
  • LLM02: Sensitive Information Disclosure. Modelin, eğitim verisinde veya bağlamında bulunan kişisel veri, ticari sır veya iç sistem bilgisini yanıtlarında istemeden ifşa etmesi.
  • LLM03: Supply Chain. Modelin, eğitim verisinin, eklentilerin veya üçüncü taraf kütüphanelerin tedarik zincirinde bulunan zayıflıklar; örneğin güvenilmeyen bir model deposundan indirilen ağırlıklar veya kötü niyetli bir eklenti.
  • LLM04: Data and Model Poisoning. Eğitim, ince ayar (fine-tuning) veya embedding verisine kasıtlı olarak bozuk veya yanıltıcı veri karıştırılarak modelin davranışının manipüle edilmesi.
  • LLM05: Improper Output Handling. Modelin ürettiği çıktının, bir web sayfasına, bir komut satırına veya bir veritabanı sorgusuna doğrulanmadan aktarılması; bu durum XSS, komut enjeksiyonu gibi klasik zafiyetlere kapı aralar.
  • LLM06: Excessive Agency. Modele veya modelin bağlı olduğu ajana, görevi için gereğinden fazla yetki, araç erişimi veya otonomi tanınması.
  • LLM07: System Prompt Leakage. Modelin sistem talimatının (iç kurallar, gizli iş mantığı) kullanıcıya sızdırılması; bu sızıntı başka saldırıların da önünü açabilir.
  • LLM08: Vector and Embedding Weaknesses. Retrieval-augmented generation (RAG) mimarilerinde kullanılan vektör veritabanlarının ve embedding süreçlerinin yanlış yapılandırılması veya zehirlenmesi.
  • LLM09: Misinformation. Modelin, gerçek görünen ama yanlış veya uydurma (halüsinasyon) bilgi üretmesi ve bu bilginin doğrulanmadan kullanılması.
  • LLM10: Unbounded Consumption. Modelin kaynak kullanımının (istek sayısı, token, hesaplama) sınırlandırılmaması; bu hem maliyet hem de hizmet dışı bırakma (denial of service) riski doğurur.

Bu on madde birbirinden bağımsız değildir. Örneğin başarılı bir prompt injection (LLM01), sistem talimatının sızmasına (LLM07) veya modele gereğinden fazla yetki verildiğinde (LLM06) ciddi bir aksiyona dönüşebilir. Bu yüzden liste, maddeleri tek tek değil, birlikte değerlendirmeyi önerir.

Listeyi okurken dikkat etmen gereken bir başka nokta, maddelerin hepsinin aynı katmanda yaşamadığıdır. Bazı maddeler (LLM01, LLM05, LLM06) çalışma zamanında, uygulama kullanılırken ortaya çıkar; bazıları (LLM03, LLM04) ise tedarik zinciri ve eğitim aşamasında, ürün henüz kullanıcıya ulaşmadan önce oluşur. Bu ayrım önemlidir, çünkü her katmanın kontrol noktası farklıdır: çalışma zamanı riskleri için izleme ve girdi doğrulama gerekirken, tedarik zinciri riskleri için model ve veri kaynağının kökenini doğrulamak gerekir.

Neden Önemli?

Kurumlar LLM'i ürüne bağlarken genellikle önce hız ve özellik odaklı ilerler, güvenlik değerlendirmesi geriye kalır. OWASP LLM Top 10, bu sırayı tersine çevirmek için bir kontrol noktası sunar: bir özelliği canlıya almadan önce on maddeye karşı hızlı bir değerlendirme yapmak, sonradan gelecek büyük bir olay maliyetinden çok daha ucuzdur. Ayrıca liste, denetim ve uyum (compliance) süreçlerinde de referans olarak kullanılıyor; bazı kurumlar tedarikçilerinden LLM güvenlik değerlendirmelerini bu listeye göre raporlamasını istiyor.

AI güvenliği alanında çalışan bir ekip için bu liste, hangi konuya önce eğilmesi gerektiğini gösteren bir pusuladır. Liste olmadan güvenlik çalışması dağınık ilerler, her ekip kendi önceliğini kendi seçer; liste ile birlikte ortak bir öncelik sırası oluşur.

Ayrıca liste, bir ürünün güvenlik olgunluğunu ölçmek için de kullanılabilir. Bir ekip, on maddenin her birine karşı "bu riski nasıl azaltıyoruz" sorusunu yazılı olarak cevaplayabiliyorsa, o ürünün güvenlik değerlendirmesi belgelenmiş demektir. Cevap veremediği maddeler ise bir sonraki geliştirme döngüsünün önceliği olur. Bu basit alıştırma, büyük bir güvenlik programı kurmadan önce bile uygulanabilir ve ekibe nereden başlaması gerektiğini gösterir.

Somut Bir Örnek: Altay Kargo Senaryosu

Altay Kargo'nun bir RAG tabanlı iç bilgi asistanı olduğunu düşünelim. Asistan, şirket içi prosedür dokümanlarını vektör veritabanına yükleyip, çalışanların sorularını bu dokümanlara dayanarak yanıtlıyor. Bu senaryoda birkaç madde aynı anda devreye girer: eğer vektör veritabanına erişim kontrolü zayıfsa (LLM08), bir çalışan yetkisi olmayan bir dokümana ait bilgiye asistan üzerinden ulaşabilir. Eğer asistan aynı zamanda bir destek bileti açma aracına bağlıysa ve bu araca aşırı yetki verildiyse (LLM06), asistan kullanıcı adına yanlış bir bilet açabilir. Eğer asistanın sistem talimatı bir şekilde sızdırılırsa (LLM07), rakip firmalar Altay Kargo'nun iç iş kurallarını öğrenebilir.

Bu örnek, tek bir güvenlik açığının değil, birden fazla riskin bir arada nasıl bir sistem tasarımını tehlikeye attığını gösteriyor. Bu yüzden güvenlik değerlendirmesi, sistemin tamamına, uçtan uca bakmalı.

Altay Kargo'nun ekibi bu değerlendirmeyi yaptıktan sonra üç somut değişiklik uyguladı: vektör veritabanına erişimi, dokümanın gizlilik seviyesine göre filtreleyen bir katman ekledi, destek bileti açma aracına asistanın tek başına karar verme yetkisini kaldırıp bir onay adımı koydu, ve sistem talimatını düzenli olarak sızıntıya karşı test eden bir kontrol sürecine bağladı. Bu üç değişikliğin hiçbiri tek başına büyük bir mühendislik çabası gerektirmedi, ama birlikte uygulandığında sistemin risk profilini belirgin biçimde düşürdü.

Savunma Yöntemleri

Her madde için ayrı bir teknik önlem var, ama ortak temada dört ilke öne çıkıyor.

  • Girdi ve çıktı ayrımı: Modele giren dış kaynaklı veriyi güvenilmez olarak işaretle, modelden çıkan veriyi de bir sonraki sisteme aktarmadan önce doğrula ve temizle. Bu, hem LLM01 hem LLM05 riskini azaltır.
  • En az yetki: Modele ve bağlı ajanlara, görevi tamamlamak için gereken minimum aracı ve veri erişimini tanı. Bu, LLM06 riskinin doğrudan panzehiridir.
  • İnsan onayı: Geri dönüşü zor işlemlerde (veri silme, ödeme, dışa e-posta gönderme) bir insanın onayını zorunlu kıl. Otonom bir sistemde bile, kritik eşiklerde insan devreye girmeli.
  • İzleme ve günlükleme: Modelin girdi, çıktı, araç çağrısı ve kaynak kullanımını sürekli logla. Bu, hem anormal davranışı erken yakalamana hem de LLM10'daki kaynak tüketimi sorununu görünür kılmana yardım eder.

Bu ilkeleri güvenli kod yazımı pratikleriyle birleştirdiğinde, LLM tabanlı bir ürünün güvenlik olgunluğu klasik yazılımlarla aynı disipline kavuşur.

Yaygın Yanılgılar

Listeyle ilk karşılaşan ekiplerde birkaç yanlış anlama tekrar eder. Birincisi, "listeyi bir kere okuduk, artık güvenliyiz" düşüncesi. Liste bir kontrol listesi sunar ama uygulaması sürekli bir çabadır; her yeni özellik, on maddeye karşı yeniden değerlendirilmelidir. İkincisi, "bu risklerin hepsi bizim için aynı önemde" varsayımı. Bir kurumun mimarisine göre bazı maddeler (örneğin RAG kullanmayan bir sistemde LLM08) hiç geçerli olmayabilir, öncelik sıralaması her ürün için yeniden yapılmalı. Üçüncüsü, listenin sadece güvenlik ekibinin işi olduğu düşüncesi. Oysa çoğu madde, ürün tasarımı ve mimari kararlarla ilgilidir; geliştirici ve ürün ekibinin de listeyi bilmesi gerekir.

Nereden Başlamalı?

OWASP LLM Top 10'u ilk okuduğunda liste soyut kalabilir, her madde birbirine benzer görünebilir. Bunu aşmanın yolu, her maddeyi kendi ürününe veya bir laboratuvar senaryosuna uygulayıp somutlaştırmaktan geçer. Saha bölümündeki pratik senaryolar, bu on maddeden birkaçını izole bir ortamda deneyimlemene imkan tanır. Bulut tarafında çalışan ekipler için ayrıca, LLM servislerinin genelde bulut üzerinde barındırıldığını ve bulut yapılandırma hatalarının LLM risklerini büyütebileceğini unutma.

Kariyerinde bu alana yönelmek istiyorsan, kariyer sayfasındaki yol haritaları, AI güvenlik mühendisliği ve uygulama güvenliği rollerinin bu listeyi nasıl referans aldığını gösteriyor. Listeyi bir kere okuyup kapatmak yerine, her yeni sürümde neyin değiştiğini takip etmen, bu hızlı değişen alanda güncel kalmanın en pratik yolu.

Kaynaklar

  • owasp
  • llm güvenliği
  • yapay zeka
  • risk yönetimi
  • siber güvenlik

İlgili yazılar

Okuduğunu uygula.
Yollarda ders ders ilerle, alıştırmalarla pekiştir.
Başla