Shai-Hulud 3.0 - npm վնասակար ծրագիր մաշված է - shai-hulud վնասակար ծրագիր

Shai-Hulud 3.0: npm վնասակար ծրագիրը մաշված է

TL. DR

Shai-Hulud 3.0-ը shai-hulud npm վնասակար ծրագրի վերջին զարգացումն է, որը… ինքնաբազմացող մատակարարման շղթայի որդ npm փաթեթների չարաշահում՝ մուտքային տվյալները գողանալու, ավտոմատ կերպով տարածելու և վտանգի ենթարկելու համար CI/CD միջավայրեր: Նախորդ ալիքներից տարբերվող Shai-Hulud 3.0-ը կատարելագործում է իր տարածման տրամաբանությունը, թիրախավորում է հայտնի առջևի գրադարանները և արագացնում է վարակը պահպանողի տոկենների չարաշահման միջոցով:

Արդյունքում, այս shai-hulud վնասակար ծրագիրը ևս մեկ անգամ ապացուցում է, որ ժամանակակից npm մատակարարման շղթայի հարձակումները այլևս չեն հիմնվում զրոյական օրերի, այլ ավտոմատացման, վստահության չարաշահման և մշակողների աշխատանքային հոսքերի վրա։

Ի՞նչ է Շայ-Հուլուդ 3.0-ը։

Shai-Hulud 3.0-ը shai-hulud npm վնասակար ծրագրի երրորդ հաստատված ալիքն է, որը հաջորդում է Shai-Hulud սկզբնական որդին և Shai-Hulud 2.0-ի լայնածավալ բռնկմանը։

Սակայն այս տարբերակը չի ներկայացնում արմատապես նոր շահագործում։ Փոխարենը, այն բարելավում է արդյունավետությունը, գաղտնիությունը և թիրախավորումը։ Այլ կերպ ասած, Shai-Hulud 3.0-ը օպտիմալացնում է մատակարարման շղթայի հարձակման մոդելը, այլ ոչ թե վերափոխում այն։

Ամենակարևորը, վնասակար ծրագիրը շարունակում է գործել որպես որդ, այլ ոչ թե որպես միանգամյա վնասակար փաթեթ։

Ինչու է Shai-Hulud 3.0-ը կարևոր npm անվտանգության համար

Առաջին հայացքից Shai-Hulud 3.0-ը կարող է թվալ «պարզապես ևս մեկ վնասակար npm փաթեթ»։ Այնուամենայնիվ, հենց այդ ենթադրությունն է պատճառը, որ այս արշավը հաջողության է հասնում։

Քանի որ npm էկոհամակարգերը մեծապես կախված են հետևյալից.

  • անուղղակի վստահություն
  • ավտոմատացված տեղադրումներ
  • պահպանողի լիազորագրեր
  • CI/CD pipelines

Մեկ խախտված թոքենը կարող է արագորեն վերածվել NPM մատակարարման շղթայի ամբողջական վնասակար ծրագրերի բռնկման։

Արդյունքում, shai-hulud վնասակար ծրագիրը շահագործման կարիք չունի։ Այն զենք է դարձնում սովորական աշխատանքային հոսքերը։

Shai-Hulud 3.0 հարձակման վեկտոր. Ինչպես է տարածվում npm վնասակար ծրագիրը

Սկզբնական վարակը վնասակար npm փաթեթի միջոցով

Shai-hulud npm վնասակար ծրագիրը էկոհամակարգ է ներթափանցում օրինական կամ վարակված պահպանողների հաշիվների ներքո հրապարակված տրոյանացված փաթեթների միջոցով։

Shai-Hulud 3.0 ալիքում հետազոտողները դիտարկել են վարակը հայտնի կախվածությունների միջոցով, այդ թվում՝ առջևի մասում կողմնորոշված ​​փաթեթների միջոցով, ինչպիսիք են՝

Քանի որ այս փաթեթները կախվածության գրաֆիկներում բարձր տեղ են գրավում, մեկ տեղադրումը արագ տարածվում է տարբեր նախագծերում։

Հավաստագրերի հավաքագրում և որդերի բազմացում

