Slopsquatting Hücumları

Slopsquatting Hücumları: Süni İntellekt Səhvi Proqram Təchizat Zəncirinizə Necə Yeni Bir Yola Çıxdı

Problem bir cümlədə

Növbəti dəfə bir Süni intellekt köməkçisi quraşdırmaq üçün paket tövsiyə edir, həqiqətən də həmin paketin mövcud olub-olmadığını yoxlayacaqsınız? Əksər tərtibatçılar yoxlamayıb. Təklif və yoxlama arasındakı bu boşluq, slopsquatting hücumlarının başladığı yerdir və buna görə də həm slopsquatting-in təkamülünü, həm də praktiki slopsquatting qarşısının alınmasını anlamaq AppSec və DevSecOps komandaları üçün əsl prioritetə ​​çevrilib.

Slopsquatting hücumu nədir?

Slopsquatting hücumu bir variantdır typosquatting (məsələn, ümumi səhv yazılma yolu ilə qanuni domen və ya paket adını təqlid edən domen və ya paket adının qeydiyyatı təcrübəsi) tələblər yerinə sorğu, ümid edirəm ki, istifadəçinin öz səhvi onları birbaşa ona çatdırır), lakin səhvin haradan qaynaqlandığında əhəmiyyətli bir fərq var. Typosquatting insan yazma səhvlərindən istifadə edir. Slopsquatting hücumu böyük dil modellərinin etdiyi səhvlərdən istifadə edir: LLM tamamilə qanuni səslənən, lakin heç bir ictimai reyestrdə olmayan bir paket adını "hallüsinasiya edir" və təcavüzkar yaxşı niyyətli hər kəsdən əvvəl həmin adı qeydiyyatdan keçirərək ora çatır. 

Tipik bir slopsquatting hücumunun arxasındakı mexanizm sadədir və məhz bu sadəlik onu təsirli edir:

  • Bir geliştirici, kodlaşdırma problemini həll etmək üçün süni intellekt köməkçisindən kömək istəyir.
  • Model, heç vaxt mövcud olmayan bir paketi idxal edən və ya quraşdırmağı tövsiyə edən bir həll yaradır.
  • Bir neçə modelin eyni halüsinasiyalı adı təkrarladığını görən təcavüzkar, həmin paketi npm, PyPI və ya başqa bir ictimai reyestrdə zərərli kodla qeyd edir. Bu, halüsinasiyanın əsl slopskvotting hücumuna çevrildiyi andır.
  • Eyni təklifi alan və onu təsdiqləməyən növbəti geliştirici, mühitinə arxa qapı olan, indi real olan paketi quraşdırır.

"Slopsquatting" termini Python Proqram Təminatı Fondunun Təhlükəsizlik üzrə Rezidentura Tərtibatçısı Set Larson tərəfindən məhz bu nümunəni təsvir etmək üçün istifadə edilmiş və Endryu Nesbitt tərəfindən populyarlaşdırılmışdır: "paket halüsinasiyası" hücum vektoruna çevrilmişdir.

Slopsquatting təkamülü: tədqiqat marağının necə real təhlükəyə çevrilməsi

Slopsquatting-in təkamülündə diqqətəlayiq olan təkcə konsepsiya deyil; onun tədqiqat müşahidəsindən sənədləşdirilmiş, ölçülə bilən hücum sinfinə nə qədər tez keçməsidir.

