BugTraq.Ru
Русский BugTraq
https://bugtraq.ru/rsn/archive/2016/03/12.html

Со дна постучали: внедрение вредоносного кода в проекты Node.js
dl // 27.03.16 18:37
Любопытные вещи выясняются насчет npm.
[Не забывайте при копировании материала указывать полный адрес источника: //bugtraq.ru/rsn/archive/2016/03/12.html]
Недавняя весёлая история с leftpad продемонстрировала, какие могут возникнуть проблемы от удаления чего-то из npm. Оказывается, еще сильней рвануть может от добавления.

Исследователь из Google Сэм Сакконе (Sam Saccone) еще в начале года проинформировал npm о неприятной уязвимости, способной привести к распространению вредоносного кода по множеству зависимых друг от друга пакетов. В феврале информация об уязвимости была раскрыта, а на днях добралась до CERT, после чего привлекла всеобщее внимание.

Проблема в первую очередь связана с тем, что при установке пакета из npm могут выполняться вспомогательные скрипты (так называемые lifecycle scripts). Выполняются они обычно с правами текущего пользователя, хотя на некоторых системах им запросто может оказаться root. Проблема известная, но Сакконе пошел чуть дальше.

Во-первых, он использовал тот факт, что при использовании npm'шной версионной системы SemVer и подключении к своему проекту сторонних модулей далеко не все разработчики фиксируют их версии (ведь так удобно автоматически получить новую функциональность/исправление ошибок, когда автор модуля его обновит).

Во-вторых, многие разработчики сами являются авторами модулей, выложенных в npm, причем в npm не предусмотрен автоматический выход - кто залогинился, тот так и остается авторизованным пользователем, пока явно не выйдет. Так что подхваченный скрипт запросто может что-то сделать от имени этого пользователя.

Все это, усугубленное централизованностью npm, позволило создать демонстрационный модуль, который по сути является npm-червем. Как только его установит разработчик другого модуля, дальше он начнет распространяться как снежный ком по всем проектам, выставившим зависимость на модуль первой жертвы, от них дальше, дальше и дальше.

Администрация npm уже заявила, что не располагает ресурсами, достаточными для проверки всех модулей, и возлагает свои надежды на сообщество.

Источник: Softpedia    
теги: javascript  |  предложить новость  |  обсудить  |  все отзывы (0) [7015]
назад «  » вперед

аналогичные материалы
Как поломать интернет 11 строчками кода // 23.03.16 19:37
Срочное обновление Firefox // 07.08.15 13:45
XSS в Skype // 15.07.11 19:16
Adobe пообещала залатать Акробат через месяц // 16.12.09 22:47
Уязвимость в Adobe Reader // 04.11.08 18:43
XSS-уязвимость в LiveJournal // 23.02.04 15:47
 
последние новости
Три миллиона электронных замков готовы открыть свои двери // 22.03.24 20:22
Doom на газонокосилках // 28.02.24 17:19
Умер Никлаус Вирт // 04.01.24 14:05
С наступающим // 31.12.23 23:59
Четверть приложений, использующих Log4j, до сих пор уязвима // 11.12.23 18:29
Google Drive находит файлы // 07.12.23 01:46
Google Drive теряет файлы // 27.11.23 20:02





  Copyright © 2001-2024 Dmitry Leonov Design: Vadim Derkach