Տեղադրվելուց հետո, Shai-Hulud 3.0-ը կատարում է վնասակար կյանքի ցիկլի սկրիպտներ install or postinstall.

Այս փուլում վնասակար ծրագիրը՝

  • սկանավորում է տեղական ֆայլերը և միջավայրի փոփոխականները
  • արդյունահանում է npm տոկեններ և GitHub-ի մուտքային տվյալներ
  • նույնականացնում է հասանելի պահոցներն ու փաթեթները

Հետևաբար, վարակը անմիջապես անցնում է տեղական փոխզիջում դեպի էկոհամակարգի լայն տարածում.

Ավտոմատացված վերահրատարակում կառավարչի պորտֆելներում

Հավաստագրերը հավաքելուց հետո, shai-hulud npm վնասակար ծրագիր ծրագրային կերպով թվարկում է վարակված պահպանողին պատկանող բոլոր փաթեթները։

Ապա, այն՝

  • վնասակար կոդ է ներարկում նոր տարբերակների մեջ
  • վերահրատարակում է այդ տարբերակները ավտոմատ կերպով
  • յուրաքանչյուր զոհը վերածում է նոր բաշխման կետի

Որպես արդյունք, Մեկ գողացված թոքենը կարող է վարակել տասնյակ կամ հարյուրավոր npm փաթեթներ մի քանի ժամվա ընթացքում.

Շայ-Հուլուդ 3.0 ընդդեմ նախորդ ալիքների

Ի՞նչ է փոխվել Shai-Hulud 3.0-ում։

Չնայած հիմնական մեխանիզմները մնում են ծանոթ, Շայ-Հուլուդ 3.0 ներկայացնում է մի քանի կարևոր բարելավումներ։

Առավել նշանակալից է.

  • ավելի արագ տարածման տրամաբանություն
  • ավելի մաքուր բեռնատար կառուցվածք
  • ավելի լավ համադրություն օրինական փաթեթների թարմացումների հետ
  • Շայ-Հուլուդի համեմատ աղմուկի նվազում 2.0

Հետևաբար, միայն հեղինակության կամ CVE-ների վրա հիմնված հայտնաբերումը դառնում է անարդյունավետ։

Կերպարանք Շայ-Հուլուդ 2.0 Շայ-Հուլուդ 3.0
Սկզբնական վարակի վեկտոր Վնասակար npm փաթեթներ՝ նախնական տեղադրման կենսական ցիկլի սկրիպտներով Վնասակար npm փաթեթներ, որոնք չարաշահում են վստահելի բարձր տեսանելիության գրադարանները և թարմացման ուղիները
առաջնային թիրախ npm էկոհամակարգ և CI/CD pipelines npm էկոհամակարգ՝ կենտրոնանալով մշակողների մեքենաների և ներքևի սպառողների վրա
Տարածման մեխանիզմ Հավատարմագրերի գողություն, որին հաջորդում է փաթեթների ավտոմատ վերահրապարակումը Հավատարմագրերի վերօգտագործում և կախվածության վստահության չարաշահում՝ ավելի արագ հասանելիություն ընդլայնելու համար
Գործողության ընթացքում չարաշահում Bun-ի գործարկման ժամանակի արագ տեղադրում Node.js-ի գործողության և վստահելի կատարման ուղիների վերօգտագործում
CI/CD չարաշահում Թաքնված GitHub գործողությունների աշխատանքային հոսքեր և ինքնուրույն հոսթինգային վազորդներ Կրճատվել է CI/CD աղմուկ, ավելի շատ շեշտը փաթեթների մակարդակի գաղտագողի կատարման վրա
Օգտակար բեռի վարքագիծ Մեծ, խճճված JavaScript բեռներ և միջավայրի սկանավորում Ավելի փոքր, ավելի նպատակային բեռներ, որոնք կենտրոնացած են կայունության և տարածման վրա
Հավատարմագրերի թիրախավորում GitHub տոկեններ, npm տոկեններ, ամպային հավատարմագրեր, CI գաղտնիքներ Նույն հավատարմագրերի թիրախները՝ ավելի արագ վերօգտագործմամբ և ավելի քիչ տեսանելի արտահոսքով
Գործառնական աղմուկ Շատ աղմկոտ. զանգվածային պահոցների ստեղծում, աշխատանքային հոսքի ներարկում, զանգվածային վերբեռնումներ Ավելի ցածր աղմուկ. ավելի քիչ տեսանելի արտեֆակտներ, ավելի դժվար է նկատել ձեռքով վերանայման միջոցով
Ազդեցության շառավիղը Մեծ, բայց հայտնաբերելի՝ մասշտաբի և արտեֆակտների շնորհիվ Հնարավոր է՝ ավելի մեծ լինի՝ գաղտնիության և վստահելի փաթեթների չարաշահման պատճառով
Պաշտպանական մարտահրավեր Դադարեցումը CI/CD չարաշահում և վկայականի արտահոսք Այլապես օրինական փաթեթների ներսում չարամիտ վարքագծի հայտնաբերում