2023: İlk xəbərdarlıq əlaməti. Təhlükəsizlik üzrə tədqiqatçı Bar Lanyado bir neçə LLM-in dəfələrlə adlı bir paket tövsiyə etdiyini gördüm qucaqlaşmaq-üz-cli, mövcud deyil (əsl paket quraşdırılıb pip quraşdırma -U “huggingface_hub[cli]”Riski nümayiş etdirmək üçün o, həmin paketin boş versiyasını ictimai reyestrə yüklədi. Üç ay ərzində paket 30,000-dən çox yükləmə aldı və heç bir təşviqat aparılmadı. Halüsinasiyalı ad hətta Alibaba-dan araşdırma ilə əlaqəli bir depoda README-də də ortaya çıxdı və bu "saxta" adların real sənədlərə necə sıza biləcəyini və sonrakı slopskvotting hücumları üçün zəmin yarada biləcəyini erkən göstərdi.

2024: Risk tədqiqatçının bloq yazısından əsas texnologiya mövzusuna keçir. Mart ayında 2024, Qeydiyyat süni intellekt modellərinin tərtibatçıların yüklədikləri proqram paketi adlarını necə inamla icad etdikləri, bəzilərinin potensial olaraq zərərli proqram təminatı ilə zəhərləndiyi barədə məlumat verildi. Bu əhatə dairəsi texniki olaraq aşkarladığı şeylər üçün deyil, siqnal verdiyi şeylər üçün daha çox əhəmiyyət kəsb edirdi: qucaqlaşmaq-üz-cli işi artıq birdəfəlik maraq doğurmurdu; bu, bir il sonra əhatə dairəsini təsdiqləyəcək genişmiqyaslı akademik tədqiqatdan əvvəl əsas texnologiya mətbuatının qeyd edəcəyi qədər ciddi bir nümunənin ilk əlaməti idi.

2025: Problemin ilk ciddi, genişmiqyaslı ölçülməsi. “Sizin üçün bir paketimiz var! Kod Yaradan LLM-lər tərəfindən paket halüsinasiyalarının hərtərəfli təhlili” adlı məqalə (Spracklen və digərləri, təqdimatda) USENIX Təhlükəsizlik Simpoziumu) 576,000 Python və JavaScript kod nümunəsi üzərindən həm kommersiya (GPT-4, GPT-3.5), həm də açıq mənbə (CodeLlama, DeepSeek, WizardCoder, Mistral) 16 kod generasiya modelini sınaqdan keçirdi. Nəticələr slopskvottinqin təkamülündə aydın bir nöqtəni qeyd edir və onu lətifədən məlumatlara çevirir:

  • Modellər tərəfindən tövsiyə edilən paketlərin 19.7%-i mövcud deyildi.
  • Açıq mənbəli modellərdə halüsinasiyalar kommersiya modellərinə (5.2%) nisbətən daha çox (orta hesabla 21.7%) baş verib.
  • Test edilmiş bütün modellər üzrə tədqiqatçılar 205,000-dən çox unikal halüsinasiyalı paket adını qeydə alıblar ki, bu da birdən çox ekosistemdə davamlı slopskvotting hücumlarını stimullaşdırmaq üçün kifayət qədər böyükdür.

Tədqiqatın vacib bir detalı və ehtimal ki, slopsquatting-in təkamülünün yox olmaq əvəzinə sürətlənməsinin səbəbi, halüsinasiyalı adların təsadüfi olmaması və hər cəhddə dəyişməməsidir. Eyni modellər oxşar suallar verildikdə eyni uydurma adları təkrarlamağa meyllidirlər, bu da hücumçunun təxmin etməyə ehtiyac duymaması deməkdir. Onlar sadəcə model davranışını müşahidə etməli, təkrarlanan adları müəyyən etməli və onları əsl geliştiricidən əvvəl qeyd etməlidirlər. Bu təkrarlanmanın sonrakı təhlili göstərdi ki, tədqiqatçılar eyni sualları hər dəfə on dəfə təkrar işlətdikdə, halüsinasiyalı paket adlarının 43%-i hər dəfə ortaya çıxır ki, bu da halüsinasiyaların əksəriyyətinin birdəfəlik səs-küy deyil, təkrarlana bilən artefakt olduğunu sübut edir. Bu təkrarlanma, birdəfəlik halüsinasiyanı miqyaslı slopsquatting hücumuna çevirən şeydir.

