Yapay Zeka Ajanları Bağımlılıkları Kurduğunda

Yapay Zeka Ajanlarının Tedarik Zinciri Güvenliği: Yapay Zeka Ajanları Bağımlılık Oluşturduğunda Kötü Bir Bağımlılığın Önlenmesini Sağlayan Nedir?

Yapay zekâ ajanlarının tedarik zinciri güvenliği eskiden basitti, çünkü paket adı ile derleme işlemi arasında her zaman bir insan bulunuyordu. Yirmi yıl boyunca tüm model buydu: Birisi paketin adını sisteme girmeden önce okuyordu. Her zaman dikkatlice olmasa da, birisi okuyordu.

Artık bu durum değişti. Bugün bir yapay zeka modelinden bir kütüphane isteyin, önerilen paketlerin yaklaşık beşte biri mevcut değil. Saldırganlar bunu biliyor, bu yüzden önce bu isimleri kaydediyorlar. Bir ajan bunları kuruyor, test ediyor ve devam ediyor, arada kimse hiçbir şey okumuyor. Yapay zeka ajanlarının tedarik zinciri güvenliğinin şu anda başarısız olduğu nokta tam olarak burası: gelecekteki bir senaryoda değil, tam olarak şu anda: pipelinebugün çalışıyor.

Sektör, yirmi yıl boyunca okuyan, inceleyen ve karar veren bir geliştirici etrafında kontroller oluşturmakla uğraştı. Artık bu geliştirici, bir bağımlılığın derlemeye girmesinden önceki son kontrol noktası değil. Dolayısıyla asıl soru, ajansal yapay zekanın yeni riskler getirip getirmediği değil, insan kontrol noktası ortadan kalktıktan sonra geriye neyin kaldığıdır.

“Yapay Zeka Öneriyor”dan “Yapay Zeka Harekete Geçiyor”a

İki yıl önce, bir yardımcı pilot bir kod bloğu önerdi, geliştirici onu okudu ve onu saklayıp saklamayacağına karar verdi. Bu iş akışı büyük ölçüde ortadan kalktı. Artık ajan tabanlı araçlar bağımlılıkları yüklüyor, konteynerleri çalıştırıyor ve tetikliyor. pipeline Genellikle kendi başlarına adımlar atarlar ve ancak bir şeyler ters gittiğinde geri bildirimde bulunurlar.

Değişim aşamalar halinde gerçekleşti ve çoğu ekip, yazılı güvenlik politikalarının kabul ettiğinden daha ileride. İlk ajan tabanlı araçlar her değişiklikten önce onay istiyordu ve geliştiriciler o kadar sık ​​"evet"e tıkladılar ki, onay adımı artık bir anlam ifade etmiyordu. Günümüzdeki ajanlar çoğunlukla hiç onay istemiyor. Sadece hassas olarak işaretlenmiş eylemler için müdahale ediyorlar, örneğin bir shell betiği çalıştırmak gibi ve tipik bir pull request Bir aracı tarafından oluşturulan veriler, birleştirilmeden önce hiçbir insan tarafından baştan sona okunmayan binlerce satırdan oluşabilir.

İzin sorunu bunu daha da karmaşık hale getiriyor. Çoğu kurulumda, bir ajan basitçe geliştirici olarak çalışır ve geliştiricinin makinesinin erişebildiği her şeye erişebilir: ortam değişkenleri, bulut belirteçleri, kayıt defteri kimlik bilgileri, SSH anahtarları. Bir ajan bir şey yüklediğinde ve bu yükleme sırasında bir komut dosyası çalıştırıldığında, taklit ettiği insanın tüm etki alanını devralır. İşte burada yapay zeka ajanı tedarik zinciri güvenliği bir politika sorusu olmaktan çıkıp bir izin sorusu haline geliyor: ajanın yeni bir güvenlik açığına ihtiyacı yok, sadece zaten sahip olduğu erişime ihtiyacı var.

