Langchaingo’da yakın zamanda keşfedilen bir kusur olan büyük dil modelleri için Langchain çerçevesinin Go uygulaması, saldırganların kötü niyetli istemi şablonları enjekte ederek bir sunucudaki keyfi dosyaları okumasına izin veriyor.
CVE-2025-9556 olarak izlenen bu güvenlik açığı, Jinja2 sözdizimini destekleyen ve yetkisiz dosya okumaları gerçekleştirmek için manipüle edilebilen Gonja şablon motorunun kullanımından kaynaklanır.
| CVE kimliği | Orijinal Çıkış Tarihi | Tanım |
| CVE-2025-9556 | 2025-09-12 | Gonja motoru kullanarak Langchaingo’daki kötü niyetli istemi şablonları aracılığıyla okunan keyfi dosya |
Güvenlik açığına genel bakış
Langchaingo, geliştiricilerin büyük dil modellerinden yararlanan uygulamalar oluşturmalarına yardımcı olmak için tasarlanmış Langchain Orkestrasyon Çerçevesi’nin bir Limanıdır.
Dinamik hızlı şablonları ayrıştırma ve oluşturma için Jinja2 şablon motorunun GO tabanlı bir uygulaması olan Gonja’yı kullanır.
Kritik olarak, Gonja { % dahil %}, { %} ve { % { %} gibi Jinja2 direktiflerini tutar. Bu yönergeler, sunucunun dosya sisteminden dosyaları yüklemek ve okumak için bir saldırgan tarafından yeniden tasarlanabilir.
Normal kullanım altında, bu özellikler modüler ve yeniden kullanılabilir şablonların oluşturulmasını sağlar. Ancak, kullanıcı tarafından kontrol edilen giriş doğrudan şablon motoruna aktarıldığında, bir saldırgan kritik sistem dosyalarına, örneğin /etc /passwd gibi başvuran şablon kodu enjekte edebilir.
Enjekte edilen kod daha sonra sunucuda yürütülür ve hassas verileri ifşa eden bir sunucu tarafı şablon enjeksiyonuna (SSTI) yol açar.
Rasgele dosya okuma güvenlik açığı Langchaingo çalıştıran sistemlerin gizliliğini zayıflatır. Saldırganların yalnızca uygulama tarafından okunabilen herhangi bir dosyayı ortaya çıkaran kötü niyetli şablonlar oluşturmak için istemi giriş alanına erişmesi gerekir.
Langchaingo’nun chatbot arayüzlerine veya diğer LLM tabanlı hizmetlere güç sağlamak için kullanıldığı ortamlarda, bir saldırgan ek ayrıcalıklara ihtiyaç duymadan bu kusurdan yararlanabilir.
KBCERT tarafından yapılan bir rapora göre, yapılandırma dosyaları, özel anahtarlar veya kullanıcı kimlik bilgileri gibi hassas dosyalar ortaya çıkabilir, bu da KBCERT tarafından yapılan bir rapora göre, ayrıcalık artış veya ağ içindeki yan hareket gibi daha fazla saldırı sağlayabilir.
Langchaingo bakıcısı RenderTemplateFS işlevini ekleyen bir güncelleme yayınladı.
Bu yeni işlev, varsayılan olarak doğrudan dosya sistemi erişiminden şablon oluşturmayı izole eder ve yalnızca onaylanmış dosyaları dahil etmek için güvenli bir mekanizma sağlar.
Güncelleme ayrıca şablon motor seviyesinde yetkisiz dosya erişimini de engeller. Kullanıcılar, bu güvenlik geliştirmelerini uygulamak için hemen en son Langchaingo sürümüne yükseltilmelidir.
Güncellemek için, çalıştırın:
go get github.com/tmc/langchaingo@latest
Yükseltildikten sonra, herhangi bir özel şablon kodunu inceleyin ve şablon oluşturmanın önceki oluşturma işlevleri yerine rendertemplateFS kullandığından emin olun.
Bu hikayeyi ilginç bul! Daha fazla güncelleme almak için bizi LinkedIn ve X’te takip edin.