2026: Təcrid olunmuş paketlərdən muxtar agentlərə. Təcrid olunmuş paketlərdən muxtar agentlərə qədər. Bu il, slopsquatting-in artıq bir geliştiricinin təklif olunan pip install və ya npm install əmrini kopyalayıb yapışdırması ilə məhdudlaşmadığına dair ən aydın dəlilləri ortaya çıxardı. 2026-cı ilin yanvar ayında təhlükəsizlik tədqiqatçısı Çarli Eriksen, süni intellekt kodlaşdırma agentlərinin artıq 237 depoda hallüsinasiyalı npm paketi olan react-codeshift (iki real aləti, jscodeshift və react-codemod-u birləşdirən ad) ilə bağlı təlimatlar yaydığını və agentlərin hələ də onu gündəlik quraşdırmağa çalışdığını aşkar etdi. Eriksen, hücum edən şəxs onu silahlandırmadan əvvəl adı özü qeydiyyatdan keçirdi. Ayrı bir şəkildə, qanuni eslint-plugin-unused-imports əvəzinə hallüsinasiyalı unused-imports adlı əsl zərərli paket, npm-in onu təhlükəsizlik nəzarəti altına almasına baxmayaraq, 2026-cı ilin əvvəlində təxminən 233 həftəlik yükləmə qeydə alırdı ki, bu da slopsquatting hücumunun işarələndikdən sonra belə qurbanları nə qədər cəlb edə biləcəyinin göstəricisidir. Daha yaxınlarda, 2026-cı ilin iyul ayında tədqiqatçılar, süni intellekt hallüsinasiyasını təcili inyeksiya ilə əlaqələndirən və istifadəçi adından hallüsinasiyalı resurs əldə edən süni intellekt kodlaşdırma agentinin hücumçu tərəfindən təmin edilən kodu işə salmasına imkan verən "HalluSquatting" adlı əlaqəli bir texnikanı təsvir etdilər. Bu, passiv quraşdırma riskindən agent inkişaf iş axınları daxilində aktiv uzaqdan kod icra vektoruna qədər slopskvatting təkamülünü genişləndirir.

Niyə "vibe kodlaşdırması" slopskvottinq hücumları üçün səthi genişləndirdi?

Süni intellekt tərəfindən yaradılan kod niş bir təcrübə olsaydı, Slopsquatting hücumlarının o qədər də əhəmiyyəti olmazdı. Amma belə deyil. Kod köməkçilərinin, muxtar agentlərin və tərtibatçıların kodu işə salmadan əvvəl onu getdikcə daha az nəzərdən keçirdiyi "vibe kodlaşdırma" iş axınlarının artması proqram təminatı hücum səthini iki konkret şəkildə dəyişdirdi və hər ikisi də Slopsquatting-in təkamülünü sürətləndirir:

  • Giriş nöqtəsi artıq yalnız geliştirici deyil. Əvvəllər tiposquatting hücumu tək bir insanın yazma səhvindən asılı idi. İndi səhv modelin özündə yarana və oxşar suallar verən və eyni halüsinasiyalı tövsiyə alan yüzlərlə fərqli tərtibatçıya yayıla bilər və tək bir slopsquatting hücumunun əhatə dairəsini artıra bilər.
  • Hücum səthi zəncirin daha yuxarı hissəsinə doğru irəliləyib. Artıq insanın yazdığı kodu izləmək kifayət deyil. Komandalar həmçinin süni intellekt köməkçisinin təklif etdiyi asılılıqları, qoşulduğu MCP serverlərini və paketləri birbaşa insan yoxlaması olmadan avtonom şəkildə quraşdıran agentləri izləməlidirlər. Ənənəvi AppSec, depoları və insanı nəzərdən keçirmək üçün qurulmuşdur. commits, heç vaxt geliştirici, süni intellekt və paket qeydiyyatı arasındakı bu yeni qarşılıqlı təsiri müşahidə etmək üçün nəzərdə tutulmamışdı, hazırda isə slopsquatting hücumları məhz burada gizlənir.