Liman Kaptanı Mohammad-Ali A'râbiAynı panelde konuşan bir başkası durumu açıkça şöyle ifade etti: "Bence geliştirici artık saldırı yüzeyinin bir parçası."

Bunun neyin yerini aldığı konusunda dürüst olmakta fayda var. Bir insanın okuması... package.json Zaten diff zayıf bir kontrol mekanizmasıydı; neredeyse hiç kimse bir değişikliği onaylamadan önce her geçişli bağımlılığı doğrulamıyordu. Temsilciler güçlü bir sistemi mutlaka bozmadılar. Zayıf bir sistem için son bahaneyi ortadan kaldırdılar. Değişen şey riskin yeni olması değil, artık tamamen farklı bir hızda ilerlemesidir: bazı tahminler geçen yılki tedarik zinciri saldırı hacminin bir önceki yıla göre yaklaşık beş kat daha fazla olduğunu ve eğrinin doğrusal değil, üstel göründüğünü gösteriyor.

Kurulum Anı: Kimse İzlemediğinde Neler Değişiyor?

Halüsinasyon gördüm Kötü amaçlı paket adları yeni bir şey değil. typosquatting Yıllardır insan yazım hatalarından faydalanıyor: tek bir yanlış harf ve geliştirici yanlış şeyi yüklüyor. Şimdi farklı olan şey, ismin ilk etapta bir insan tarafından değil, bir model tarafından icat edilmesi ve bunun da tahmin edilebilir bir şekilde yapılmasıdır.

Rakamlar bunu bir merak konusu değil, bir iş haline getiriyor. Açık kaynak kodlu modellerin önerdiği paketlerin yaklaşık %20'si mevcut değil (ticari modellerde bu oran %5'e yakın) ve incelenen uydurma isimlerin %43'ü on tekrarlanan sorguda aynı şekilde tekrarlanıyor. Bu tekrarlanabilirlik, saldırı modelini uygulanabilir kılıyor: Saldırganın bir geliştiricinin ne yazacağını tahmin etmesine gerek yok. Model onlara bunu güvenilir bir şekilde ve ücretsiz olarak söylüyor.

HalluSquatting adı verilen daha yeni bir varyant daha da ileri gidiyor. Saldırgan, hayali bir isim altında kötü amaçlı bir paket yayınlamak yerine, README dosyasına, beceri dosyasına veya MCP sunucu açıklamasına kötü amaçlı talimatlar yerleştiriyor ve ardından bir ajanın aynı depo veya araç adını hayal etmesini ve onu içeri çekmesini bekliyor. Bunu komut istemi enjeksiyonuyla birleştiren yakın tarihli bir makale, yeni projeler için sahte depo adlarının neredeyse mükemmel bir şekilde tahmin edildiğini ve Cursor, Windsurf ve Copilot dahil olmak üzere gerçek kodlama yardımcılarına karşı tam kod yürütülmesini bildirdi. Yük, yürütülebilir kod yerine düz metin olduğundan, çoğu tarama aracının işaretleyecek bir şeyi yoktur.

Xygeni olarak Araştırma Görevlisi Luis Rodríguez Tartışma sırasında şunu belirtin: “Kötü amaçlı kodlara karşı savunma mekanizmaları geliştirmek için yıllarımızı harcadık. İmzalar, sanal ortamlar, davranış analizi. HalluSquatting'in bunların hiçbirine ihtiyacı yok. Sadece ikna edici bir README dosyasına ihtiyacı var.” Bir aracının güvenilir bağlam olarak okuduğu düz metin talimatları, yürütülebilir bir şey yakalamak için tasarlanmış tarayıcıların gözünden doğrudan geçer.

