Bir Import Satırı, Bir Kayıt, Bir Kurulum Betiği

577 kelime3 dk okuma

Slopsquatting, modelin halüsinasyonunu bağımlılığa dönüştürür: üretilen kodda olmayan paket adı makul görünür, geliştirici kopyalar, saldırgan o adı kaydeder ve kurulum anında kodu o paket teslim eder; savunma isim avında değil, script’siz kurulum ve kilit dosyasındadır.

Uydurulan ad nereden geliyor

Modeller, eğitimde bol geçen kalıpları hatırlar; seyrek geçen ekosistemlerde kalıbın kendisini üretir: kısa, anlamlı, olası görünen adlar. Sonuç, sözdizimi doğru ama var olmayan paketler.

Slopsquatting terimi 2025’te bir güvenlik raporuyla adlandırıldı: halüsinasyonun ürettiği adı, kayıt bedava ve anlıkken saldırganın kapması. Ad, aynı yıl kamuya açık ansiklopedilere de girdi.

Ölçüm yöntemi de bu: araştırmacılar binlerce tamamlama üretip olmayan adları toplar, savunma amaçlı kaydeder ve kurulum telemetrisini izler. “Risk bu kadar” cümleleri çoğunlukla bu sınırlı örneklemlerden çıkar.

Dependency confusion’dan farkı

2021’de Alex Birsan’ın gösterdiği “dependency confusion”, isim tahminine dayanıyordu: şirket içi paket adı kamuya açık kayıtta yoksa, o adı kaydeden sürüm kazanır. Slopsquatting’de tahmini insan değil model yapar ve hacmi bin kat büyüktür.

İkinci fark niyettir: geliştirici o paketi aramıyor, önerilen satırı olduğu gibi yapıştırıyor. Yani “zararlı bağımlılığı seçme” üzerine kurulu tüm inceleme prosedürleri atlanır; suç, kopyalama ile işlenme arasına sıkışır.

İki saldırı da aynı zeminde çalışır: kayıt edildikten sonra ad, kurulum hattının sıradan bir parçası olur. Asıl fark, ikincide hedefin önceden bilinemez olması; bu yüzden savunma tarafı isim listelerine değil, kurulum davranışına ve kökene bakmak zorunda kalıyor.

Neden bu kadar kolay çalışıyor

Kurulum anındaki ayrıcalık belirleyici: paket betikleri (preinstall, postinstall) tam derleme ortamında, kimlik bilgileri ve ağ erişimiyle koşar. CI’daki tek satır, her yeniden derlemede haftalar boyunca tekrar çalışır.

Algı tuzağı da çalışıyor: “yeni paket risklidir” sezgisi doğru; ama kurulumların çoğu makine tarafından, zincirleme ve otomatik geliyor. Telemetri, insan güdümlü kurulumu bot kurulumundan ayıramıyor.

Bu yüzden “kaç ekip yakalandı” sorusunun dürüst cevabı belirsiz: kurulum sayacı ile enfeksiyon kanıtı aynı şey değil.

Savunma: isim yerine mekanizma

Kullanılabilir set tek bir ilkeye çıkar: kurulan her şey sizin listenizde olsun, kurulum izole ortamda doğrulansın. Geri kalan her şey bu ilkin ayrıntısıdır.

Önerilen ad, liste dışıysa sorunun kendisi zaten cevaplanmış olur; modelin “iyi görünen” ismi, registry’de kaç günlük olduğu ve indirme geçmişiyle birlikte değerlendirilmelidir.

  • Vekil depo ve allow-list: kamuya açık registry yerine sizin aynanız; tanımsız ad reddedilir
  • Kilit dosyası ve hash sabitleme: kurulumda aralık değil tam sürüm
  • Betikleri kapatma (ör. npm ci --ignore-scripts) ve ilk kurulumu ağ izlemeli kum havuzunda yapma
  • Kaynak doğrulaması: imzalı provenance / Sigstore attestation, paket kimin deposundan geldi
  • Koda yazmadan önce registry sorgusu: ad var mı, kaç günlük, kaç bağımlılığı var

Tartışmanın eksik tarafı

Kamuya açık kanıtlar, tekil yakalamalar ile büyük bir ihlal dalgası arasında bir yerde duruyor; “slopsquatting kaynaklı şu kadar ihlal” diyen sayıların çoğu satıcı sunumu ve yöntem şeffaflığı zayıf. Geniş çaplı, doğrulanmış bir dalga iddia edildiği kadarıyla doğrulanmadı.

Ölçülebilir kısım net: uydurulan adların kayıt edilebilir boşlukta kalma payı yüksek, kayıt maliyeti sıfıra yakın, tespit penceresi kurulumdan sonraya kalıyor. Fiyatı, savunmanın maliyeti belirleyecek.

Model tarafına konulan kısıt da aynı derecede sınırlı: asistana “yalnızca bildiğin kaynaklarda var olan paketleri öner” demek, önerilen ad sayısını azaltır ama halüsinasyon oranını sıfırlamaz. Doğrulama, yine ve her seferinde kayıt verisi üzerinde yapılmalıdır; çünkü tek güvenilir kaynak paketin kendisi değil, kayıt verisidir.

Sık sorulan sorular

Slopsquatting ile typosquatting aynı mı?

Değil: typosquatting insan yazım hatasına dayanır, hedeflidir ve tek tek üretilir. Slopsquatting modelin halüsinasyonuna dayanır, ölçekte ve otomatik üretilen ad havuzuyla çalışır.

Gerçek bir ihlal kanıtı var mı?

Büyük, kamuoyu önünde doğrulanmış bir dalga bildirilmiş değil. Risk, uydurulan adların boşlukta kalma oranından çıkarım yapılıyor; doğrudan mağduriyet sayısı hâlâ tartışmalı.

AI kod asistanı kullanmayı bırakmalı mı?

Hayır; önerilen satırı olduğu gibi yapıştırmayı bırakmak yeterli. Bağımlılık ekleme adımı, koda değil kayıt verisine soru soran bir kontrole bağlanmalı.

En etkili tek önlem hangisi?

Vekil depo artı allow-list. Listenin dışındaki adları reddeden ve betikleri varsayılan olarak çalıştırmayan bir hat, kalan tüm hataları pahalı hale getirir.

Kaynakça

  1. SlopsquattingWikipedia
  2. Slopsquatting: yapay zeka halüsinasyonları ve tedarik zinciriCloud Security Alliance
  3. AI ajanlarının uydurduğu paketler ve derinlemesine analizTrend Micro
  4. Phantom bağımlılıklar ve slopsquatting saldırılarıContrast Security

Bu konuyla ilgili haberler