AI Kodlama Güvenliği: Prompt Injection Proje Dosyalarınızda Gizleniyor
AI kodlama asistanınız deponuzdaki (repository) her dosyayı okur. README dosyanızı, yapılandırma dosyalarınızı ve kurallarınızı okur. Kodun nasıl yazılacağına karar vermek için bu dosyaları kullanır.
Yeni bir güvenlik tehdidi tam olarak bu davranışı istismar ediyor. Araştırmacılar 28 farklı AI kodlama aracında bir güvenlik açığı buldu. Saldırı karmaşık bir hack işlemi değil; deponuzdaki basit bir metin dosyasıdır.
Saldırı nasıl çalışır:
Açık kaynaklı bir projeyi klonlarsınız. Normal görünür. Onu AI editörünüzde açar ve yeni bir özellik istersiniz. Yapılandırma dosyalarındaki gizli Unicode karakterlerini görmezsiniz. Bu karakterler talimatları sizden gizler ancak AI'ya başka bir şey yapmasını söyler.
Gizli talimat, AI'ya AWS kimlik bilgilerinizi harici bir sunucuya göndermesini söyler. AI bunun meşru bir proje talimatı olduğunu düşünür. Komutu yürütür. Sırlarınız gider.
Bunu durdurmak neden zordur:
- Gizli karakterler: Siz standart metni görürsünüz, ancak AI görünmez Unicode karakterleri aracılığıyla kötü niyetli komutları görür.
- Her dosya bir giriş noktasıdır: Bir README veya bir kütüphanedeki yorum satırı zararlı yükü (payload) taşıyabilir.
- Yüksek izinler: AI ajanları genellikle sizin kullanıcı izinlerinizle çalışır. SSH anahtarlarınızı ve API jetonlarınızı (tokens) okuyabilirler.
- Araç çağrıları (tool calls): AI, komutları çalıştırmak için araç çağrılarını kullanır. Saldırı, güvenlik eğitimini atlatmak için bu çağrıları hedef alır.
İş akışınızı nasıl korursunuz:
- Dosya içeriklerini temizleyin: AI okumadan önce gizli karakterleri ve yaygın enjeksiyon kalıplarını ayıklayın.
- Sandbox kullanın: AI ajanlarını ağ erişimi olmayan ve salt okunur dosya sistemlerine sahip konteynerlarda çalıştırın.
- Katı politikalar belirleyin: İzin verilen komutların bir beyaz listesini (whitelist) oluşturun. Veri taşıyan veya dosyaları silen her türlü komut için insan onayı gerektirin.
Kodlama oturumlarınızdan önce hızlı bir tarama yapabilirsiniz. Dosyalarınızı "ignore all previous" veya "curl" ve "exfil" gibi şüpheli terimler için kontrol edin.
AI kodlama araçları üretkendir, ancak diskinizdeki dosyaların güvenli olduğunu varsayarlar. Güvenli değillerdir. Her dosyayı güvenilmeyen bir girdi olarak değerlendirin.
AI iş akışınızdaki prompt injection risklerini nasıl yönetiyorsunuz?
Kaynak: https://dev.to/tyson_cung/ai-coding-security-prompt-injection-is-hiding-in-your-project-files-4be9