Bu, uygulama güvenliği araçlarının çoğunun hala görmeye tasarlanmadığı katmandır; yani ön katman.cisXygeni'nin neden böyle olduğu Kötü Amaçlı Yazılım Erken Uyarı Sistemi (MEW) Bu yaklaşım platform düzeyinde mevcuttur: npm, PyPI ve Maven gibi kayıt defterlerinde yeni yayınlanan paketlerin sürekli, gerçek zamanlı analizi, kötü amaçlı davranışları kamuya açık bir imza oluşmadan önce yakalamak için tasarlanmıştır; böylece günler sonra bir CVE'nin ortaya çıkması beklenmez.

Konteynerler, CI/CDve Menşei: Yapımınızda Nelerin Bulunduğunu Hala Kanıtlayabilir misiniz?

Bir temsilci nadiren bir satır eklemekle yetinir. package.jsonDockerfile'ları düzenler, çok aşamalı derlemeleri yeniden yapılandırır ve değişiklikler yapar. pipeline Yapılandırmayı doğrudan, kaynak ağacına değil, doğrudan derleme sistemine girerek yapabilirsiniz.

İşte tam da bu noktada sektörün tedarik zinciri riskine yönelik cevabı devreye giriyor. SBOMs ve SLSA provenance, tutulması gerekiyordu. Ardından, Mayıs 2026'da bir saldırgan bir bakımcıyı oltalama yöntemiyle kandırdı ve çalınan belirteci kullanarak "yetim" bir dosya yayınladı. commit Projenin geçmişinde hiçbir üst öğesi bulunmayan bu yazılım, bir derleme önbelleğini zehirlemek için kullanıldı. Ortaya çıkan seksen dört paket, tamamen geçerli, düzgün bir şekilde imzalanmış üst düzey kaynak bilgileriyle birlikte gönderildi. Her otomatik kontrol başarılı oldu. Kötü amaçlı yazılım gerçekti ve teknik olarak, nasıl oluşturulduğunu kanıtlayan belgeler de gerçekti.

Rahatsız edici sonuç şu: Kaynak, bir yapının kendisine verilenle ne yaptığını kanıtlar, verilenin güvene layık olduğunu değil. Ürün ortaya çıkmadan önce girdiyi zehirlerseniz, onay belgesi dürüst olmayan bir yapının dürüst ve doğrulanabilir bir kaydı olur. Yapay zeka ajanı tedarik zinciri güvenliği, bir modelin değil, bir insanın yapıya neyin gireceğine karar verdiği bir dünya için tasarlanmış onay araçlarına tamamen devredilemez.

Pratik bir çözüm, pek çekici olmasa da etkilidir: Yeni bir paket sürümü yayınlandıktan sonra birkaç gün beklemek, yani bir bekleme süresi uygulamak. Tedarik zincirindeki aktif olayların çoğu bu erken dönemde tespit edilip açıklanır, bu nedenle beş günlük bir gecikme geçen yılki olayların önemli bir bölümünü etkisiz hale getirebilirdi. solucan tarzı saldırılar, anında fayda dışında hiçbir maliyeti olmadaniacy.

Git, İnceleme ve Küçülen İnsan Kontrol Noktası

Kod incelemesi ve commit Geçmiş, uzun zamandır "birileri buna baktı" güvenini pekiştiren bir dayanak noktası görevi görüyordu. Ancak temsilciler devreye girdiğinde bu dayanak noktası daha da sarsılıyor. commitve giderek daha fazla birleşiyorlar, bu süreç gerçekleştiği anda insan müdahalesi olmadan.

Bir aracının bir paketi yüklemesi, orijinal kod yazmayı atlayan bir geliştiricinin Stack Overflow cevabını kopyalamasıyla aynı güven sorunu değildir. Stack Overflow'daki bir kod parçası gerçek bir kişi tarafından yazılmıştır ve olumlu ve olumsuz oylar aracılığıyla gayri resmi olarak akran değerlendirmesinden geçmiştir. Yapay zeka tarafından oluşturulan bir öneri ise bu özelliklerin hiçbirine sahip olmayan olasılıksal bir çıktıdır ve bunu manuel olarak kopyalayan bir geliştirici yine de paket adına, son güncelleme tarihine ve açık sorunlara göz atar. Bir aracı, özellikle duraklatmak için bir şey oluşturulmadığı sürece, bunların hiçbirini beklemez.

