Bu İşlem Açık Yaratır mı? Güvenliği Soru Olarak Sormak
Yapay zekâ özellik yazarken güvenliği kendiliğinden her zaman düşünmez. Sorulması gereken soruları prompt'a koymak gerekiyor.
Yapay zekâ çalışan bir özellik yazmakta iyidir. Ama “çalışıyor” ile “kötü niyetli birine dayanıyor” aynı şey değildir ve ikincisini siz sormazsanız bazen atlanır.
Yazdığım prompt
Bu işlem normal kullanıcıda bir açık yaratır mı ya da bir şeyi aksatır mı? Bununla alakalı bir güvenlik önlemi aldık mı?
Ödeme tarafında daha doğrudandım:
Manipülasyon yapılmasın, sahte “ödendi” bildirimi gönderilmesin.
Müşteriye açık bir demo kurarken de sınırı net çizdim:
Bu demo işlemlerinde başka birisi veritabanı yapısına, kaynak kodlarına, içeriklerine ulaşamasın.
Yapay zekâ ne yaptı
Bu sorular zamanla her yeni özelliğin kontrol listesine girdi: bu ucu kim çağırabilir, giriş yapmamış biri ne görür, tarayıcıya hangi veri gidiyor, aynı isteği arka arkaya atan biri ne olur?
Kupon gibi kötüye kullanıma açık alanlar için deneme sınırları kondu. Demo sürümü gerçek veriden ve gerçek anahtarlardan ayrıldı.
Neyi öğrendim
Güvenliği ayrı bir iş olarak bırakırsanız hiç sıra gelmeyebilir. Her özelliğin sonunda sorulan tek bir soru bile çok şey yakalıyor.
Saldırganı tarif etmek de faydalı. “Kötü niyetli kullanıcı olabilir” cümlesi, yapay zekânın bakış açısını değiştiriyor. Normal kullanım senaryosundan çıkıp kötüye kullanım senaryosuna geçiyor.
Sen de kullan
Bu özelliği bitirdikten sonra kendini kötü niyetli kullanıcı yerine koy:
- Giriş yapmadan neye ulaşılır?
- Tarayıcıya gereğinden fazla veri gidiyor mu?
- İstek taklit edilir veya tekrarlanırsa ne olur?
- Anahtarlar hiçbir çıktıya düşüyor mu?
Bulduklarını listele, sonra kapat.