Npm tarneahela rünnakud

NPM-i tarneahela rünnakud: suurimad intsidendid ja kuidas neid peatada

Kiire vastus: NPM-i tarneahela rünnakud toimivad usaldusväärse hooldaja konto või muu sellise ohtu seadmise teel. CI/CD token, avaldades pahatahtliku versiooni paketist, mida arendajad juba usaldavad, ja lastes selle paketi installiskriptidel või ussiloogikal ülejäänu teha. Ajavahemikul augustist 2025 kuni 2026. aasta keskpaigani tekitas see muster registri ajaloo suurima npm-paketi tarneahela rünnakute laine, sealhulgas kriidi/silumiskatse kaaperdamise, Shai-Huludi ussja riiklikku pahavara, mis on peidetud paketti, mida laaditakse alla 100 miljonit korda nädalas. Parandus ei skaneeri koodi pärast selle saabumist. See püüab pahatahtlikke pakette kinni enne nende installimist ja jälgib neid. pipeline täpse käitumise eest, mida need rünnakud jagavad.

Iga install on usaldusakt ja ründajad teavad seda

Arendaja töötab npm installiSelle ühe käsu taga peitub sõltuvuste puu sadade, mõnikord tuhandete pakettidega, millest enamiku on kirjutanud ja haldavad inimesed, kellega arendaja kunagi ei kohtu. Keegi ei vaata seda puud rida-realt üle. Kellelgi pole selleks aega.

See usaldus on sihtmärk. Ründajal on odavam õngitseda ühte npm-i hooldajat, kellel on 2.6 miljardit allalaadimist nädalas, kui leida nullpäeva rünnak Fortune 500 tulemüürist. Npm-i tarneahela rünnakud kasutavad ära just seda asümmeetriat ja 2025.–2026. aasta laine näitab, kui kaugele see ärakasutamine on laienenud: alates isoleeritud tüposkvatt isepaljunevateks ussideks mis avaldavad oma pahatahtlikke pakette kiiremini, kui ükski inimene reageerida suudab.

Mis loetakse npm tarneahela rünnakuks

NPM-i tarneahela rünnak on iga juhtum, kus ründaja lisab NPM-i jaotusvõrku pahatahtliku koodi. pipeline mitte sihtmärgi enda koodibaasi, nii et pahavara saabub maskeerituna tavapärase sõltuvusuuendusena. Sisenemispunkt on tavaliselt üks kolmest asjast: hooldaja varastatud volitused, varastatud avaldamis- või CI/CD token või ohustatud versioon pipeline mis meelitatakse ründaja nimel avaldama. Kuna npm-paketid tõmbavad transitiivsed sõltuvused automaatselt sisse, võib üksik ohustatud pakett jõuda rakendusteni, mis pole seda kunagi otsese sõltuvusena deklareerinud.

Ajajoon: suurimad NPM-i tarneahela rünnakud aastatel 2025–2026

Npm tarneahela rünnakute ajajoon
Suurimate NPM-i tarneahela rünnakute ajajoon, 2025–2026 Kaheksa npm tarneahelarünnakut augustist 2025 kuni juunini 2026. Oranž tähistab ise levivaid ussikampaaniaid; hall tähistab volituste või märkide ohtu seadmist. August 26, 2025 Nx / s1 nurksuse kompromiss Avaldamisluba varastati September 8, 2025 kriidi/silumise kaaperdamine Õngitsetud hooldaja konto September 14, 2025 Shai-Huludi uss Esimene isepaljunev uss November 24, 2025 Shai-Hulud 2.0 Välditavam ussivariant Mar 2026 Axios rahvusriigi pahavara Riiklik pahavara, 100 miljonit dl/nädalas aprill 2026 SAP npm kompromiss Enterprise-soomustega ussimuster Võib 11 2026 TanStack CI/CD kompromiss CI-tokeni vargus, 84 versiooni Juuni 1, 2026 Red Hat nimeruumi kompromiss Kehtiv SLSA, aga ikkagi pahatahtlik Ise leviv uss Volikirja või märgi ohtu sattumine
Kaheksa npm tarneahelarünnakut, august 2025 kuni juuni 2026. Oranž tähistab ise levivaid ussikampaaniaid.

Iga npm-i pakendi tarneahela rünnaku taga olev muster

