Նոր հայտնաբերված վնասակար npm փաթեթները քողարկվում են որպես անվնաս առջևի օգնականներ, բայց պարունակում են վնասակար աղավաղված կոդ։
Անվտանգության հետազոտական խումբը Քսիգենի որոշեց, որ այս npm փաթեթները՝ «react-ui-notify», «react-tmedia», «react-ui-animates», «react-medias», «react-mandes» փոփոխված ածանցյալներ են «բինգո-գրանցող», որն ինքնին վնասակար ճյուղավորում է, որը նմանակում է հայտնի գրանցման փաթեթի կառուցվածքն ու փաստաթղթերը։ «պինո» օրինական տեսք ունենալու համար։ Այդ ծածկոցն օգտագործվում է մշակողների վստահությունը շահագործելու և ներբեռնումներ ներգրավելու համար։ Իրականում, կոդի բազան պարունակում է անկապ, խճճված ֆայլ, որը գործում է Node միջավայրերում։
Սպառնալիքի գործչի նախապատմությունը. «Վարակիչ հարցազրույց» արշավը
Վարակիչ հարցազրույցի քարոզարշավ կապված է սպառնալիքների կլաստերի հետ, որը հայտնի է որպես «UNC4034», որը հաղորդում է Հյուսիսային Կորեայի հետ կապված անձանց հետ կապերի մասին Ղազար խումբ or APT38, Հյուսիսային Կորեայի ռեժիմի հետ կապված հայտնի պետականորեն հովանավորվող խումբ: Այս արշավի հետևում կանգնած սպառնալիքի գործակալները պատմություն ունեն մշակողներին թիրախավորելու բաց կոդով էկոհամակարգերի միջոցով, տարածելով նմանակող փաթեթներ, որոնք կատարում են թաքնված բեռներ: Արդյունքում՝ վարակված համակարգերից հանելով կրիպտոարժույթների հետ կապված տվյալներ, կոդ և մուտքային տվյալներ:
մարտավարություն, տեխնիկա և ընթացակարգեր Այս npm փաթեթներում դիտարկված (TTP-ները) հետևում են նույն օրինաչափությանը.
- Ընդօրինակեք օրինական հնչող նախագծերի անունները՝ վստահելի թվալու համար։
- Ներդրեք խճճված կոդ թեստային ֆայլերում և օժանդակ սկրիպտներում։
- Գործարկեք թաքնված բեռներ, որոնք հավաքում են զգայուն տվյալներ և ուղարկում դրանք հեռակառավարման և կառավարման (C2) սերվեր։
Տեխնիկական արդյունքներ. Օգտակար բեռի անորոշ վերլուծություն
Ներսում հայտնաբերված օգտակար բեռը '/test/fixtures/eval/node_modules/test.list' օգտագործում է խճճված JavaScript (ինդեքսի/զանգվածի տողերի որոնում, կոդավորված բլոկներ)՝ ընթեռնելի տողերը թաքցնելու համար, և կառավարման հոսքը կիրականացվի փաթեթի տեղադրումից հետո՝ հետինստալյացիոն սկրիպտի պատճառով։ 'npm գործարկման թեստ || npm transpile || npm գործարկման բացթողում'-ի շրջանակներում փաթեթ.json։
Մեր վերլուծությունը ցույց տվեց, որ այս փաթեթները պարունակում են հարմարվողական վնասակար ծրագիր, որը մշակված է օպերացիոն համակարգերում (Windows, macOS կամ Linux) և օգտագործողի միջավայրերում տեղաշարժվելու համար։ Հնարավորություն, որը ենթադրում է միտումնավոր կենտրոնացում տեխնիկական օգտատերերի վրա, ովքեր հաճախ աշխատում են տարբեր միջավայրերում։
Համակարգում տեղադրվելուց հետո վնասակար ծրագիրը հետազոտում է շրջակա միջավայրը՝ հավաքելով մանրամասն համակարգի տեղեկատվություն ինչպես, օրինակ, hostname- ը, հարթակ, գլխավոր տեղեկատու և համակարգի tmp դիրեկտորիա նախքան իր հասանելիությունը ընդլայնելը այնպիսի հավելվածների մեջ, որոնք պահպանում են զգայուն տվյալներ, ինչպիսիք են Բրաուզերներ (Chrome/Brave/Edge/Opera) և թվային դրամապանակներԱյն ռեկուրսիվ կերպով որոնում է դիտարկիչի պրոֆիլների, դրամապանակների ֆայլերի, բանալիի շղթաների և բազմաթիվ փաստաթղթերի/ֆայլերի տեսակների տարածված վայրերը: Որոնման բանալի բառերը ներառում են դրամապանակ, սերմերի հետ կապված տերմիններ և բազմաթիվ ֆայլերի ընդլայնումներ, որոնք, հավանաբար, պարունակում են մուտքային տվյալներ կամ գաղտնիքներ (*.env, *.key, *.wallet, *.json, *.txt, *.doc և այլն։)։ Այն պարունակում է բացառման ցանկեր ընդհանուր գրացուցակների համար՝ ակնհայտ համակարգային ֆայլերից խուսափելու համար։
Բեռնվածությունը գրում է տեղային նշիչ/կողպեքի ֆայլ՝ միաժամանակյա բազմաթիվ գործարկումները կանխելու համար, և գրում է իր տվյալները օպերացիոն համակարգի ժամանակավոր գրացուցակներում՝ հայտնաբերումից խուսափելու համար։
Խճճված օգտակար բեռը նաև պարունակում է հեռակա սերվերի հետ կապի ալիք, որը գործում է որպես նրա հրամանատարության և կառավարման կենտրոն: Այս ալիքի միջոցով այն կարող է գողացված տեղեկատվության արտանետում և ստանալ հետագա հրահանգներԹեև ենթակառուցվածքն ինքնին թվում է սահմանափակ և նպատակային, դրա գոյությունը հաստատում է հարձակվողի մտադրությունը՝ պահպանել վարակված համակարգերի նկատմամբ մշտական վերահսկողությունը։
Երբ վնասակար ծրագիրը գտնում է զգայուն տվյալներ, այն փաթեթավորում է դրանք և փորձում է վերբեռնել ամպային սերվերի վրա տեղակայված հեռակա վերջնակետ՝ օգտագործելով բազմամաս/ձևային տվյալներ, որպեսզի գողացված ֆայլերը կցվեն հարցումներին։
Փոխզիջման ցուցանիշներ և մեղմացման առաջարկություններ
Կազմակերպություններին խորհուրդ է տրվում հեռացնել այս վնասակար կախվածությունները (react-ui-notify, react-tmedia, react-ui-animates, react-medias, react-mandes, bingo-logger) և թարմացնել այս միջավայրերը՝ ամբողջականությունն ապահովելու համար: Հնարավոր է՝ բացահայտված համակարգերի բոլոր մուտքի տվյալները և տոկենները պետք է անմիջապես փոխվեն:
Ցանցի ադմինիստրատորները պետք է սահմանափակեն ելքային երթևեկությունը այս IP-ներով։ 23.227.202.24, 131.153.22.25 և վերանայել վերջին կապերը՝ անոմալիաների առկայության համար: Խստորեն խորհուրդ է տրվում վերականգնել տուժած միջավայրերը ստուգված, մաքուր աղբյուրներից՝ կրկնակի վարակը կանխելու և մատակարարման շղթայի ամբողջականությունն ապահովելու համար:
Ավելի լայն համատեքստ
Ընդհանուր առմամբ, այս փաթեթները ևս մեկ օրինակ են JavaScript-ի վրա հիմնված մատակարարման շղթայի հարձակումների հասունության նոր մակարդակի պայմաններում հակառակորդները ավելի ու ավելի շատ են ստեղծում նմանակող փաթեթներ, որոնք կառուցվածքն ու փաստաթղթերը փոխառում են վստահելի նախագծերից, մոդուլային ընդլայնումից և ավելի լավ մեթոդների կիրառումից՝ հայտնաբերումն ու մեղմացումը մարտահրավեր դարձնելու համար։
Այս զարգացումը մեծացնում է պատահական տեղադրման հավանականությունը անտեղյակ մշակողների կողմից և հակառակորդներին ավելի խորը հասանելիություն է տալիս կառուցման միջավայրերին, CI/CD համակարգեր և աղբյուրի կոդի պահոցներ։
Բաց կոդով էկոհամակարգերը դարձել են նման արշավների համար նախընտրելի տարածման հարթակ։ Օգտագործելով մշակողների կողմից համայնքային փաթեթների նկատմամբ ներքին վստահությունը՝ հարձակվողները կարող են ներթափանցել ծրագրային ապահովման մատակարարման շղթա նվազագույն ջանքերով և հաճախ առանց անհապաղ հայտնաբերման կամ հետևանքների։
Վնասակար ծրագրերի վաղ նախազգուշացում (MEW) Xygeni-ի կողմից
Այս միջադեպը սկզբնապես հայտնաբերվել է Xygeni-ի միջոցով։ Վնասակար ծրագրերի վաղ նախազգուշացում համակարգ, որը անընդհատ վերահսկում է բաց կոդով փաթեթների գրանցամատյանները, ինչպիսիք են npm-ը, PyPI-ն, Maven-ը՝ վնասակար փաթեթների հայտնաբերման համար։
Մեր հայտնաբերման համակարգը ավտոմատ կերպով այս փաթեթները նշել է որպես կասկածելի՝ դրանց անսովոր կառուցվածքի, հետինստալյացիոն սկրիպտի և խճճված օգտակար բեռի պատճառով։ Արդյունքում, վնասակար փաթեթները (react-ui-notify, react-tmedia, react-ui-animates, react-medias և react-mandes)-ները մեր անվտանգության թիմի կողմից հաստատվեցին որպես վնասակար և հաղորդվեցին npm-ին, նախքան դրանք կհասնեին լայն տարածման։
Ինչպես է Xygeni-ի վաղ նախազգուշացումը պաշտպանում ձեր pipelines
- Իրական ժամանակում սպառնալիքների հայտնաբերումՍկանավորում է ձեր կախվածության գրաֆիկի յուրաքանչյուր նոր կամ թարմացված փաթեթ և նշում է կասկածելի վարքագիծը, ինչպիսիք են օպերացիոն համակարգի կանչերը, հրամանների կատարումը, կոդի խեղաթյուրումը, տպագրական սխալները և շատ ուրիշներ։
- Անմիջական ահազանգերՏեղեկացնում է ձեր անվտանգության և DevOps թիմերին Slack-ում, Jira-ում կամ էլեկտրոնային փոստին, հենց որ ձեր միջավայրում նոր սպառնալիք է ի հայտ գալիս։
- Մեկ սեղմումով շտկում: Ստեղծում է pull requests որոնք հեռացնում կամ փոխարինում են ձեր նախագծերում խոցելի կախվածության տարբերակները։
- Աջակցվող էկոհամակարգեր՝ Ներկայումս ներառում են npm, PyPI, Maven և Packagist:
- Xygeni-ն օգնում է ձեզ մնալ մատակարարման շղթայի հարձակումներից առաջ՝ հայտնաբերելով վնասակար փաթեթները ամենավաղ փուլում, նախքան դրանք կհասնեն ձեր կառուցվածքին։
???? Փորձեք Xygeni Malware Early Warning-ը անվճար և տեսեք, թե որքան արագ կարող եք հայտնաբերել և չեզոքացնել մատակարարման շղթայի սպառնալիքները ձեր սեփական pipelines.