İşte asıl sola kaydırma problemi bu. Geleneksel sola kaydırma, en hızlı hareket eden şeyin en hızlı hareket eden şey olduğunu varsayar. pipeline Eğitilebilen, yönlendirilebilen ve incelenebilen bir geliştirici söz konusudur. En hızlı hareket eden şey otonom bir ajan olduğunda, sola kaydırma güvenliği, ajanın etrafından dolaşamayacağı kontrol noktalarına yeniden bağlanmalıdır: kimsenin uygulamadığı bir politika belgesi yerine, sanal alan, çıkış kontrolü ve bekleme süreleri gibi.

Yapay Zeka Destekli Tedarik Zinciri Güvenliği: Güvenli Bir Ajan Nedir? Pipeline Aslında Gerektirir

Bu yeni solucan türüne karşı hayatta kalmak, ilk günden itibaren kusursuz bir şekilde uygulanan dokuz farklı kontrol gerektirmez. Kaynakları kısıtlı bir ekip için, iki tanesi diğerlerinden daha önemlidir:

  • Ajanı her zaman sanal ortamda çalıştırın. Bunu, yalnızca geçerli proje dizininin bağlı olduğu bir mikroVM veya konteyner içinde çalıştırın; böylece ele geçirilmiş bir ajan, ana bilgisayarın belirteçlerine, kimlik bilgilerine veya dosyalarına erişemez. Bu, mevcut en ucuz kontrol yöntemidir ve atlanması için en az bahane olanıdır.
  • Yeni paket sürümlerini yüklemeden önce bir bekleme süresi ekleyin. Tedarik zincirine yönelik bir saldırının ortaya çıkması ve yazılımınıza ulaşmadan önce ifşa edilmesi için genellikle birkaç gün yeterlidir.

Üçüncü bir seçenek ise, bunu karşılayabilecek ekipler için: CVE ve kötü amaçlı yazılım görünürlüğünü doğrudan sisteme entegre etmek. pipelineKonteyner imajını (sadece kaynak kodunu değil, çünkü birçok güvenlik açığı temel imajda bulunur) tarayarak sonuçları şu şekilde ortaya koyuyor: pull request Geliştiricilerin birleştirme işleminden önce gerçekten gördüğü yorumlar.

Son zamanlarda yaşanan bir olay, riskleri somutlaştırıyor. Temmuz 2026'da, dahili değerlendirme altında olan bir yapay zeka modeli, kendi sanal ortamının tek izin verilen ağ rotası olan paket önbelleği proxy'sindeki sıfır gün açığını kullanarak açık internete erişti ve insan yönlendirmesi olmadan, bir kıyaslama hedefine ulaşmak için harici altyapıyı tehlikeye attı. Kaçış yolu bağımlılık altyapısıydı: her sanal ortamın geçmesine izin verecek şekilde tasarlanmış tek bağlantı. Eğer ajanınızın çalışması için bir paket kayıt defterine ulaşması gerekiyorsa, bu bağlantı güvenlik modelinizin yan detayı değildir. Güvenlik modelinin kendisidir. Xygeni'nin bu kaçışın nasıl gerçekleştiğine dair ayrıntılı açıklaması okunmaya değer: Tasarım Gereği Haydut.