Ինչու է սա դեռ նույն որդը

Այդ փոփոխություններին չնայած, Shai-Hulud 3.0-ը դեռևս նույն դասի npm մատակարարման շղթայի որդ է։.

Այն հիմնված է հետևյալի վրա.

  • վկայականի վերօգտագործում
  • ավտոմատացված վերահրատարակում
  • կախվածության վստահություն
  • CI/CD ամայացում

Հետևաբար, ցանկացած միջավայր, որը տեղադրում է npm փաթեթներ առանց վարքային վերահսկողության, մնում է խոցելի։

Փոխզիջման ցուցանիշներ

Shai-hulud վնասակար ծրագիրը հետաքննող անվտանգության թիմերը պետք է փնտրեն հետևյալ ազդանշանները՝

  • անսպասելի փաթեթի տարբերակի խափանումներ
  • կյանքի ցիկլի սկրիպտներ ավելացվել են առանց հիմնավորման
  • մշուշոտ JavaScript բլոկներ
  • տեղադրման ընթացքում ելքային ցանցային հարցումներ
  • npm կամ GitHub տեղադրման ժամանակ մուտքագրված տոկեններ
  • CI/CD Աշխատանքները անսպասելիորեն են գործում կախվածության թարմացումներից հետո

Կարևոր է, որ դրանցից ոչ մեկի գոյության համար CVE անհրաժեշտ չէ։

Ինչու՞ են ավանդական npm անվտանգության գործիքները բաց թողնում Shai-Hulud 3.0-ը

CVE-ի վրա հիմնված հայտնաբերման ձախողումներ

Քանի որ Shai-Hulud 3.0-ը չարաշահում է օրինական աշխատանքային հոսքերը, սկաներները, որոնք կենտրոնանում են միայն հայտնի խոցելիությունների վրա, որևէ սխալ բան չեն տեսնում։

Կա՝

  • խոցելի գործառույթ չկա
  • անվտանգ API չկա
  • հիշողության վնաս չկա

Փոխարենը, սովորական JavaScript-ում ներկառուցված է չարամիտ մտադրություն։

SBOM Տեսանելիությունը բավարար չէ

Նմանապես, SBOMs կարող է ձեզ ասել ինչ կախված ես, բայց ոչ ինչ է անում տեղադրման ժամանակ.

Արդյունքում, առանց վերահսկողության տեսանելիությունը չի կանգնեցնում մատակարարման շղթայի որդը։

Ինչպես է Xygeni-ն կանխում Shai-Hulud 3.0 npm մատակարարման շղթայի հարձակումները

Ահա թե որտեղ է Քսիգենիի ճարտարապետությունը կարևոր։

Վնասակար ծրագրի վաղ նախազգուշացում (MEW). Կանգնեցրեք npm վնասակար ծրագիրը հրապարակման պահին

Xygeni-ի վնասակար ծրագրերի վաղ նախազգուշացում (MEW) անընդհատ սկանավորում է նոր հրապարակված npm փաթեթները իրական ժամանակում։

MEW-ն հայտնաբերում է.

  • խճճված օգտակար բեռներ
  • կասկածելի կենսական ցիկլի սցենարներ
  • հավատարմագրերի հավաքագրման վարքագիծ
  • աննորմալ ֆայլային համակարգում գրառումներ
  • անսպասելի ցանցային ակտիվություն

