Жылдам жауап: NPM жеткізу тізбегіне шабуылдар сенімді қызмет көрсетушінің тіркелгісін бұзу арқылы жұмыс істейді немесе CI/CD токен, әзірлеушілер қазірдің өзінде сенетін пакеттің зиянды нұсқасын жариялау және сол пакеттің орнату сценарийлеріне немесе құрт логикасына қалғанын жасауға мүмкіндік беру. 2025 жылдың тамыз айы мен 2026 жылдың ортасы аралығында бұл үлгі тізілім тарихындағы npm пакет жеткізу тізбегіндегі шабуылдардың ең үлкен толқынын тудырды, соның ішінде бор/түзету ұрлығы, Шай-Хулуд құртыжәне аптасына 100 миллион рет жүктелетін пакетте жасырылған ұлттық зиянды бағдарлама. Түзету код түскеннен кейін сканерлеу емес. Ол зиянды пакеттерді орнатпас бұрын ұстап, бақылауда. pipeline бұл шабуылдардың нақты мінез-құлқы үшін.
Әрбір орнату - бұл сенім актісі, ал шабуылдаушылар мұны біледі
Әзірлеуші іске қосылады npm орнатуСол бір команданың артында жүздеген, кейде мыңдаған пакеттерден тұратын тәуелділік ағашы орналасқан, олардың көпшілігін әзірлеуші ешқашан кездестірмейтін адамдар жазып, қолдайды. Ешкім бұл ағашты жол-жол қарастырмайды. Ешкімнің уақыты жоқ.
Бұл сенім нысана болып табылады. Шабуылдаушы үшін Fortune 500 брандмауэрінде нөлдік күнді табудан гөрі аптасына 2.6 миллиард жүктеуі бар бір npm қолдаушысын фишингтеу арзанырақ. Npm жеткізу тізбегіндегі шабуылдар дәл осы асимметрияны пайдаланады, ал 2025-2026 жылдардағы толқын бұл эксплуатацияның қаншалықты кең таралғанын көрсетеді: бастап өздігінен көбейетін құрттарға оқшауланған типосквотинг өздерінің зиянды пакеттерін кез келген адам әрекет ете алатыннан тезірек жариялайды.
NPM жеткізу тізбегіне шабуыл ретінде не саналады
npm жеткізу тізбегіне шабуыл - бұл шабуылдаушы npm таратылымына зиянды кодты енгізетін кез келген оқиға. pipeline зиянды бағдарлама әдеттегі тәуелділік жаңартуы ретінде жасырын түрде келетіндей етіп, нысананың өз код базасына емес. Кіру нүктесі әдетте үш нәрсенің бірі болып табылады: қолдаушының ұрланған тіркелгі деректері, ұрланған жарияланым немесе CI/CD токен немесе бұзылған құрастыру pipeline шабуылдаушының атынан жариялауға алданады. npm пакеттері транзитивті тәуелділіктерді автоматты түрде тартатындықтан, бір ғана бұзылған пакет оны ешқашан тікелей тәуелділік ретінде жарияламаған қолданбаларға жете алады.
Уақыт шкаласы: 2025-2026 жылдардағы ең ірі npm жеткізу тізбегіне шабуылдар
Әрбір npm пакет жеткізу тізбегіне шабуыл жасаудың артындағы үлгі
Нақты мәліметтерді алып тастаңыз, жоғарыдағы әрбір оқиға дерлік төрт қадамнан тұрады:
- Жүйені емес, жеке басын құрбан ету. Фишингтік қолдаушы, ағып кеткен npm токені, ұрланған GitHub PAT немесе алынған OIDC токені CI/CD жүгіруші жады. Шабуылдаушы тізілімді бұзбайды. Олар біреудің кілтін қарызға алады.
- Әзірлеушілер бұрыннан сенетін атаумен жариялаңыз. Нақты пакет атауы жұмыс істеген кезде теру қателерін түзетудің қажеті жоқ. Міне, сондықтан бұл шабуылдар автоматтандырылған жаңартуларға қарсы тиімдірек болады. pipelines: жаңарту толығымен заңды болып көрінеді.
- Біреу оны қарап шықпас бұрын іске қосыңыз. Зиянды орнату сценарийлері, шатастырылған пайдалы жүктемелер немесе тек белгілі бір жағдайларда ғана іске қосылатын ұйқы коды сәтті орындайды npm орнату жоспарланған қауіпсіздік сканерлеуі оны көрмес бұрын, көбінесе әзірлеушінің ноутбугында жұмыс істейді.
- Жалғастыра беріңіз және барған сайын таратыңыз. Шай-Хулуд және оның ұрпақтары ұрлаған деректерін пайдаланып, келесі уланған пакетті автоматты түрде жариялайды, бұл бір ғана келісімді тәуелділік графигі бойынша тізбекті реакцияға айналдырады.
Неліктен әдеттегі қорғаныс оны жіберіп алады
AppSec құралдарының көпшілігі репозиторийде не бар екенін талдау үшін жасалған: белгілі CVE, статикалық код үлгілері, лицензия мәселелері. Бұл қажет, бірақ бұл шабуыл класы үшін құрылымдық тұрғыдан тым кеш келеді. Сканер тәуелділікті көрген кезде, орнату скрипті әзірлеушінің компьютерінде орындалып қойған болуы мүмкін. Дәстүрлі антивирус және EDR пакеттік тізілімдерді емес, операциялық жүйені бақылайды, сондықтан оларда тәуекел бірлігі ретінде «жаңа npm шығарылымы» туралы түсінік жоқ. TanStack және Red Hat оқиғалары көрсеткендей, тіпті құрастыру тұтастығы туралы куәліктер де... SLSA provenance шабуылдаушы оларға қол қойған жеке басын заңды түрде тауып алған кезде көмектеспейді: қолтаңба жарамды, бірақ пакет әлі де зиянды.
Бұл npm жеткізу тізбегіндегі шабуылдар кезіндегі олқылық, зиянды бағдарламаның қолтаңбасы пайда болғанға дейін және дәстүрлі сканер іздейтін пакет іске қосылғанға дейін, жарияланымда және орнату кезінде орын алады.
Келесі npm жеткізу тізбегінің шабуылын қалай тоқтатуға болады
Бүгінгі таңда әрбір инженерлік топ қабылдай алатын процестік тәртіптің бір бөлігі:
- Pin тәуелділіктері және commit құлыптау файлдары, сондықтан автоматты жаңарту жаңа ғана жарияланған зиянды нұсқаны үнсіз енгізе алмайды.
- Орнатудан кейінгі скрипттерді өшіру немесе сынақ ортасында орнату әдепкі бойынша; көптеген пакеттер орнату кезінде кездейсоқ кодты орындаудың қажеті жоқ.
- npm жариялау тіркелгілері үшін аппараттық қамтамасыз етілген MFA күшін енгізу, борды, жөндеуді және Qix тіркелгісін бұзған фишинг жолын жауып тастады.
- Ауқым және айналдыру CI/CD токендер агрессивті түрдежәне жүгіруші жадындағы OIDC токендерін іске асырудың егжей-тегжейлі бөлігі емес, қорғауға тұрарлық тіркелгі деректері ретінде қарастырыңыз.
- Құлыпты ашу-енгізу-қайта құлыптау үлгісіне назар аударыңыз in CI/CD: тармақты қорғау ережесі өшірілген, commit ереже қайта қосылды, барлығы қысқа мерзімде. Бұл қайталанатын қолтаңба pipeline- деңгейдегі жеткізу тізбегінің бұзылуы.
Процесстік тәртіп таусылған жерде
Процесс тәртібі әсер етуді азайтады. Ол зиянды пакетті жарияланған сәтте ұстамайды және график арқылы адам сұрыптай алатыннан тезірек таралып жатқан құртты ұстамайды. Xygeni компаниясының жеткізу тізбегінің қауіпсіздігі осы деңгей үшін жасалған.
Xygeni's MEW (зиянды бағдарламалар туралы ерте ескерту) npm, PyPI және Maven-ге жарияланған жаңа пакеттерді үздіксіз талдайды, зиянды бағдарламаларды қолтаңба пайда болғаннан кейін емес, бұрын анықтайды және расталған қауіптерді қайта жібереді. Xygeni's өзіндік анықтау қозғалтқышы. Тәуелділік брандмауэрі npm, PyPI, Maven, NuGet және RubyGems бағдарламаларын нақты уақыт режимінде сканерлейді және зиянды орнатуларды әзірлеушінің машинасына немесе құрастырмасына жеткенге дейін блоктайды. CI/CD аномалияны анықтау сағаттар pipelines TanStack ымыраға келуі сияқты оқиғалардың артындағы мінез-құлық үлгісі үшін, соның ішінде толық аудит ізі бар unlock-inject-relock тізбегін қоса алғанда. Және Xygeni's Жасанды интеллект арқылы сұрыптау және қалпына келтіру үшінші тарап сканерлерінің нәтижелеріне де қолданылатын болса, топтар бұл олқылықты жою үшін бар құралдарды алып тастаудың қажеті жоқ.
Жиі қойылатын сұрақтар: npm жеткізу тізбегіне шабуылдар
npm жеткізу тізбегіне шабуыл дегеніміз не?
Бұл зиянды код мақсатты қолданбаға нысананың өз коды арқылы емес, сенімді npm тәуелділігі арқылы жететін шабуыл, әдетте шабуылдаушы қолдау көрсетушінің тіркелгісін, жариялау токенін немесе CI/CD pipelineтұлғасы.
Ең үлкен npm жеткізу тізбегіне шабуыл қандай болды?
Жарылыс радиусы бойынша, 2025 жылдың қыркүйегіндегі бор/түзету арқылы жасалған шабуыл ең ірілерінің бірі болып табылады: аптасына 2.6 миллиард жүктеу саны бар 18 пакет бір фишингтік қызмет көрсетуші тіркелгісі арқылы бұзылды. Техникалық жаңалығы бойынша, Shai-Hulud npm тарихындағы алғашқы өздігінен таралатын құрт ретінде маңызды бетбұрыс болды.
npm пакет жеткізу тізбегіне шабуыл әдетте қалай басталады?
Әрқашан дерлік ұрланған жеке куәлікпен: фишингтік қолдаушы, жарияланған токен немесе ұрланған CI/CD npm-ге техникалық кедергі жасаудың орнына, жүгірушінің жадынан алынған OIDC токені сияқты тіркелгі деректері.
Антивирус немесе EDR npm жеткізу тізбегінің шабуылын тоқтата ала ма?
Сенімді емес. EDR операциялық жүйені бақылайды және пакет тізілімдерін түсінбейді, ал антивирус қолтаңбаға негізделген, ол кез келген қолтаңба пайда болғанға дейін жарияланған зиянды бағдарламаларға қарсы істен шығады. Бұл шабуыл класын тоқтату тек соңғы нүктеде ғана емес, жариялау және орнату нүктесінде де бақылауды қажет етеді.
ма SLSA provenance немесе құрылыс аттестациясы бұған жол бермейді ме?
Ол дәлелдейді pipeline құрастыру кезінде өзі өзгертілмеген. Бұл құрастыруды іске қосқан жеке куәліктің бұзылмағанын дәлелдемейді, себебі TanStack және Red Hat оқиғалары зиянды пакеттерге бекітілген жарамды куәліктермен көрсетілген.
Команда зиянды npm пакетін орнатпас бұрын қалай анықтай алады?
Жаңадан жарияланған пакеттерде үздіксіз, қолтаңбаға дейінгі зиянды бағдарламаларды талдауды іске қосу арқылы, бұл зиянды бағдарламалар туралы ерте ескерту жүйесі мен тәуелділік брандмауэрі репозиторийде бар кодты тек пост-хок осалдықтарын сканерлеуге ғана емес, сонымен қатар жасауға арналған.
Неден бастау керек
NPM жеткізу тізбегіне шабуылдар баяуламайды, және Шай-Хулудтан бергі тренд сызығы автоматтандырудың көбірек бағытын көрсетеді, кем емес. Келесі науқанға ең жақсы позицияланған командалар - әрбір npm орнатуын әдеттегі оқиға ретінде қарастыруды тоқтатып, тізілімді бақылай бастағандар, pipelineжәне соңғы нүкте бір қосылған шабуыл беті ретінде.
Xygeni әзірлеушілерінің жоспарына MEW және Dependency Firewall қамтуы кіреді 25 репозиторийге дейін тегін. Бұл тәуелділік ағашында не бар екенін көруге болатын орын.





