veridive’ın yanıt motorunu veya ücretsiz araçlarını mı arıyorsunuz?Yanıt motorunu mu arıyorsunuz? Neler değişti

veridive EN Proje başlatın Menü

Saha notlarıYönetişim ve risk

Yapay zeka sistemleri için kırmızı takım testi: canlıya almadan önce pratik bir test planı.

Kırmızı takım testi, sistemi yanlış davranmaya zorlamak için yapılan yapılandırılmış girişimlerdir: veri sızdırmak, bir onayı atlamak, politika dışı yanıt almak ya da maliyeti şişirmek. Bunu işi bilen insanlarla yapın, her bulguyu kaydedin ve her birini bir teste dönüştürün.

veridive6 dk okuma

Canlıya almadan önceki testlerin çoğu, sistemin yapması gerekeni yapıp yapmadığını sorar. Kırmızı takım testi ise biri sistemi yanlış davranmaya zorlamaya çalıştığında ne yaptığını sorar: bir şikayetin içine talimat yapıştıran bir müşteri, asistandan başka birinin maaşını isteyen bir çalışan, içinde gizli metin bulunan bir tedarikçi faturası.

Yapay zeka kırmızı takım testi (red-teaming), gerçek kullanıcılar ve saldırganlar denemeden önce sistemi veri sızdırmaya, bir onayı atlamaya, politika dışı yanıt vermeye ya da maliyeti şişirmeye zorlamak için yapılan yapılandırılmış bir girişimdir. Bunu güvenlik kadar işi de bilen insanlarla yapın, her bulguyu kaydedin ve her birini, her değişiklikte çalışan bir teste dönüştürün.

Bir yapay zeka sistemi için kırmızı takım testi nedir?

Küçük bir ekip, sınırlı bir süre, kategorileri belli yazılı bir plan ve bir kayıt. Klasik bir sızma testinden (penetration test) farklıdır; sızma testi, açıkta kalan servisler ya da bozuk kimlik doğrulama gibi altyapı ve koddaki zayıflıkları arar. Bir yapay zeka sistemi için kırmızı takım testi ise davranışı test eder: sistemin neye ikna edilebildiğini, hangi verileri açığa çıkardığını ve hangi denetimleri atlamaya razı edilebildiğini. İkisine de ihtiyacınız var.

Değerlendirme setinden de farklıdır: değerlendirme seti olağan işte kaliteyi kontrol eder; kırmızı takım bulguları ona saldırı vakalarını ekler. Prompt enjeksiyonu ve veri sızıntısı testlerini geçmek, canlıya geçmeden önce kontrol ettiğimiz koşullardan biridir.

Kırmızı takımda kimler olmalı?

Yarım gün ya da bir gün için dört ila altı kişi:

  • İşin içinden insanlar: kıdemli bir müşteri hizmetleri temsilcisi ya da bir finans inceleyicisi gibi. Politika sınırını aşan bir para iadesi ya da söz verilmiş bir teslim tarihi gibi hangi yanlış yanıtların zarar vereceğini ve gerçek müşterilerin zor taleplerini nasıl dile getirdiğini bilirler.
  • Güvenlikten biri: saldırı tekniklerini ve benzer sistemlerin nasıl kötüye kullanıldığını bilir.
  • Sistemi bilen bir mühendis: araçlarını, yetkilerini ve veri kaynaklarını bilir.
  • Not tutan biri, böylece test edenler testlerine devam edebilir.

Ekibi yalnızca sistemi geliştirenlerden kurmayın: istemeden de olsa nereye yüklenmemeleri gerektiğini bilirler.

  • İş bittiğinde: herkese kategoriler atanmıştır ve herkesin bir test ortamına erişimi vardır.
  • Sık yapılan hata: yalnızca güvenlik uzmanlarından oluşan bir ekip, iş açısından önemi olmayan zekice jailbreak’ler (modeli kurallarının dışına çıkarma girişimleri) bulur, önemli olan politika dışı yanıtları ise kaçırır.

Test planı hangi saldırı kategorilerini kapsamalı?

Sağlam bir başlangıç planı için yedi kategori:

