Как стать автором
Обновить

Комментарии 21

Один из двух вариантов:

1) Это упорный придурок и инженера npmjs.org не смогут организовать защиту репозитария - До свидания NodeJS?

2) Все не так как выглядит, журналисты опять все напутали - До свидания NodeJS?

А попробуйте доказать руководителям среднего звена, что JavaScript это безопасно.

У них семья, дети... А тут начальство имеет...

Автор, а вы точно сисадмин, а не копирайтер?

А вы с какой целью интересуетесь?

Много признаков машинного перевода и отсутствия опыта в сфере:

  • «созданием и доставкой» — доставляют осязаемые вещи, а информационные продукты публикуют, выкладывают или релизят

  • «создав выделенные учетные записи» — говорят «отдельные» или «индивидуальные», а не «выделенные»

  • «OTP-вызовов» — «вызов» звучит слишком эпично для проверки методом TOTP, как будто это что-то непреодолимое

  • «имели уникальную учетную запись пользователя» — формально верно, но на практике все говорят просто «имели отдельного пользователя»

  • «знаменует новый тренд на ландшафте угроз в экосистеме NPM» — в русском языке слово «ландшафт» не используют в таком контексте

  • «компания выкатила полный список вредоносных пакетов» — выкатывают требования или релизы, а списки публикуют и показывают

Не хватает технических подробностей:

  • Как вредоносные пакеты попадают в легитимные проекты? Они маскируются под полезные пакеты? Может, вредоносные пакеты добавляются в зависимости легитимных пакетов, доступ к которым был взломан?

  • Что именно делают вредоносные пакеты, как вредят?

Уточнение: термин "доставка" существует и используется. Например, в девопсе есть понятие непрерывной доставки. Но да, пакеты не доставляются, а публикуются.

Часто встречал в общении "создание и доставку приложений", пример:

"Создав выделенные учетные записи", "Уникальную учетную запись пользователя " Попахивает знакомым канцеляритом и тоже часто приходится слышать. Как и выделенные пэвм и прочее.

"Компания выкатила" часто встречается в виде сленга [Netflix выкатила собственный рейтинг фильмов и сериалов](https://habr.com/ru/news/t/589747/)

"Ландшафт угроз" -> https://encyclopedia.kaspersky.ru/glossary/threat-landscape/#:~:text=Ландшафт угроз (threat landscape) —,периода времени и так далее.

Не спорю, что термины по отдельности используются в определённых контекстах. Но в контексте этой статьи они смотрятся неуместно, как будто дословный машинный перевод.

Ок. С тезисами согласен.

P. S. Ну раз вам не нужны новости, то я умываю руки.

Ничего не имею против поста. Я пояснил, что пользователь dagen имел ввиду.

Такие действительно не нужны.

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

  2. Новости не первый день и можно было добавить чуть истории - одна компания обнаружила около 100 "вредоносных" пакетов, сообщила об этом, потом к ним присоединилась еще одна и сообщила, что наблюдает за ситуацией и есть список около 800 пакетов.

  3. Новость про атаку, но самую важную часть из новости опустили. Поэтому даже тут в комментах задаются вопросом - а в чем атака то? что такого, что опубликовали 1000 пакетов? у npm место закончится?.. А написали бы как в новости - "Атака направлена на пользователей azure. Имена пакетов подбираются, чтобы они совпадали с оффициальными или были похожи с точностью до замены символа. Злоумышленик ожидает, что при установке кто-то забудет написать префиксы "@azure", azure- или вместо azure- напишет azure_" - и вопросов было бы меньше.

  4. "Все указывает"... И это все базируется на том, что предположении исследователей, т.к. пакетов много и они попробовали и смогли найти вариант публикации пакета.

По пункту 1 не всё так плохо. Понять перевод можно)

По остальным моментам согласен.

всё настолько логично, что даже странно, что раньше (очень раньше) подобное не всплывало.

ну и мне интересно, будет ли кто-то тянуть к себе и использовать нонейм-пакет? ладно, полноценный аудит кода на наличие "нехороших вещей" мало кому доступен, особенно если в пакете больше десятка файлов (и соответственно зависимостей), но вот доверять коммитерам вида 123fqrt65o по-моему как минимум странно. да и "все" предпочитают пользоваться более или менее "известными" библиотеками.

или дело снова в тайп-сквоттинге, когда из-за опечатки тянешь какой-нибудь npn вместо npm?

мне кажется, поэтому у данного занятия мало шансов на "успех", ведь сила вредоноснов в массовости.

или как? мне правда интересно.

Создание тонны вредоносных пакетов может быть только частью плана. Например, дальше автор публикует на каком нибудь ресурсе что-то типа «делаем свой Майнкрафт» и там питает ссылку на заранее подготовленный код, который уже требует «правильные» пакетики… и все, целевая группа будет тиражировать это, потому что это может быть интересно.. примеров можно кучу придумать..

Там продвинутый тайп-сквоттинг:

the attacker extracted the package names and altered their names, erasing the scope part (‘@azure/’ in this instance) or replacing it with a similar string (such as “azure-“) and doing their best effort in publishing non-taken packages under scopeless, similar package names.

доверять коммитерам вида 123fqrt65o по-моему как минимум странно

Странно что злоумышленник не использовал какой то fake name generator.

Достаточно будет например хакнуть одного из девелоперов популярного пакета и вписать депенденси. Все придурки авто-обновляющиеся на проде сразу заразятся. Вот вам и массовость.

TLTR:

Тайпсвоттеры добрались до репозитория пакетов. Будьте осторожны.

Никогда не любил бездонную node_modules :)

Как-нибудь это будет решаться? Ограничивать количество уровней вложенности? Пореже обновлять версии? Делать для проверенных авторов, пакетов и версий бэджики с безопасностью? Какие-то канареечные релизы?

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

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.