The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Самораспространяющийся червь поразил 187 пакетов в NPM

17.09.2025 08:45

Атака на сопровождающих пакеты в репозитории NPM перешла на новый уровень. В дополнение к использованию вредоносного ПО для перехвата платежей и конфиденциальной информации атакующие перешли к внедрению в скомпрометированные пакеты червя для автоматизации подстановки вредоносного ПО в зависимости. Применение червя зафиксировано после компрометации NPM-пакета @ctrl/tinycolor, имеющего 2.2 млн еженедельных загрузок и задействованного в качестве прямой зависимости в 964 пакетах. В результате активности червя атака охватила 187 пакетов, для которых были сформированы вредоносные выпуски (477 вредоносных релизов).

В ходе новой атаки после получения параметров учётной записи сопровождающего в результате фишинга, атакующие публикуют релиз пакета с червём, который активируется при установке скомпрометированного пакета в числе зависимостей. После активации червь осуществляет поиск учётных данных в текущем окружении, загружая и запуская утилиту TruffleHog. В случае обнаружения токена подключения к каталогу NPM червь автоматически публикует новый вредоносный релиз и по цепочке поражает дерево зависимостей. Помимо токена доступа к NPM червь сохраняет ключи доступа к GitHub и облачным сервисам AWS, Azure и GCP (Google Cloud Platform), а также другие конфиденциальные данные, которые способен обнаружить сканер TruffleHog.

Вредоносные релизы формируются для 20 наиболее популярных пакетов, к которым имеет доступ найденный NPM-токен. Функциональность публикации релиза реализована в форме функции NpmModule.updatePackage, которая загружает исходный архив пакета, изменяет номер версии и добавляет postinstall-хук в файл package.json, подставляет обработчик bundle.js, переупаковывает пакет и публикует его. Поддерживается работа в Linux и macOS.

Червю присвоено кодовое имя Shai-Hulud (гигантский червь, упоминаемый в романе Дюна). Найденные в системе учётные данные размещаются в GitHub через создание репозиториев с именем Shai-Hulud (например, "B611/Shai-Hulud"), а также в закодированном виде отражаются в логах GitHub Actions. В создаваемом репозитории размещается файл data.json, в котором присутствует строка с закодированной методом base64 информацией о системе, переменных окружения и перехваченных ключах доступа. В CI на базе GitHub для передачи информации на внешний хост червь создаёт обработчик GitHub Actions (.github/workflows/shai-hulud-workflow.yml). Судя по всему, атака не ограничивается упомянутыми 187 пакетами, так как на GitHub продолжают появляться новые репозитории с именем Shai-Hulud и файлом data.json.

