Рањивост у НПМ-у која доводи до преписивања датотека на систему

ГитХуб је открио детаље о седам рањивости у пакетима тар и @нпмцли/арборист, који пружају функције за рад са тар архивама и израчунавање стабла зависности у Ноде.јс. Рањивости омогућавају да се приликом распакивања посебно дизајниране архиве пребришу датотеке изван основног директоријума у ​​који се распакује, колико то дозвољавају тренутна права приступа. Проблеми омогућавају да се организује извршавање произвољног кода на систему, на пример, додавањем команди у ~/.басхрц или ~/.профиле када операцију изводи непривилеговани корисник, или заменом системских датотека када се покреће као корен.

Опасност од рањивости се погоршава чињеницом да се проблематични код користи у нпм менаџеру пакета приликом извођења операција са нпм пакетима, што омогућава организовање напада на кориснике постављањем посебно дизајнираног нпм пакета у спремиште, процесирање од којих ће извршити нападачев код на систему. Напад је могућ чак и када се пакети инсталирају у режиму „-игноре-сцриптс“, који онемогућава извршавање уграђених скрипти. Укупно, нпм утиче на четири рањивости (ЦВЕ-2021-32804, ЦВЕ-2021-37713, ЦВЕ-2021-39134 и ЦВЕ-2021-39135) од седам. Прва два проблема се односе на пакет тар, а преостала два на пакет @нпмцли/арборист.

Најопаснија рањивост, ЦВЕ-2021-32804, узрокована је чињеницом да приликом брисања апсолутних путања наведених у тар архиви, поновљени знакови „/“ се обрађују погрешно – уклања се само први знак, док се остали остављају. На пример, путања „/хоме/усер/.басхрц“ ће бити конвертована у „хоме/усер/.басхрц“, а путања „//хоме/усер/.басхрц“ у „/хоме/усер/.басхрц“. Друга рањивост, ЦВЕ-2021-37713, појављује се само на Виндовс платформи и повезана је са нетачним чишћењем релативних путања које укључују неограничени знак диска („Ц:соме\патх“) и секвенцу за повратак у претходни директоријум ( „Ц:../фоо“).

Рањивости ЦВЕ-2021-39134 и ЦВЕ-2021-39135 су специфичне за модул @нпмцли/арборист. Први проблем се појављује само на системима који не разликују мала слова знакова у систему датотека (мацОС и Виндовс) и омогућава вам да пишете датотеке у произвољни део система датотека тако што ћете навести два модула „фоо“ међу зависностима : "филе:/соме/патх"' и ' ФОО: "филе:фоо.тгз"', чија обрада ће довести до брисања садржаја директоријума /соме/патх и уписивања садржаја фоо.тгз у њега. Други проблем омогућава преписивање датотека путем симболичке манипулације веза.

Рањивости су решене у издањима Ноде.јс 12.22.6 и 14.17.6, нпм ЦЛИ 6.14.15 и 7.21.0 и појединачним издањима тар пакета 4.4.19, 5.0.11 и 6.1.10. Након што је примио информације о проблему у оквиру иницијативе „буг боунти“, ГитХуб је платио истраживачима 14500 долара и скенирао садржај спремишта, што није открило покушаје да се искористе рањивости. Да би се заштитио од ових проблема, ГитХуб је такође забранио објављивање НПМ пакета који укључују симболичке везе, чврсте везе и апсолутне путање до спремишта.

Извор: опеннет.ру

Додај коментар