Kui üksikasjad kõrvale jätta, järgib peaaegu iga ülaltoodud juhtum samu nelja sammu:

  • Tee kompromisse identiteeti, mitte süsteemi. Õngitsusjuhtumi ohvriks langenud hooldaja, lekkinud npm-token, varastatud GitHubi PAT või saidilt tõmmatud OIDC-token CI/CD jooksja mälu. Ründaja ei riku registrit. Ta laenab kellegi võtme selle avamiseks.
  • Avalda nime all, mida arendajad juba usaldavad. Kui päris paketinimi töötab, pole vaja kirjavigu. See teebki need rünnakud automaatsete värskenduste vastu nii tõhusaks. pipelines: uuendus tundub täiesti korrektne.
  • Jookse enne, kui keegi seda arvustab. Pahatahtlikud installiskriptid, hägustatud kasulikud koormused või uinuv kood, mis aktiveerub ainult teatud tingimustel, käivitavad kohe npm installi töötab, sageli arendaja sülearvutil, ammu enne, kui plaaniline turvakontroll seda üldse näeks.
  • Püsivad ja levivad üha enam. Shai-Hulud ja selle järeltulijad kasutavad varastatud volitusi järgmise mürgitatud paketi automaatseks avaldamiseks, muutes üheainsa ohustatud paketi ahelreaktsiooniks kogu sõltuvusgraafikus.

Miks tavalised kaitseliinid sellest mööda vaatavad

Enamik AppSec tööriistu loodi selleks, et analüüsida repositooriumis juba olevat: teadaolevaid CVE-sid, staatilisi koodimustreid, litsentsiprobleeme. See on vajalik, kuid struktuurilt saabub see selle rünnakuklassi jaoks liiga hilja. Selleks ajaks, kui skanner sõltuvust näeb, võib installiskript arendaja masinas juba olla käivitunud. Traditsiooniline viirusetõrje ja EDR jälgivad operatsioonisüsteemi, mitte paketiregistreid, seega puudub neil „uue npm-väljalaske” kontseptsioon riskiühikuna. Ja nagu TanStacki ja Red Hati intsidendid näitavad, isegi ehituse terviklikkuse kinnitamine, nagu SLSA provenance ei aita, kui ründaja on neid allkirjastava identiteedi õiguspäraselt hõivanud: allkiri on kehtiv, pakett on ikkagi pahatahtlik.

Lünk, mida need npm tarneahela rünnakud ära kasutavad, asub just avaldamise ja installimise ajal, enne pahavara allkirja olemasolu ja enne, kui pakett on käivitunud kõikjal, kuhu traditsiooniline skanner otsiks.

Kuidas peatada järgmine NPM-i tarneahela rünnak?

Osa sellest on protsessidistsipliin, mida iga insenerimeeskond saab tänapäeval omaks võtta:

  • Sõltuvuste pin-koodid ja commit lukustusfailid, seega ei saa automaatne värskendus vaikselt äsja avaldatud pahatahtlikku versiooni sisse tõmmata.
  • Keela või liivakasti installijärgsed skriptid Vaikimisi ei pea enamik pakette installimise ajal suvalist koodi käivitama.
  • Riistvarapõhise MFA jõustamine NPM-i avaldamiskontode jaoks, sulgedes täpselt andmepüügitee, mis kahjustas Chalk'i, Debugi ja Qixi kontot.
  • Ulatus ja pööramine CI/CD märgid agressiivseltja käsitle jooksja mälus olevaid OIDC-tokeneid kaitsmist vääriva volitusena, mitte rakenduse detailina.
  • Jälgige avamise-sisestamise-uuesti lukustamise mustrit in CI/CD: haru kaitsereegel on keelatud, a commit lükati edasi, reegel taaslubati, kõik lühikese aja jooksul. See on korduv tunnusjoon pipeline-taseme tarneahela kompromiss.

Kus protsessidistsipliin otsa saab

Protsessidistsipliin vähendab nakatumisriski. See ei taba pahatahtlikku paketti avaldamise hetkel ega ussi, mis juba levib graafikus kiiremini, kui inimene suudab triaažida. See on kiht, mille jaoks Xygeni tarneahela turvalisus on loodud.