Среди прочего, в результате активности червя поражёнными оказались 25 пакетов компании CrowdStrike, развивающей инструменты для защиты от атак через зависимости (Supply Chain). По заявлению CrowdStrike скомпрометированные пакеты не использовались в платформе Falcon и атака не распространилась на клиентов. Также стало известно, что прошлая волна публикации вредоносных релизов в NPM, осуществлявшаяся без червя, затронула проект gemini-cli, развиваемый компанией Google.

  1. Главная ссылка к новости (https://krebsonsecurity.com/20...)
  2. OpenNews: Атакующие получили контроль над NPM-пакетами проекта DuckDB и опубликовали вредоносные выпуски
  3. OpenNews: Скомпрометированы 18 NPM-пакетов, насчитывающих более 2 миллиардов загрузок в неделю
  4. OpenNews: NPM-пакет Stylus был по ошибке заблокирован из-за подозрений в наличии вредоносного кода
  5. OpenNews: Фишинг позволил получить контроль над несколькими популярными NPM-пакетами
  6. OpenNews: Злоумышленники смогли внедрить бэкдор в NPM-пакет от разработчиков криптовалюты XRP
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63894-npm
Ключевые слова: npm, attack, worm
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (134) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 09:27, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +24 +/
    > червь поразил 187 пакетов в NPM

    Не может быть! Никогда такого не было!

     
     
  • 2.12, Жироватт (ok), 10:14, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    И вот опять!
    Но на этот раз не криптостиллер и не майнер - уже что-то новое
     
     
  • 3.72, 1 (??), 15:05, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Эволюция ! Уже добрались до червячков, скоро кони поскачут.
     
  • 2.18, Аноним (18), 11:52, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Дежурная шутка. Уже не смешно.
     
     
  • 3.26, Аноним (26), 12:05, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Дежурная шутка. Уже не смешно.

    Для местной аудитории это вполне смешно и остроумно - вон сколько плюсиков понаставили.

     
     
  • 4.97, Аноним (97), 16:40, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    так это вам же и наставили.
     
  • 4.148, YetAnotherOnanym (ok), 18:03, 19/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Зависть - плохое чувство.
     
  • 3.30, Жироватт (ok), 12:13, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Дежурные шутки и не обязаны искриться остроумием и тонким саркастичным йумором.
     
  • 3.39, Аноним (1), 13:20, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ёжики кололись и плакали, но продолжали грызть NPM.
     
  • 2.116, Аноним (116), 21:12, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Не может быть! Никогда такого не было!

    Совсем классику забыли. Правильно:

    "Вспомнити npm leftpad!"

     

  • 1.2, Аноним (-), 09:47, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –7 +/
    As of September 13, 2025, a specific count from "all-the-package-repos" indicates a total of 3,583,991 packages.

    Из них червь поразил ЦЕЛЫХ 187 пакетов. Просто невероятно!

     
     
  • 2.4, ptr (ok), 09:59, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +11 +/
    > червь поразил

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

    > total of 3,583,991 packages

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

     
     
  • 3.24, Аноним (24), 12:00, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А как они выявляют заражение?
    Сканируют каждый раз вручную весь репозитарий антивирусом?
     
     
  • 4.40, Аноним (1), 13:21, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А на что сканировать, если не знаешь, что искать? Сейчас такие технологии у программистов, что обычный код работает, как троян.
     
     
  • 5.46, Аноним (24), 14:14, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ну хотя бы поиск по подстроке "Shai-Hulud" и файлики "data.json"...
    а так, да, можно вообще ничего не делать - зачем, если программисты все равно так пишут.
     
     
  • 6.114, Аноним (114), 21:09, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > "Shai-Hulud" и файлики "data.json"

    А кто сказал, что это не отвлекающий след?

     
  • 4.109, Джон Титор (ok), 20:15, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    О, crowdstrike один из самых интересных антивирусов. Если внедрить его в компанию, это получается у тебя как антивирус-ботнет. Весьма эффективная штука. И естественно типичные операции пушинга релиза пакета с одним и тем же файлом в разные пакеты должно у эвристического анализатора вызвать подозрения.
     
     
  • 5.140, Аноним (-), 14:32, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > О, crowdstrike один из самых интересных антивирусов. Если внедрить его в компанию,
    > это получается у тебя как антивирус-ботнет. Весьма эффективная штука. И естественно
    > типичные операции пушинга релиза пакета с одним и тем же файлом
    > в разные пакеты должно у эвристического анализатора вызвать подозрения.

    Особенно эффективно этот ботнет-антивирус ... сломал куче корпораций компьютерные системы, в общем идея заразиться самым крутым вирусом чтобы вирусы пожиже обломались - ну такая себе, спорненькая :)

     
  • 3.56, Аноним (56), 14:22, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >и для поражения пакета необходимо, чтобы его сопровождающий не только подцепил червя, но и запушил изменения

    Если есть токен доступа, то запушить можно автоматически.

     
  • 2.6, Аноним (6), 10:04, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Ну да учитывая что даже самый захудалый проектик способен подтянуть десятки тысяч зависимостей (зависимостей зависимостей n+1). То шанс вляпаться в зараженный пакет, достаточно большой.
     

  • 1.3, Аноним (3), 09:56, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    > Среди прочего, в результате активности червя поражёнными оказались 25 пакетов компании CrowdStrike, развивающей инструменты для защиты от атак через зависимости

    Невероятно

     
     
  • 2.119, Аноним (119), 21:56, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Без разницы. Сам crowdstrike такая же малварь как и это https://xakep.ru/2025/09/15/huntress-rare-look/
     

  • 1.7, Аноним (7), 10:05, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Автоматизацию теперь червем называют?
     
     
  • 2.129, Аноним (129), 01:38, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Компьютерный червь — это самовоспроизводящаяся вредоносная программа, которая распространяется по сетям, используя уязвимости, и не требует для этого действий пользователя или прикрепления к другим файлам. В отличие от вирусов, которые для активации и распространения могут нуждаться в запуске пользователем зараженного файла, черви действуют автономно
     

  • 1.10, freehck (ok), 10:13, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В ходе новой атаки после получения параметров учётной записи сопровождающего в ретзультате фишинга, атакующие публикуют релиз пакета с червём, который активируется при установке скомпрометированного пакета в числе зависимостей. После активации червь осуществляет поиск учётных данных в текущем окружении, загружая и запуская утилиту TruffleHog. В случае обнаружения токена подключения к каталогу NPM червь автоматически публикует новый вредоносный релиз и по цепочке поражает дерево зависимостей. Помимо токена доступа к NPM червь сохраняет ключи доступа к GitHub и облачным сервисам AWS, Azure и GCP (Google Cloud Platform), а также другие конфиденциальные данные, которые способен обнаружить сканер TruffleHog.

    Какие молодцы! Нет, ну серьёзно, они реально озаботились тем, чтобы подставлять зловреда как можно незаметнее: мало того, что всего-то лишь добавляют строчку в список зависимостей, коих в package.json и без того немало, так ещё и делают валидные релизы.

     
     
  • 2.121, Аноним (121), 22:03, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    еще больше "Какие молодцы" выйдет, елси на этом коде научится очередной (название условное) чат гипити и начнёт в новые проекты вставлять подобный код.. ну да, в похожей ситуации такой код был. значит и вам нужен. вот тогда да, выйдет замечательно.
     
     
  • 3.144, diakin (ok), 05:08, 19/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >на этом коде научится очередной (название условное) чат гипити

    Ой, это будет круто! )))

     

  • 1.11, Аноним (11), 10:13, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Все почему? А потому что в JS принято обновлять все npm в слепую. Так как там тысячи пакетов v0.x.x с такими же зависимостями, обновляющиеся каждый день по нескольку раз.

    Появление червя был лишь вопросом времени.

     
     
  • 2.28, Веб разработчик (?), 12:09, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А где не так? в Rust пакеты точно так тянуться из cargo, в Go вообще с гитхаба, в Python pypi, в ruby gem, в PHP packagist, только в C диды ручками файлики подкладывают
     
     
  • 3.41, Данные в так называемом поле Name (?), 13:23, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так и есть. Просто популярность JS почему-то сильно преуменьшина
     
  • 3.88, Аноним (88), 16:06, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А вы думаете что js это одно, а остальное - другое? Нет, эта практика порочная, вне зависимости от выбранного языка.
     
  • 3.123, Аноним (-), 00:07, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В С тоже есть пакетные менеджеры и не один, но они просто не популярны.
     
  • 3.135, OpenEcho (?), 11:19, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >  в Go вообще с гитхаба

    но через гугло прокси, как раз чтоб предотвращать, подробнее:

    https://go.dev/blog/supply-chain

     
  • 3.138, Аноним (-), 12:58, 18/09/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.147, Аноним (147), 17:11, 19/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В PHP пакетник никак не используется (я про его существование до данного поста не знал), в Си его нет и вовсе, потому эти языки делались на десятилетия, а потому являются безопасными, если сам кодер не дурак.
     
  • 3.149, YetAnotherOnanym (ok), 18:08, 19/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А где не так?

    Например, там, где принято отревизить зависимость, хотя бы поверхностно, и прибить проверенную версию гвоздями в скрипте установщика.

     
  • 2.134, OpenEcho (?), 11:16, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А потому что в JS принято обновлять все npm в слепую.

    А у других что, прям так, каждый стороний пакет - пересмотр исходников?

     
     
  • 3.137, Аноним (56), 12:24, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    В c/c++ культуры переиспользования кода почти нет, и очень часто даже для самых обычных вещей пишется свой кривой-косой велосипед.
     
     
  • 4.145, OpenEcho (?), 10:40, 19/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > В c/c++ культуры переиспользования кода почти нет, и очень часто даже для самых обычных вещей пишется свой кривой-косой велосипед.

    Вы уверены? А как же vcpkg, Conan, Hunter, Buckaroo, Poac, Cabin ?

     
  • 2.158, илья (??), 03:42, 22/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В сишарпе так же. Но уязвимости ни разу не видел
     

  • 1.13, 12yoexpert (ok), 10:42, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    красивое
     
     
  • 2.14, пох. (?), 11:11, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ага, а говорили - "язык плохой"!
     
     
  • 3.29, Аноним (29), 12:10, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Прямо с языка сорвал.
    Я, когда читал описание, то-же подумал: какой, однако, мощный язык JS!
     
     
  • 4.34, Аноним (34), 12:38, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Но ведь, есть ещё более мощный язык! Представляете, что будет в crates.io?
     
     
  • 5.43, Аноним (-), 13:31, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Но ведь, есть ещё более мощный язык! Представляете, что будет в crates.io?

    Шо будет, шо будет? Ничего не будет (с)

    opennet.ru/opennews/art.shtml?num=63875
    Сведений об успешном захвате учётных данных в ходе атаки пока нет.

    Растовики просто оказались поумнее жаваскриптеров или разработчиков СИшных ХЗ либ.

     
     
  • 6.58, Аноним (58), 14:25, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Воот, __сведений__ нет. Пока нет.
     
     
  • 7.87, Аноним (-), 16:04, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вот когда будут, тогда  ̶и̶ ̶п̶о̶г̶о̶в̶о̶р̶и̶м̶ будем слушать "какое карго шeрeт0".
    Пока это просто крики из 🐓 угла.

    А то так можно сказать "в linux kernel пока не найден бекдор".
    Благо прецеденты были от АНБ, которые по 10 лет жили не тужили.
    Т.е он там может быть с очень ненулевой вероятностью)

     
     
  • 8.124, Аноним (-), 00:21, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я как-то на заводе работал очень давно Так вот случались случаи что присылали н... большой текст свёрнут, показать
     
  • 8.141, Аноним (141), 18:10, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    У того бекдора от АНБ чуть название изменили только, убрали NSA А так он есть... текст свёрнут, показать
     
  • 5.49, пох. (?), 14:18, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    злой хакер запутается в закорючках, устанет бегать от борова, заплачет и уйдет?
     
     
  • 6.115, Аноним (114), 21:11, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да ничего сложного в borrow нет. Просто надо свыкнуться, у у данных есть Один владелец, а не каждый участок кода.
     

  • 1.15, Аноним (15), 11:13, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Мне вот реально интересно. А кто то этим пользуется? Ибо чето как то стремно становится за всякие гос. сервисы. Вчера например как раз столкнулся с тем, что страничка одного гос. сайта на React грузила при каждом чихе браузер на 100% секунды на 3. Но вроде проверил ее на спец. сайтах и ничего не нашло. Просто кривые руки?
     
     
  • 2.27, Аноним (27), 12:08, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А еще интересно кто за этим стоит, и какая цель. Смешно будет если это делает подвальный хвкер, ради фана. Или вообще диверсия от разработчика, чтобы все этого npm'а шарахались.
     
  • 2.99, Аноним (99), 16:53, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну если гос комп куплен во времена Бени и с тех пор не менялся - не мудрено.
    Тут на четвертых то пнях воют что страницы тяжелые, с таким то вообще жизни нет.
    Мож оно это - написать повыше чтоб компы перестали кирпичом чистить да подновили парк а то уже реакт у них на 3 секунды подвисает)
     

  • 1.16, SKZ (?), 11:32, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А хоть в жабаскрипт что-нибудь компилирует?
     
     
  • 2.21, Аноним (24), 11:56, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Только корпы и неумехи, которым жалко показывать что же они там навасянокодили.
     
  • 2.51, Аноним (-), 14:19, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если я правильно понял, то в качестве примера можно дать Elm, PureScript, Haskell (ghcjs), CoffeeScript.
     
     
  • 3.64, SKZ (?), 14:49, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Если я правильно понял, то в качестве примера можно дать Elm, PureScript,
    > Haskell (ghcjs), CoffeeScript.

    Речь о сабже - делает ли он это (сама смузи-формулировка "компиляция в жабаскрипт" доставляет, просто-напросто)

     
  • 2.57, Аноним (56), 14:24, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А так же ocaml, type script, reason ml, rescript, flow.
     
  • 2.71, Аноним (24), 15:05, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    комментатор поскупился на запятые,
    скорее всего он имел ввиду "в этом вашем жаваскрипт, ну хоть кто нибудь компилирует код в бинарники?"
    в оригинале комментария, да, выглядит косноязычно и вырвиглазно.
     
     
  • 3.76, SKZ (?), 15:23, 17/09/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.82, Аноним (114), 15:48, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    одни пишут зловред, другие орудуют привилегированным токеном, подбрасывая зловред в зависимости.
     
     
  • 3.96, SKZ (?), 16:29, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > одни пишут зловред, другие орудуют привилегированным токеном, подбрасывая зловред в зависимости.

    И все при деле.

     

  • 1.20, Аноним (24), 11:55, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как опять?
    Че они не пристрелят этот завирусованный НПМ, ну или сопровождающих?
     
     
  • 2.143, Аноним (-), 22:56, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А чё они не пристрелили вендовс, когда тот весь в червях был? Мир так не работает, увы. Люди будут героически преодолевать проблемы. А потом ещё и ещё.
     

  • 1.23, Аноним (27), 11:59, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Это уже серьезно - стоит задуматься от отказа от подобных моделей растпространения пакетов.
    Возможно сам червь и не серьезнн, но вот тенденция - сколько уже новостей было. Ощущение такое, что там у них дуршлаг, ибо из раза в раз повторяется одно и то же.
     
     
  • 2.31, Аноним (31), 12:18, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так основная беда в прокладке между монитором и клавиатурой, которую на фишинг подлавливают.
     
     
  • 3.35, Аноним (34), 12:39, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Но а где взять на замену столько прокладок?
     
  • 3.70, Аноним (24), 15:02, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Яндекс как то попробовал из курьеров-доставщиков еды, сделать армию "погромистов", и освоить профессии тестировщика, аналитика, дизайнера, разработчика ПО и др.
    Но у них "что то пошло не так"!
    В чем же они просчитались - до сих пор не поймут.

    Право рассчитывать на место в программе «Яндекса» смогут курьеры со стажем работы в «Еде», «Лавке» или «Доставке» не менее полугода.
    ...
    Следующим этапом будет тест на мотивацию

    https://www.cnews.ru/news/top/2022-04-19_yandeks_verbuet_kurerov

     
  • 2.33, Карлос Сношайтилис (ok), 12:36, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > задуматься от отказа от подобных моделей растпространения пакетов

    Проблема не в модели, а в отсутствии изоляции. Большинство разработчиков не используют локально контейнеры и при запуске пакетов, и те могут делать с локальной фс что захотят. Это не просто дырочка в безопасности, это целый портал.

     
     
  • 3.117, Аноним (114), 21:15, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ударило током, а тут такой: "проблема не в электричестве, а в отсутствие изоляции"
     
     
  • 4.118, Карлос Сношайтилис (ok), 21:35, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Ударило током, а тут такой: "проблема не в электричестве, а в отсутствие изоляции"

    Целый день бился головой об стену. Проблема не в отсутствии мозгов, а в стене.

     
     
  • 5.125, Аноним (114), 00:46, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Точнее, мне кажется: В отсутствие подушечке на голове
     
  • 2.62, Аноним (56), 14:32, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Критикуешь - предлагай.
     
     
  • 3.126, Аноним (114), 00:47, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Предлагаю покритиковать.
     

  • 1.25, Аноним (24), 12:03, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >которые способен обнаружить сканер TruffleHog

    Не пора ли объявить указанный пакет зловредом в их репозитарии?
    Или будут продолжать жрать кактус и выкапывать стюардессу...

     
  • 1.32, SKZ (?), 12:28, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    NPM и всре жабаскриптовое болото - это сам по себе червь, пожирающий тонны ресурсов по всему миру.

     
     
  • 2.37, Соль земли2 (?), 12:49, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Особенно бесит, что нельзя переместить node_modules. Костыли не предлагать.
     
     
  • 3.44, Аноним (44), 13:31, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    В вам никто ничего и не предлагает.
     
  • 3.47, Аноним (24), 14:17, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    1) смотря что вы считаете костылями.
    2) а что не костылями.
    3) стандартный "ln -s" на уровне файловой системы Вас уже не устраивает?
     
     
  • 4.52, 12yoexpert (ok), 14:19, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    это же консоль, ты что, псих что ли? мы не знаем, что это такое
     
     
  • 5.69, Аноним (24), 14:57, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ну, прокатило бы, еслиб я не знал что в js тоже есть консоль.
    и с нее js и начинался.
     
     
  • 6.73, 1 (??), 15:09, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И в этой консоли можно выполнить ln -s и mount ?
     
     
  • 7.78, Аноним (24), 15:27, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    нет.
    по большей части это просто консоль вывода, чем ввода.
     
  • 4.92, Соль земли2 (?), 16:23, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это костыль! В Python можно перенести куда угодно virtualenv, rust/go ставят тоже всё отдельно.
     

  • 1.36, Ценитель GPL рогаликов (?), 12:47, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Чуть ли не каждую неделю какие проблемы с безопасностью в NPM репах. Складывается впечатление, что какие-то спецслужбы учатся взламывать и заражать GNU/Linux.
     
     
  • 2.42, Аноним (44), 13:30, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нет. Дефекты архитектуры проекта.
     
     
  • 3.50, Аноним (24), 14:18, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Стюардесса уже была такая, когда ее выкопали!
     
  • 2.45, Аноним (45), 13:54, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не надо искать злой умысел в том что прекрасно объясняется глупостью и некомпетентностью.
     
     
  • 3.68, Аноним (24), 14:55, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    «Умное лицо — это ещё не признак ума, господа.
    Все глупости на земле делаются именно с этим выражением лица.
    Улыбайтесь, господа. Улыбайтесь!»
     
  • 3.90, Аноним (114), 16:10, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    То есть червь был всегда. Он просто спал энное количество лет и проснулся сам по себе? Когда хотят свести к глупости - это заметают следы и отвлекают внимание.
     
  • 2.74, 1 (??), 15:12, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нифигасе ... Т.е. "Говорим NPM - подразумеваем Linux! Говорим Linux - подразумеваем NPM !" (почти дословная цитата)  ?
     
  • 2.93, Соль земли2 (?), 16:25, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Они не будут так рисковать быть раскрытыми.
     

  • 1.53, Аноним (56), 14:20, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Интересно, сколько времени нужно, чтобы ыксперды перестали обсуждать язык и репозитории, и вспомнили про то, что работа с репозиториями должна проводится из среды, не имеющей возможности выполнения кода, а выполнение кода должно быть в среде, не имеющей доступа к репозиторию.
     
     
  • 2.55, 12yoexpert (ok), 14:21, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    мы бы вспомнили, если бы это было правдой, но это не она
     
  • 2.60, Аноним (34), 14:30, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вы готовы назватьтакую среду?
     
     
  • 3.63, Аноним (56), 14:35, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Подойдёт даже обычный докер контейнер. В докере - noda и запуск кода, на хосте - никакой ноды. Ну и при пробросе файлов, сделать .git недоступной для контейнера, например храня весь код в src, которая на том же уровне, что и .git. При желании, вместо докера можно взять что угодно, хоть jail из bsd.
     
     
  • 4.66, Аноним (24), 14:53, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    про выпрыгивание из докера на уровень хоста - не, не слышали про данные уязвимости?
    (я понимаю, притянуто за уши, но в целом с вами согласен.)
     
  • 4.75, 1 (??), 15:14, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ок. У тебя докер, в докере нода, в ноде майнер.

    "Ну что сынку помогли тебе твои лях^W докеры ?"

     
     
  • 5.77, Аноним (24), 15:24, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Например, если нужно, чтобы контейнер использовал не более 01% одного процессора, используется команда:

    docker run --cpus="0.01" тестовый контейнер

    Например, можно задать доли в два раза большие для одного контейнера по сравнению с другими:

    docker run --cpu-shares=2048 тестовый контейнер два

    как бы это основы...

     
     
  • 6.146, 1 (??), 14:24, 19/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да да - "выключенный компьютер в сейфе из интернета не взломать".

    Зачем мне докер, который без сети и процессора ? Смотреть на него ?

     
  • 5.81, Аноним (56), 15:48, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Майнеру нужен доступ в сеть, а условный докер можно запустить без сети, а зависимости ставить через условный nix. Nix собирает зависимости в изолированном окружении, без доступа к сети.
    >"Ну что сынку помогли тебе твои лях^W докеры ?"

    Вам нужно больше продвинутых инструментов, а не меньше.

     
  • 4.111, Джон Титор (ok), 20:23, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Подойдёт даже обычный докер контейнер. В докере - noda и запуск кода, на хосте - никакой ноды. Ну и при пробросе файлов, сделать .git недоступной для контейнера, например храня весь код в src, которая на том же уровне, что и .git. При желании, вместо докера можно взять что угодно, хоть jail из bsd.

    Хрень не соответствующая предыдущему вашему комментарию. До того ж докер для коммерческого применения платная (ну может не в России, но за рубежом она платная для коммерции).

     
     
  • 5.133, Аноним (56), 10:44, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >До того ж докер для коммерческого применения платная

    Берите не докер. Для изоляции доступно куча утилит, хоть systemd, хоть incus, хоть lxc.

     
  • 4.113, Аноним (-), 20:39, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Подойдёт даже обычный докер контейнер. В докере - noda и запуск кода, на
    > хосте - никакой ноды. Ну и при пробросе файлов, сделать .git недоступной для контейнера,

    А червякам большая разнциа - из контейнера себя рассылать или с хоста?

     
     
  • 5.122, Аноним (121), 22:18, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В предложенной схеме, не всё равно
    1. там не сети
    2. ключей там тоже нет, соотв компрометировать нечего,
     
  • 3.80, Аноним (114), 15:33, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    "активная среда 1" -> "данные" -> "активный репозиторий без прав изменения пакетов"
    сейчас "клиент репозитория" -> "репозиторий" - данные никто не видит и не может охранять их целостность и анализировать на безопасность.

     

  • 1.65, Сосиска (?), 14:51, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    С этими вирусами теперь и вправду придётся по старинке вручную поддерживать зависимости. А тесты запускать внутри виртуалки.
     
     
  • 2.67, Аноним (24), 14:54, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    а мы и не прекращали.
    что у вас за среда разработки, в которой Вы манкируете правилами безопасности?
     
  • 2.89, Аноним (114), 16:06, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >придётся по старинке вручную поддерживать зависимости.

    и не сойти с ума.

     
  • 2.95, Соль земли2 (?), 16:29, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Сначала руками, потом напишете скрипты, а потом и свою пакетную систему. Раз никто этого ещё не сделал, значит всех всё устраивает.
     

  • 1.79, Аноним (114), 15:28, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А вот и "паровозик" в программной управляющей инфраструктуре. Контроль гуманоидов над процессом утрачен.
     
  • 1.84, Аноним (114), 16:00, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >Вредоносные релизы формируются для 20 наиболее популярных пакетов

    Вот так просто объявить релиз?! А где спасительная - в данном случае - бюрократия? Где этапы заморозки и т.п.?

     
     
  • 2.120, Роман (??), 22:03, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    какая еще бюрократия и заморозка на bazaar - там же идея всего этого NPM хранилища убрать фрикции для разработчиков, чтобы перестали ходить к админам в свитерах
     

  • 1.86, Аноним (114), 16:03, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Объекты и субъекты управления в этой среде стали "прозрачными" и поддаются автоматизации для хулиганов - как структура исполнительного модуля в памяти. Не удивительно, что появился  червь.
     
  • 1.98, Гена (??), 16:53, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Судя по всему через пару дней ждем новостей об аналогичном червячке в крейте Раста. Посмотрим, как зумеры будут его ловить.

    Модератор перед затиранием поста, ознакомься пожалуйста, с новостью https://www.opennet.dev/opennews/art.shtml?num=63875

     
     
  • 2.128, Аноним (-), 01:18, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Судя по всему

    Судя по чему? Голосам в голове?

    > ждем новостей об аналогичном червячке в крейте Раста.

    Почти в каждой новости кто-то "ждёт". За всё это время могли бы собраться и сами написать червя. Ах, да, не получается осилить синтаксис, да и с боровом тягаться слишком сложно.

    > Посмотрим, как зумеры будут его ловить.

    А что там смотреть? В прошлый раз был тайпсквотинг с добавлением вредоносного кода. Нашли. Удалили.

    https://www.opennet.dev/opennews/art.shtml?num=57169

     

  • 1.103, Аноним (-), 17:53, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Судя по всему, атака не ограничивается упомянутыми 187 пакетами

    Хипстики такие хипстики. Даже не знают - насколько именно их поимели. Просто топчик. Вроде 187 пакетов, но вроде продолжает создаваться. А, погодите, ноджыэс же вместе с гитхабом макйрософт взял под крыло. И сделав всем мозг своими 2FA и чем там еще ... обеспечил безопасность. И выглядела эта безопасность как гигантский червь. Окей, майкрософт!

     
     
  • 2.104, Аноним (114), 18:28, 17/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Вспомнился Windows 90-х...
     

  • 1.108, Аноним (108), 19:23, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Ждём трёхфакторную аутентификацию + отпечаток большого пальца левой ноги и снимок сетчатки ближайших родственников и/или членов семьи...
     
     
  • 2.131, 0xdeadbee (?), 06:21, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    достаточно подписывать коммиты и бинарники gpg ключами с хорошей пассфразой на private key.
    возможно, приватные ключи придется сдать на проверку подбором пассфразы по словарю.
    если подобралось за разумный срок - посылать на переделку.
     
     
  • 3.136, OpenEcho (?), 11:41, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > достаточно подписывать коммиты и бинарники gpg ключами с хорошей пассфразой на private key.

    А что мешает хулигану сделать тоже самое и подписать своим гпг?

    Он с таким же успехом может загрузить свой публичный ключ указав там ваше имя.

    Это все равно что самому себе паспорт выдавать, веры то только такому паспорту - ноль

     
     
  • 4.152, 0xdeadbee (-), 09:34, 20/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > А что мешает хулигану сделать тоже самое и подписать своим гпг?

    хулиган отсутствет в списке авторизованных проверенных западла не коммитящих авторов NPM.

    > Он с таким же успехом может загрузить свой публичный ключ указав там
    > ваше имя.

    может.
    но ключ авторизованного проверенного западла не коммитящего автора NPM пришел первым.

    еще вопросы ?

    > Это все равно что самому себе паспорт выдавать, веры то только такому
    > паспорту - ноль

    веры любому паспорту РФ из региона ДИЧ - ноль.
    и они затаскивают свои привычки на остальную территорию РФ.
    не хотите читать политоту и многонационалку ? суйте свои аналогии поглубже в,
    не выпускайте их в паблик.

     
     
  • 5.154, OpenEcho (?), 15:33, 21/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> А что мешает хулигану сделать тоже самое и подписать своим гпг?
    > хулиган отсутствет в списке авторизованных проверенных западла не коммитящих авторов NPM.

    Вот здесь поподробнее... - кем проверен и кем авторизован?


    >> Он с таким же успехом может загрузить свой публичный ключ указав там
    >> ваше имя.
    > может.
    > но ключ авторизованного проверенного западла не коммитящего автора NPM пришел первым.

    Пришел? От кого? И почему первым?

    > еще вопросы ?

    Я однажды уже показал одному очень крупному проекту, как легко представится секьюрити офицером от того проекта не будь таковым... Есть еще вопросы?

    >> Это все равно что самому себе паспорт выдавать, веры то только такому
    >> паспорту - ноль
    > веры любому паспорту РФ из региона ДИЧ - ноль.
    > и они затаскивают свои привычки на остальную территорию РФ.
    > не хотите читать политоту и многонационалку ?

    Не, совсем не хочу, и вам не советую лезть с политикой в технику

    > суйте свои аналогии поглубже в, не выпускайте их в паблик.

    Хамим? С какого испугу паспорт должен быть привязан именно к РФ? Других стран нет?
    Серьезно это вас так торкнуло...


     
     
  • 6.156, 0xdeadbee (-), 16:02, 21/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Я однажды уже показал одному очень крупному проекту, как легко представится
    > секьюрити офицером от того проекта

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

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

    // вы слишко много задали вопросов. я пока подожду с ответами.

     
     
  • 7.157, OpenEcho (?), 03:19, 22/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > // вы слишко много задали вопросов. я пока подожду с ответами.

    Вы не воктнули  в смысл того, что я сказал. ПГП подписи это тоже самое как стратус, который прячет голову в песок. Пока  ключи не подписанны **доверенным** 3rd independent party, которым верят все(!!!), толку от пгп подписей = 0

    Сорри, но на пустопорожнее словоблудие нет время...

     
     
  • 8.159, 0xedadbee (-), 22:14, 23/09/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    безопастник вскрылся знайте, что довереннным CA я не доверяю, и всегда ищу сп... текст свёрнут, показать
     
     
  • 9.160, OpenEcho (?), 23:05, 24/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Действительно смешно Истерика Дал безплатно, разжевал что к чему и в ито... текст свёрнут, показать
     
  • 4.153, 0xdeadbee (-), 09:37, 20/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    вдогонку: NPM может профинансировать митап + пьянку + key signing party в реале,
    только для авторизованных проверенных западла не коммитящих авторов.
     
     
  • 5.155, OpenEcho (?), 15:41, 21/09/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > вдогонку: NPM может профинансировать митап + пьянку + key signing party в
    > реале, только для авторизованных проверенных западла не коммитящих авторов.

    И? Что же никто кроме 3 с половиной человека  с  Веботраста  до сих пор не организовали пьянку? И в Кернеле такая же картина, некогда им друг друга в реале перепроверять, делать кросс подписи, проверив живьем морду или на худой конец тот же паспорт. И где гарантии опять же простым смертным не присутвующим на пьянке верить тем кто в теории мог бы сделать (левые?) кросс подписи? Просто по имени ? Или просто что публичный ключ "первым пришел"? (кстати первыми как раз и могут быть от засланных казчков)  на публичных серверах

    Так что ваша секюрная ПГП подпись абсолютно не имеет никакого доверия. Пшик, который любой может настрогать представившись тем кто он на самом деле не есть


     
  • 2.139, Аноним (116), 13:04, 18/09/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я когда-то пробовал зарегаться на мордокниге - быстро заблочили и потребовали скан паспорта.
     

  • 1.112, Джон Титор (ok), 20:27, 17/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Идея вируса отличная, вопрос только - зачем? Типа сам автор опубликовал данные о системе. Интересно!
     
  • 1.142, Anonymus (?), 21:30, 18/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >После активации червь осуществляет поиск учётных данных в текущем окружении
    >В случае обнаружения токена подключения к каталогу NPM
    >Помимо токена доступа к NPM червь сохраняет ключи доступа к <...>

    Пароли небезопасны, говорили они...

    Пароль перехватят, ключи - молча и незаметно украдут, и в чём разница?

     
  • 1.151, YetAnotherOnanym (ok), 18:17, 19/09/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Кгм... Вы меня извините, но "самораспространяющийся червь" - это масло масляное.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру