Bu neden önemli?
Yapay zekâ ajanları okuduklarına güveniyor ve komut çalıştırabiliyor. Bir belgedeki tek bir yanlış satır, doğrudan senin bilgisayarında çalışan zararlı bir koda dönüşebilir.
llms.txt nedir?
Bir yapay zekâ ajanı bir kütüphaneyi öğrenmek istediğinde web sitesindeki bütün sayfaları gezmek zorunda kalmasın diye, birçok site llms.txt (ve daha uzun hâli llms-full.txt) adlı düz metin dosyaları yayımlıyor. Bu dosyalar ajana “belgeler burada, kurulum şöyle yapılır” diye özet bir yol haritası veriyor.
Kulağa güzel geliyor. Sorun şu: Ajanlar bu dosyalarda yazanı sorgulamadan uyguluyor. İçinde “şu paketi kur” yazıyorsa, kuruyor.
Araştırma ne buldu?
Güvenlik araştırmacısı Alon Hertz ve ekibi Ağustos 2026’da şunu yaptı:
- Büyük şirketlere ve savunma sanayisine ait 6.214 sitedeki llms.txt dosyalarını topladı.
- Bu dosyalardaki kurulum komutlarında geçen paket ve alan adlarını npm, PyPI gibi paket depolarında kontrol etti.
- 120 dosyada, hiç yayımlanmamış, yani sahibi olmayan paket isimleri buldu.
- Bu boştaki isimlerden bazılarını kendisi kaydetti ve içine zararsız bir “ben kuruldum” sinyali koydu. Kısa süre içinde Fortune 500 şirketlerinden birinin ağından sinyal gelmeye başladı. Paketleri kuranlar Claude, Codex ve Hermes gibi kodlama ajanlarıydı.
Gerçek bir saldırı da var
Kimlik doğrulama hizmeti Clerk’in llms dosyasında npx clerk-next-fix-auth-protection diye bir komut geçiyordu. Clerk bu isimde bir paket hiç yayımlamamıştı. Birisi bu ismi npm’de kaydetti. Açık kaynak zararlı paket veritabanı OSV’deki kayda göre paket, kurulduğu anda bilgisayarın kullanıcı adını, makine adını ve çalışma klasörünü dışarıdaki bir sunucuya gönderiyordu. Clerk sorunu sonradan düzeltti.
Syntax’ta konuşulan yoruma göre bu isimlerin bir kısmı, belgeleri yapay zekâya yazdırıp kontrol etmemekten kaynaklanıyor. Model olmayan bir paket adı uyduruyor, kimse fark etmiyor. Saldırganların bu uydurma isimleri kapmasına slopsquatting deniyor.
Kendini nasıl korursun?
- Ajanın komutlarını gözden geçir. Özellikle paket kurma komutlarını otomatik onaylama.
- Kodu yalıtılmış ortamda çalıştır. Konteyner ya da sanal makine (VM) kullanırsan, zararlı bir paket bütün bilgisayarına erişemez. Syntax’tan CJ’nin küçük anketinde katılımcıların yalnızca %10’u bunu her zaman yaptığını söylemiş.
- Çok yeni paketlere dikkat et. Birkaç gün önce yayımlanmış, az indirilmiş bir paket şüphe sebebi.
- Belge yayımlıyorsan: llms.txt dosyandaki her paket adının gerçekten var olduğunu ve sana ait olduğunu kontrol et. Yapay zekâya yazdırdığın belgeyi okumadan yayımlama.
Düşün
- Bir yapay zekâ ajanına bilgisayarında komut çalıştırma izni verirken, aslında kime güvenmiş oluyorsun? Ajana mı, okuduğu her sayfaya mı?
- Veri ile komut arasındaki çizgi bulanıklaşınca güvenlik nasıl değişiyor?