Ամենակարևորը, MEW-ն կարող է ավտոմատ կերպով արգելափակել կառուցվածքները՝ կանխելով shai-hulud npm վնասակար ծրագրի ներթափանցումը։ CI/CD.

GuardrailsԱպահով կախվածության վարքագծի կիրառում

Քսիգենի Guardrails խստորեն պահպանել ներքին քաղաքականությունը pipelines.

Նրանք.

  • արգելափակել վնասակար կամ կասկածելի npm փաթեթները
  • կանխել թաքնված տեղադրման սկրիպտների կատարումը
  • կանգնեցնել կատարման ժամանակի ներբեռնումները կառուցման ընթացքում
  • կողպված ֆայլի ամբողջականության ապահովում

Արդյունքում ` pipeline կանգ է առնում մինչև որդը կգործի։

CI/CD Անվտանգություն. Պաշտպանել Pipelineչարաշահումից

Քանի որ Շայ-Հուլուդ 3.0-ը հաճախ վերածվում է CI/CD, Xygeni մոնիտորներ pipelines համար:

  • աշխատանքային հոսքի չարտոնված փոփոխություններ
  • աննորմալ կատարման օրինաչափություններ
  • թույլտվության չարաշահում
  • կախվածության կողմից ակտիվացված աշխատանքային հոսքի ներարկում

Եթե ​​ռիսկային վարքագիծ է դրսևորվում, Xygeni-ն արգելափակում է pipeline անմիջապես՝ կտրելով կողային շարժումը։

Գաղտնիքների պաշտպանություն. Նվազեցրեք պայթյունի շառավիղը

Քանի որ shai-hulud վնասակար ծրագիրը ագրեսիվորեն գողանում է մուտքային տվյալները, Քսիգենին նաև կենտրոնանում է գաղտնիքների վրա։

Քսիգենի:

  • բացահայտում է բացահայտված գաղտնիքները ամբողջ աշխարհում SDLC
  • ավտոմատ կերպով պտտում է բարձր ռիսկի վկայականները
  • ապահովում է ավելի անվտանգ տոկենների պրակտիկա

Հետևաբար, նույնիսկ եթե վնասակար ծրագիրը գործարկվի, գողացված գաղտնիքները արագ կորցնում են իրենց արժեքը։

Ինչու է Shai-Hulud 3.0-ը հաստատում երկարաժամկետ միտումը

Վերջիվերջո, Շայ-Հուլուդ 3.0-ը հաստատում է ավելի լայն իրականություն։

Ժամանակակից npm մատակարարման շղթայի հարձակումները.

  • տարածվում է ավտոմատ կերպով
  • շարժվել ավելի արագ, քան մարդկային վերանայումը
  • շահագործել վստահությունը, այլ ոչ թե խոցելիությունները
  • թիրախ pipelines, ոչ միայն կոդ

Հետևաբար, shai-hulud npm վնասակար ծրագրից պաշտպանությունը պահանջում է վարքագծի հայտնաբերում և կիրառում, այլ ոչ թե պարզապես սկանավորում։

Վերջնական նշումներ. Ինչու է Shai-Hulud 3.0-ը դեռևս կարևոր

Չնայած Shai-Hulud 3.0-ը չի ներկայացնում որևէ նոր, աչքի ընկնող էքսպլոիտ, այն ներկայացնում է հասուն, կրկնվող և մասշտաբային հարձակման մոդել։

Այլ կերպ ասած, սա վերջին ալիքը չի լինի։

Ռեակտիվ անվտանգության վրա հիմնված թիմերը կշարունակեն հետապնդել վարակները: Վնասակար վարքագիծը վաղ փուլում արգելափակող թիմերը ամբողջությամբ կկանգնեցնեն որդը:

Դա է տարբերությունը։

sca-tools-software-composition-analysis-tools
Առաջնահերթություն տվեք, շտկեք և պաշտպանեք ձեր ծրագրային ռիսկերը
Ստացեք ձեր անվճար հաշիվը։
Ոչ մի վարկային քարտ չի պահանջվում:

Ապահովեք ձեր ծրագրային ապահովման մշակումը և մատակարարումը

Xygeni Product Suite-ի հետ