Geri Dön
LLM Üretimi Kod, Güvenilmeyen Bir Derleme Çıktısı Olarak
SiTech AI Team2 წთ. საკითხავი

LLM Üretimi Kod, Güvenilmeyen Bir Derleme Çıktısı Olarak

dev.to'daki bir yazı, model çıktısının iş istasyonuna sınırsız erişim miras almaması gerektiğini savunuyor: kaynağı koru, yetenekleri sınıflandır ve çalıştırmadan önce izole et.

Bir yapay zekâ yanıtındaki gizli kodu ayıklamak metin temizliği gibi görünür. dev.to'da yayımlanan ve cometapi.com'daki daha uzun bir makaleden uyarlanan yazı bunu bir yürütme güvenliği sorunu sayıyor: önce artefaktın ne yapabildiğini belirle, sonra talimatlarının nereden geldiğini izle, ancak ondan sonra yeteneklerini sınırla.

Kuralın arkasındaki olay

Yazı, bir geliştiricinin Cursor IDE içinde Gemini 3 yardımıyla üretilen kodu çalıştırmasının ardından yaklaşık 800GB dosyanın, bunlar arasında Cursor AI uygulamasının tamamının silindiğine dair topluluk bildirimlerine atıf yapıyor. Yazar bunun bildirilmiş bir olay olduğunu vurguluyor: üretilen temizlik kodu bir iş istasyonuna sınırsız erişim miras almamalı.

Üretim ile çalıştırma arasında bir kapı

"Gizli kod" birkaç sorunu kapsıyor: getirilen sayfalardan, PDF'lerden veya eklenti yanıtlarından gelen dolaylı istem enjeksiyonu; tarayıcıda işlenen kötü niyetli JavaScript; sıfır genişlikli karakterler veya base64 yükleri gibi gizlenmiş içerik. Tehlikeli davranış kazara da olabilir: bir dizini "temizleme" isteği, hiçbir saldırgan olmadan rm -rf veya shutil.rmtree üretebilir.

Önce kaynak gelir: özgün yanıtı, konuşmayı, sistem istemini, getirilen belgeleri ve eklenti sonuçlarını saklayın; çıkarılan kaynağı ise her dönüşüm ve onay kararıyla birlikte ayrı tutun. Black veya Prettier ile biçimlendirme bir düzenleme işidir, güvenlik kontrolü değildir; U+200B, U+200C, U+200D ve U+FEFF dikkat ister, ancak silmek dizeleri değiştirebilir.

Yetenekler onaydan önce sınıflandırılır: kaynağı ayrıştır, linter'ları ve güvenlik kurallarını çalıştır. İnceleme tetikleyicileri arasında sudo, rm -rf, shutil.rmtree, subprocess.Popen, os.system, eval, exec ve beklenmedik mutlak yollar var. Hangi satırların silineceğini tahmin etmek yerine yazar yetenekleri blokluyor: AST destekli yeniden yazma, subprocess zaman aşımları, mock adaptörler, engellenmiş pip ve npm kurulumları ve değerlendirme sırasında gerçek API anahtarı bulunmaması.

Kum havuzu, araç zinciri, denetim kaydı

Test ortamı; ağı, ana makine kimlik bilgileri olmayan geçici bir kapsayıcı ya da microVM — seçenekler arasında gVisor ve Firecracker sayılıyor — üzerine seccomp ve kaynak limitleri eklenerek kuruluyor. Araç zinciri, Python'un ast modülüne Bandit, Semgrep ve ESLint güvenlik eklentilerini ekliyor.

İki küçük kontrol yaklaşımın sınırlarını gösteriyor. U+200B, U+200C, U+200D ve U+FEFF'i hedefleyen bir düzenli ifade bunları denetim kaydı için işaretliyor; çokça kopyalanan re.compile(r'') deseni ise boş dizeyle eşleşiyor ve hiçbir şeyi silmiyor. Bir AST taraması eval ve exec çağrılarını, ayrıca popen veya system özniteliklerini yakalıyor; ancak takma adlar ve dizelerden kurulan adlar onu atlatabiliyor. Sınır açıkça çiziliyor: model çıktısı kendi yürütülmesine yetki vermez.

SSiTech

SiTech — AI destekli web geliştirme

Hızlı ve modern web siteleri kuruyor, AI'yı gerçek iş akışlarına taşıyoruz. Projeniz veya sorunuz mu var? Yardımcı olmaktan mutluluk duyarız.