Bunların heç biri generativ süni intellektin təbiətcə təhlükəsiz olmadığı anlamına gəlmir. Bu o deməkdir ki, o, ənənəvi təhlükəsizlik alətlərinin tutmaq üçün yaradılmadığı yeni bir təchizat zənciri riski növü təqdim edir və bu risk artıq hər hansı bir xarici asılılığa tətbiq etdiyimiz eyni yoxlama prinsiplərini tələb edir: standart olaraq etibar etməyin, mənbəni yoxlayın və hər bir geliştiricinin yaddaşına və ya sayıqlığına etibar etmək əvəzinə, həmin yoxlamanı avtomatlaşdırın. Bu avtomatlaşdırma istənilən real slopskvotting qarşısının alınması strategiyasının təməlidir.

Slopsquatting qarşısının alınması: komandalar bu gün nə edə bilərlər

Xoş xəbər budur ki, slopsquatting qarşısının alınması ekzotik alətlər tələb etmir. Bu, artıq mövcud olan asılılıq gigiyenası təcrübələrinin sistematik şəkildə tətbiqini tələb edir, lakin bir çox komandalar etibar etdikləri süni intellekt kodu "təklif etdiyi" anda yumşalırlar. Effektiv slopsquatting qarşısının alınması yanaşması adətən aşağıdakıları birləşdirir:

  • Quraşdırmadan əvvəl hər hansı yeni paketi əl ilə yoxlayın, xüsusən də süni intellekt köməkçisinin təklifindən irəli gəldikdə. Rəsmi reyestrdə mövcudluğunu, kimin saxladığını, nə vaxt dərc olunduğunu və yükləmə rəqəmlərinin real görünüb-görünmədiyini təsdiqləyin. Bu tək vərdiş istənilən komanda üçün mövcud olan ən ucuz slopsquatting qarşısının alınması formasıdır.
  • Süni intellekt tərəfindən yaradılan kodun standart olaraq təhlükəsiz olduğunu heç vaxt düşünməyin. Kod parçasının "işlədiyi" onun asılılıqlarının qanuni olduğu anlamına gəlmir. Asılılıq icmalı kod icmalının bir hissəsi olmalıdır, istisna deyil.
  • Kilid fayllarından və heş doğrulamasından istifadə edin dəqiq versiyaları pinləmək və səssiz yeniləmənin əvvəlcə yoxlanılandan fərqli bir paketdə dəyişdirilməsinin qarşısını almaq.
  • Məlum CVE-lərdən kənar risk nümunələrini qeyd edən asılılıq taramasını tətbiq edin: anomal paketlər, mövcud olanlara şübhəli şəkildə bənzəyən adlar, heç bir qeydi olmayan yeni dəstəkləyicilər və ya qeyri-adi davranışa malik quraşdırma skriptləri. Demək olar ki, heç bir tarixçəsi olmayan və "demək olar ki" tanış bir şeyin adını çox təqlid edən yeni dərc edilmiş paket, indiyə qədər sənədləşdirilmiş əksər slopskvotting hücumlarının arxasındakı nümunədir.
  • Dövlət reyestrlərinə eyni şübhə ilə yanaşıncism, digər təsdiqlənməmiş xarici mənbə kimi. Bu faktdır ki, pip quraşdırma or npm yükləyin səhv etməmək qanuniliyin sübutu deyil.
  • Qatar inkişaf qrupları Süni intellektlə dəstəklənən kodlaşdırmanın nəyin quraşdırıldığını yoxlamaq məsuliyyətini aradan qaldırmadığı; sadəcə iş axınına hər hansı ciddi sürüşmənin qarşısının alınması planının bir hissəsi kimi daxil edilməli olan bir addım əlavə etdiyi faktı.