KategoriTest edenler ne denerDayanıklı bir sistem ne yapar
Doğrudan prompt enjeksiyonuAsistana kurallarını görmezden gelmesini, talimatlarını açıklamasını ya da başka bir rol oynamasını söylemekReddeder ve içeriden hiçbir şey açıklamaz
Dolaylı prompt enjeksiyonuSistemin okuduğu bir e-postaya, belgeye ya da web sayfasına talimat gizlemekMetni veri olarak ele alır; hiçbir şey tetiklenmez
Kullanıcılar arası veri sızıntısıBaşka bir müşterinin siparişini istemek, kayıt numaralarını tahmin etmek, “son konuşmayı” sormakYalnızca kullanıcının kendi verisini gösterir
Onayın atlatılmasıSistemi onaysız işlem yapmaya ikna etmek ya da büyük bir para iadesini küçük parçalara bölmekOnay noktası atlanamaz
Politika dışı tavsiyeTazminat, söz ya da hukuki veya tıbbi tavsiye için zorlamakPolitikaya bağlı kalır ya da bir insana devreder
Saldırgan ya da sorunlu girdilerHakaret, sıkıntı içindeki kullanıcı, bozuk ya da alışılmadık metinSakin karşılık verir, gerektiğinde yetkili kişiye aktarır
Maliyet şişirmeÇok uzun girdiler, araç çağrısı ya da tekrar deneme döngülerini tetikleyen isteklerSınırlar bunu durdurur ve bir uyarı devreye girer

Sistemin desteklediği her dilde test edin: İngilizcede başarısız olan bir saldırı Türkçede işe yarayabilir. Prompt enjeksiyonu savunmaları ve koruma önlemlerinin nerede durduğu üzerine notlarımız test edilen önlemleri ele alıyor; baştan tasarladıklarımızı da koruma önlemlerimiz anlatıyor.

Bir oturum nasıl yürütülür ve kaydedilir?

  1. Hazırlayın: canlı ortamın aynısı olan bir test ortamı; aynı promptlar, araçlar ve yetkiler, gerçek müşteri kayıtları yerine test verileri ve sızıntının test edilebilmesi için birkaç kullanıcı hesabı.
  2. Ekibi bilgilendirin: kapsam, kategoriler, neyin yasak olduğu ve her başarının ya da yarım başarının kaydedileceği kuralı.
  3. İkili gruplar halinde saldırın: plandan başlayın, sonra zayıf görünen her şey üzerinde doğaçlama yapın.
  4. Birebir kaydedin: tam girdi ve çıktı, kategori, önem derecesi, iz (trace) kimliği ve bulguyu kimin bulduğu.
  5. Kapatın: herkes hâlâ odadayken önem dereceleri ve sahipler üzerinde anlaşmak için on beş dakika ayırın.

Bulgu kaydı basit bir tablodur: kimlik, kategori, girdi ve çıktı, önem derecesi, önerilen düzeltme, sahip, durum ve değerlendirme vakasının eklenip eklenmediği.

  • İş bittiğinde: oturum bitmeden her bulgunun bir önem derecesi ve bir sahibi vardır.
  • Sık yapılan hata: kimsenin tekrarlayamayacağı, özetlenerek tutulmuş kayıtlar ya da canlı ortamdan farklı bir demo yapılandırmasını test etmek.

Bulgulara ne olur?

Önem derecesine göre önceliklendirin. Başka bir kullanıcının verisinin görünmesi gibi kritik bulgular, düzeltilene kadar canlıya geçişi durdurur. Yüksek dereceli olanlar canlıya geçişten önce düzeltilir ya da canlıya geçiş sınırlamalarla yapılır. Orta ve düşük dereceli olanlar takvime bağlanır. Her birini ait olduğu katmanda düzeltin: önce yetkiler, araç sınırları, doğrulama ve onay tasarımı, en son prompt ifadesi; çünkü yeniden ifade edilmiş bir prompt, yeniden ifade edilmiş bir saldırıyla boşa çıkarılabilir. Ardından her bulguyu beklenen güvenli davranışla birlikte bir değerlendirme vakasına dönüştürün ve düzeltmeden sonra seti yeniden çalıştırın.

