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) [5806]
назад «  » вперед

аналогичные материалы
Как поломать интернет 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
 
последние новости
Phrack #70/0x46 // 07.10.21 02:46
Возможно, Facebook наступил на те же грабли с BGP, что и Яндекс десять лет назад // 04.10.21 23:36
50 лет электронной почте // 02.10.21 00:00
Заканчивается действие одного из корневых сертификатов Let’s Encrypt // 30.09.21 17:01
Очередной юбилей Linux // 25.08.21 14:56
HP закрыла 16-летнюю уязвимость в драйверах принтеров // 20.07.21 15:14
Microsoft советует пользователям отключить службу печати // 17.07.21 03:22



  Copyright © 2001-2021 Dmitry Leonov Design: Vadim Derkach