Xygeni oma MEW (pahavara varajane hoiatus) analüüsib pidevalt uusi npm-i, PyPI-sse ja Mavenisse avaldatud pakette, tabades pahavara enne allkirja olemasolu, mitte pärast seda, ja edastades kinnitatud ohud tagasi Xygeni oma oma tuvastusmootor. Sõltuvus tulemüür skannib reaalajas npm-i, PyPI-d, Mavenit, NuGeti ja RubyGemsi ning blokeerib pahatahtlikud installid enne, kui need arendaja masinasse või järku jõuavad. CI/CD anomaalia tuvastamine kellad pipelinetäpselt käitumismustri jaoks, mis on seotud selliste intsidentidega nagu TanStacki kompromiteerimine, sealhulgas avamise-sisestamise-uuesti lukustamise järjestus koos täieliku auditeerimislooga. Ja kuna Xygeni oma Tehisintellektil põhinev triaaž ja parandusmeetmed kehtivad ka kolmandate osapoolte skännerite leidude kohta, ei pea meeskonnad selle lünga täitmiseks olemasolevaid tööriistu välja juurima.

KKK: npm tarneahela rünnakud

Mis on NPM tarneahela rünnak?

See on rünnak, kus pahatahtlik kood jõuab sihtrakenduseni usaldusväärse npm-sõltuvuse, mitte sihtmärgi enda koodi kaudu, tavaliselt seetõttu, et ründaja on kahjustanud hooldaja kontot, avaldamistokenit või muud sellist. CI/CD pipelineidentiteet.

Mis oli suurim NPM-i tarneahela rünnak?

Plahvatuse ulatuse poolest on 2025. aasta septembri kriidi-/silumisviiruse kaaperdamine üks suurimaid: ühe andmepüügiga hõlmatud hooldajakonto kaudu ohustati 18 paketti, mille iganädalane allalaadimiste arv oli kokku 2.6 miljardit. Tehnilise uudsuse poolest oli Shai-Hulud olulisem pöördepunkt, kuna see oli npm-i ajaloos esimene isepaljunev uss.

Kuidas npm-i paketi tarneahela rünnak tavaliselt algab?

Peaaegu alati varastatud identiteediga: andmepüügi ohvriks langenud hooldaja, lekkinud avaldamisloa või varastatud identiteediga CI/CD volikiri, näiteks jooksja mälust võetud OIDC-token, mitte tehniline sissemurdmine npm-i endasse.

Kas viirusetõrje või EDR saab peatada NPM tarneahela rünnaku?

Mitte usaldusväärne. EDR jälgib operatsioonisüsteemi ega mõista paketiregistreid ning viirusetõrje on signatuuripõhine, mis ei toimi enne signatuuri olemasolu avaldatud pahavara puhul. Selle rünnakuklassi peatamiseks on vaja jälgimist avaldamise ja installimise hetkel, mitte ainult lõpp-punktis.

Kas SLSA provenance või ehituse atesteerimine seda vältida?

See tõestab, pipeline ennast ei muudetud ehituse ajal. See ei tõesta, et ehituse käivitanud identiteeti ei ohustatud, nagu näitasid nii TanStacki kui ka Red Hati intsidendid pahatahtlikele pakettidele lisatud kehtivate atesteerimistega.

Kuidas saab meeskond pahatahtliku npm-paketi enne selle installimist tuvastada?

Käivitades äsja avaldatud pakettidel pidevat, allkirjastamiseelset pahavara analüüsi, milleks pahavara varajase hoiatamise süsteem ja sõltuvuste tulemüür on loodud, selle asemel, et loota üksnes juba repositooriumis oleva koodi järelkontrollile haavatavuste kontrollimisel.

Kust alustada

NPM-i tarneahelarünnakud ei aeglustu ja trendijoon pärast Shai-Huludi näitab pigem automatiseerituse suurenemist, mitte vähenemist. Järgmiseks kampaaniaks on kõige paremini positsioonil need meeskonnad, kes on lõpetanud iga NPM-i installi käsitlemise rutiinse sündmusena ja hakanud jälgima registrit, pipelineja lõpp-punkt ühe ühendatud rünnakupinnana.

Xygeni arendajapakett sisaldab MEW ja Dependency Firewalli katvust kuni 25 repositooriumi jaoks tasuta. See on mõistlik koht, et näha, mis juba sõltuvuspuus asub.

sca-tööriistad-tarkvara-kompositsiooni-analüüsi-tööriistad
Tarkvarariskide prioriseerimine, leevendamine ja turvamine
Hankige oma tasuta konto.
Krediitkaarti pole vaja.

Turvaline tarkvaraarendus ja -tarne

Xygeni tootekomplektiga