Bu tədbirlərin heç biri özlüyündə yeni deyil. Dəyişən miqyasdır: asılılıq təklifi artıq Stack Overflow-dan və ya həmkarından deyil, eyni halüsinasiyalı səhvi minlərlə fərqli tərtibatçıya təkrarlaya bilən bir modeldən gəldikdə, əl ilə yoxlama, hələ də zəruri olsa da, öz-özünə kifayət etməyi dayandırır. Buna görə də daha çox komanda öz daxilində bu təbəqəni avtomatlaşdırır. Proqram Təminatı Tərkibi Təhlili (SCA) alətlər, bunu fərdi geliştirici intizamına buraxmaqdansa.

Bu əvvəlcədəndircisniyə ASPM platformalarından kimi Xygenie Şübhəli asılılıq aşkarlamasını, yazı səhvlərini, asılılıq qarışıqlığını və məlum zərərli paketləri əhatə edən eyni açıq mənbəli və süni intellekt asılılığı təhlilinə qurun pipeline, buna görə də slopsquatting-in qarşısının alınması hər bir geliştiricinin süni intellekt köməkçisi yeni bir asılılıq təklif etdikdə onu yoxlamağı yadda saxlamasından asılı deyil.

FAQ

Slopsquatting hücumu tiposquatting hücumu ilə eynidirmi?

Tam olaraq belə deyil. Hər ikisi də onu quraşdıran hər kəsi aldatmaq üçün saxta paket adının qeydiyyatdan keçirilməsini əhatə edir, lakin xətanın mənbəyi fərqlidir. Yazı tiposquatting insan yazma səhvlərindən istifadə edir. Slopsquatting hücumu süni intellekt modelləri tərəfindən icad edilən (hallüsinasiya edilmiş) paket adlarından istifadə edir və təcavüzkar qanuni olaraq mövcud olmadan əvvəl onları qeydiyyata alır.

Paket meneceri bu cür hücumun qarşısını avtomatik olaraq ala bilərmi?

Tam yox, məhz buna görə də slopsquatting qarşısının alınması paket meneceri səviyyəsində dayandırıla bilməz. Əgər təcavüzkar halüsinasiyalı paketi geliştirici quraşdırmağa çalışmazdan əvvəl qeydiyyata alırsa, quraşdırma heç bir səhvsiz başa çatacaq, çünki paket zərərli olsa da, həqiqətən mövcuddur. Effektiv qarşısının alınması üçün paketin mənşəyinin və davranışının əlavə yoxlanılması tələb olunur.

Bu, yalnız açıq mənbəli modellərə təsir edirmi?

Xeyr. Spracklen və digərlərinin tədqiqatı, kommersiya modelləri də daxil olmaqla, sınaqdan keçirilmiş hər bir modeldə halüsinasiyaların olduğunu aşkar etdi, baxmayaraq ki, bu, xeyli aşağı nisbətdədir (qiymətləndirilən açıq mənbəli modellər üçün 5.2% və 21.7%). Heç bir model problemdən tamamilə azad deyil və bu da slopsquatting-in təkamülünün ümumilikdə süni intellektlə dəstəklənən kodlaşdırmanın böyüməsi ilə ayaqlaşmasının səbəblərindən biridir.

Bu nəzəri riskdir, yoxsa artıq istismar olunub?

The qucaqlaşmaq-üz-cli Bir tədqiqatçı tərəfindən yüklənmiş və üç ay ərzində 30,000-dən çox dəfə heç bir təşviq olmadan yüklənmiş boş bir paket, riskin yalnız nəzəri olmadığını göstərir: halüsinasiyalı bir adın yalnız kiminsə onu əsl slopskvotting hücumuna çevirməsi üçün müxtəlif suallar arasında kifayət qədər ardıcıl olması lazımdır.

sca-tools-proqram-kompozisiya-analiz-alətləri
Proqram təminatı risklərinizi prioritetləşdirin, aradan qaldırın və təhlükəsizləşdirin
Pulsuz Hesabınızı əldə edin.
Kredit kartı tələb olunmur.

Proqram təminatınızın hazırlanması və çatdırılmasını təmin edin

Xygeni Məhsul Dəsti ilə