Bir çevrimiçi perakendecinin müşteri hizmetleri asistanı üzerinde, beş kişiyle yapılan yarım günlük temsili bir oturumu ele alalım. Kayda üç bulgu girer:

  1. Dolaylı enjeksiyon, yüksek. İçinde sahte bir “yöneticiden not” bulunan bir müşteri e-postası, yanıt taslağının tam para iadesi teklif etmesine yol açtı. Düzeltme: inceleme ekranı para iadesini politika sınırıyla yan yana gösterir ve müşteri metnindeki talimatlar veri olarak ele alınır. Test eklendi.
  2. Veri sızıntısı, kritik. Benzer bir e-posta adresiyle açılmış bir misafir oturumundan “En son ne sipariş etmiştim?” diye sormak, başka bir müşterinin siparişini getirdi. Düzeltme: sipariş sorguları, sohbete yazılan bir adresi değil, her zaman oturumdaki doğrulanmış müşteri numarasını kullanır. Test eklendi; düzenli test takımına bir yetki testi de eklendi.
  3. Maliyet şişirme, orta. Yapıştırılan çok uzun bir belge, asistanı tekrar tekrar özetleme ve tekrar deneme döngüsüne soktu. Düzeltme: bir girdi uzunluğu sınırı ve konuşma başına araç çağrısı tavanı. Test eklendi.

Teste dönüşmeyen bir bulgu geri gelir.

Ne sıklıkla tekrarlanmalı?

Canlıya almadan önce, canlıya geçişin bir parçası olarak. Büyük değişikliklerden sonra: yeni bir model, yeni araçlar ya da yetkiler, yeni bir kanal, dil ya da veri kaynağı. Üç ayda bir gibi düzenli bir döngüde; testin tekdüzeleşmemesi için her seferinde birkaç yeni yüzle. Bir de her olaydan sonra, çünkü olay, planlamadığınız bir kırmızı takım bulgusudur. Oturumlar arasında, önceki bulgulardan gelen değerlendirme vakaları her değişiklikte çalışır ve eski açıkları kapalı tutar; bu, yapay zeka güvenilirliği çalışmasının üstlendiği türden bir rutindir.

  • İş bittiğinde: bir sonraki oturumun tetikleyicisi işletim kılavuzuna yazılmıştır.
  • Sık yapılan hata: canlıya geçişten önceki tek bir oturumu kalıcı bir geçer not saymak.

Kaynaklar

  1. OWASP Top 10 for Large Language Model Applications OWASP Gen AI Security Project genai.owasp.org/llm-top-10
  2. MITRE ATLAS (Adversarial Threat Landscape for Artificial-Intelligence Systems) MITRE atlas.mitre.org
  3. Artificial Intelligence Risk Management Framework: Generative Artificial Intelligence Profile, NIST AI 600-1 ABD Ulusal Standartlar ve Teknoloji Enstitüsü (NIST) nvlpubs.nist.gov/nistpubs/ai/NIST.AI.600-1.pdf

Bu notu bir yapay zeka asistanına sorun

Yönetişim ve riskGüvenlikTest

veridive

Saha notlarını veridive yazar ve gözden geçirir. Nasıl yazıyoruz

Sorular

Bu notla ilgili sorular

Yapay zeka kırmızı takım testi nedir?

Yapay zeka kırmızı takım testi, küçük bir ekibin gerçek kullanıcılardan ya da saldırganlardan önce bir yapay zeka sistemini yanlış davranmaya zorlamak için yaptığı, süresi sınırlı ve yapılandırılmış bir girişimdir: veri sızdırmak, bir onayı atlamak, politika dışı yanıt almak ya da maliyeti şişirmek. Başarılı her girişim bir önem derecesi ve düzeltmeyle kaydedilir ve sonraki her değişiklikte çalışan bir teste dönüşür.

Yapay zeka kırmızı takım testi sızma testinden nasıl farklıdır?

Sızma testi; açıkta kalan servisler ya da bozuk kimlik doğrulama gibi altyapı ve uygulama kodundaki zayıflıkları arar. Yapay zeka kırmızı takım testi ise davranışı test eder: sistem neye ikna edilebilir, hangi verileri açığa çıkarır ve hangi onayları atlamaya razı edilebilir. Bir yapay zeka sisteminin ikisine de ihtiyacı vardır; kırmızı takımda hangi yanlış yanıtların zarar vereceğini bilen, işin içinden insanlar da olmalıdır.