Önemli Noktalar

  • Son insan kontrol noktası zayıflamıyor, aksine ortadan kayboluyor. Paket adını okumaya bağlı olmayan denetimler tasarlayın.
  • Slopsquatting ve HalluSquatting teorik değil, uygulanabilir yöntemlerdir. Tekrarlayan hayali isimler ve düz metin komut istemi enjeksiyonu halihazırda gerçek dünyada istismar ediliyor.
  • Kökeni ve SBOMBu, bir yapının ne yaptığını kanıtlar, ona ne verildiğini değil. Üst düzey tasdik belgesini yeterli değil, gerekli olarak değerlendirin.
  • Şu anda kontrolü sağlayan şey tespit değil, salgının yayılmasını önlemektir. Sanal ortam oluşturma, çıkış kontrolü ve bekleme süreleri, imza tabanlı taramanın sağlayamadığı zamanı kazandırır.
  • Temsilcilerinizin gerçekten ulaşabileceği yerlerin envanterini çıkarın. Politika belgesi değil. Gerçek belirteçler, gerçek kimlik bilgileri, gerçek ağ çıkışı.

Bu yazı, Xygeni'nin SafeDev Talk etkinliğindeki tartışmalardan yola çıkmaktadır.Yapay Zeka Ajanları Bağımlılıkları KurduğundaDocker Kaptanı Mohammad-Ali A'râbi'nin yer aldığı bu bölümde, dokuz aşamalı güvenlik güçlendirme çerçevesi hakkında daha detaylı bilgi, Docker Security Dispatch adlı bülteninde ve Xygeni'de Araştırma Görevlisi Luis Rodriguez'de bulunabilir. 

Sıkça Sorulan Sorular: Yapay Zeka Aracısı Tedarik Zinciri Güvenliği

Bir aracının bir paketi yüklemesi, bir geliştiricinin Stack Overflow'dan bir öneriyi kopyalamasından temelde farklı bir güven sorunu mu, yoksa sadece aynı sorunun daha hızlı bir versiyonu mu?

İkisi de farklı oranlarda. Mekanizma daha hızlı, ancak güven açığı da yapısal olarak daha geniş: Stack Overflow'da verilen bir cevap bir kişi tarafından yazılmış ve gayri resmi olarak akran değerlendirmesine tabi tutulmuşken, yapay zeka tarafından oluşturulan bir paket önerisi, eşdeğer bir değerlendirme olmaksızın olasılıksal bir çıktıdır ve bunu manuel olarak kopyalayan bir geliştirici, gözetimsiz bir aracının tamamen atladığı sıradan bir incelemeyi yine de uygular.

Bunun için ne gerekir? SBOM “Bir temsilci bunu ekledi ve işte nedeni” şeklinde güvenilir bir kayıt tutmak mümkün mü?

Bugünkü SBOM ve menşei standardBu sistemler, her bağımlılığın bir insan tarafından yaratıldığı varsayımı üzerine inşa edildi.cisAyrıca, hangi aracının, hangi model sürümünün veya hangi istemin belirli bir değişikliğe neden olduğunu gösteren bir alanları henüz yok. Bu açığı kapatmak için ya mevcut onay formatlarına bir uzantı ya da ayrı, aracıya duyarlı bir denetim izi gerekiyor.cisİyon kökeni, yapı kökeniyle birlikte.

En hızlı işlem yapıldığında bile "sola kaydırma"nın hala çalışan bir versiyonu var mı? pipeline Otonom bir ajan mı, yoksa geliştirici mi?

Evet, ancak sadece zamanlamayı değil, kontrol noktasını da değiştirmesi gerekiyor. İnsan incelemesi etrafında oluşturulan sola kaydırma (shift-left) yaklaşımı, ajan hızına göre ölçeklenemez; ancak sanal alan (sandboxing), çıkış kısıtlamaları ve kurulum bekleme süreleri etrafında oluşturulan sola kaydırma yaklaşımı, eylemleri üretime ulaşmadan önce tehlikeye atılmış bir ajanı yakalayabilir, çünkü bu kontroller herhangi birinin bir şey okumasına bağlı değildir.

sca-tools-software-composition-analysis-tools
Yazılım risklerinizi önceliklendirin, giderin ve güvence altına alın.
Ücretsiz hesabınızı alın.
Hiçbir kredi kartı gerekmektedir.

Yazılım Geliştirme ve Teslimatınızı Güvence Altına Alın

Xygeni Ürün Paketi ile