The OpenNET Project / Index page

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

Фишинг позволил получить контроль над несколькими популярными NPM-пакетами

21.07.2025 08:19

Зафиксирована фишинг-атака на сопровождающих JavaScript-библиотеки, в ходе которой от имени сервиса NPM было разослано сообщение, уведомляющее о необходимости подтвердить свой email. Проведённая атака позволила злоумышленникам получить NPM-токены сопровождающего одного из крупных JavaScript-проектов и выпустить обновления с вредоносным кодом для пяти NPM-пакетов, в сумме насчитывающих около 100 млн загрузок в неделю.

Отправленное сопровождающим сообщение было стилизовано под типовые уведомления NPM, отправляемые с адреса "support@npmjs.org", но в качестве ссылки для перехода был указан домен "npnjs.com" вместо "npmjs.com" (третья буква "n" вместо "m"). Атакующие воспользовались психологическим эффектом, из-за которого мозг, предвосхищая ожидаемый результат, не замечает незначительные искажения, такие как замена букв на похожие или изменение порядка следования букв в слове. При переходе по ссылке открывалась полная копия сайта npmjs.com (вероятно, был настроен прокси, перехватывающий токен доступа).

В ходе атаки были сформированы новые версии пакетов:

В сформированные выпуски был добавлен вредоносный код для атаки на пользователей, использующих платформу Windows. Внесённые изменения загружали библиотеку node-gyp.dll, содержащую функциональность для удалённого выполнения команд в системе.

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

Не уточняется сколько пользователей успело загрузить вредоносные версии (например, вредоносная версия пакета eslint-plugin-prettier оставалась в репозитории около двух дней). За прошлую неделю пакет eslint-config-prettier насчитывал 30 млн загрузок и использовался в качестве зависимости у 11762 тысячи пакетов, пакет eslint-plugin-prettier - 21 млн загрузок (8468 зависимых пакетов), synckit - 18 млн, @pkgr/core - 16 млн и napi-postinstall - 10 млн.

Дополнение: Выявившие фишинг-атаку исследователи несколько дней назад также обратили внимание на 28 NPM-пакетов, авторами которых было включено изменение категории Protestware. Изменение приводило к воспроизведению украинского гимна и отключению обработки событий от мыши на сайтах в доменных зонах "ru", "su", "by" и "рф", если пользователь ранее уже открывал сайт более трёх дней назад и в его браузере была включена поддержка русского языка. Изначально изменение было реализовано около трёх лет назад в пакете Sweetalert2, насчитывающем 700 тысяч загрузок в неделю и используемого в 2403 других пакетах как зависимость. Наличие протестной активности было отдельно упомянуто на странице проекта. Через какое-то время изменение стало заимствоваться авторами других пакетов, как правило насчитывающие несколько сотен загрузок в неделю.

  1. Главная ссылка к новости (https://socket.dev/blog/npm-ph...)
  2. OpenNews: Злоумышленники смогли внедрить бэкдор в NPM-пакет от разработчиков криптовалюты XRP
  3. OpenNews: Утечка пользовательской базы списка рассылки автора сервиса HaveIBeenPwned
  4. OpenNews: Из-за опечатки в настройках атакующие могли подменить DNS-сервер MasterCard
  5. OpenNews: В NPM-пакет node-ipc внесено вредоносное изменение, удаляющее файлы на системах в России и Беларуси
  6. OpenNews: Разработчик внёс деструктивные изменения в NPM-пакеты colors и faker, применяемые в 20 тысячах проектов
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63610-npm
Ключевые слова: npm, phishing
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (66) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 09:22, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +24 +/
    Ну а чего вы ждали от людей, считающих нормой подключать библиотеку для проверки четности числа?
     
     
  • 2.4, Аноним (4), 09:28, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Ты утрируешь немного, но да тот же dayjs получше будет, чем велосипед от васяна для дат.
     
     
  • 3.43, Аноним (43), 12:26, 21/07/2025 Скрыто ботом-модератором     [к модератору]
  • +4 +/
     
  • 3.69, morphe (?), 20:38, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Все нормальные браузеры уже умеют Temporal API:
    https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objec
     
  • 2.5, Аноним (5), 09:29, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –15 +/
    1. Никто не считает нормой: is-odd имеет 700,000 установок в неделю, что совсем мало по меркам популярных (часть нормы) пакетов -- десятки миллионов.
    2. Библиотеки в npm более узкоспецифичны, и релизятся значительно чаще сишных аналогов. Там, где у си единый комбайн GTK с плеядой функционала, в npm отдельно поставляются: реакт только для возможности создавать компоненты, библиотека для управления дизайн-токенами, библиотека для стилизации, библиотека для отрисовки прикольного одного компонента. Это неплохой подход -- уж точно позволяет обновлять их независимо, а не ждать месяцами, пока комбайн GTK обновится.
     
     
  • 3.9, Аноним (9), 09:55, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Сам-то понял, что написал?
     
     
  • 4.15, Аноним (5), 10:40, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Что из написанного ты не понял?
     
     
  • 5.55, 1 (??), 15:18, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вам не кажется, что npm и GTK попендикулярны ?
     
  • 5.68, 12yoexpert (ok), 19:38, 21/07/2025 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
  • 3.20, Tron is Whistling (?), 10:55, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Заодно позволяет аккуратно впилить бэкдор так, что все эти тысячи хомячков, делающие по тысяче загрузок по штуке на сборку после каждой правки - ничего вообще годами не заметят.
     
     
  • 4.22, Аноним (4), 10:57, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А ситуация в пыховом компосте прямо кардинально противоположная?
     
     
  • 5.34, Аноним (1), 11:22, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Покажи новость про фишинговую атаку на пыховый композер, обсудим.
     
  • 4.24, Аноним (5), 10:58, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ты же про XZ Utils, верно? Везде, где ты скачиваешь чужой код, есть риски. Но хомячки и далее будут скачивать сгенеренный кем-то тарбол вместо чекаута гита.
     
     
  • 5.27, Tron is Whistling (?), 11:01, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Видишь в чём прикол - в XZ Utils таки обнаружили.
    А здесь - вложил версию 0.1.2.3.4567890 с бэкдором, подождал ДЕСЯТЬМУЛЬОНОВЗАГРУЗОК, вложил 0.1.2.3.4567891 - 99.99999999999% из этих ДЕСЯТЬМУЛЬОНОВЗАГРУЗОК даже смотреть не будет, чего там изменилось.
     
     
  • 6.29, Аноним (5), 11:05, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > в XZ Utils таки обнаружили

    Ага, а сабжевая новость про что? Про то, что фишинг не обнаружили? Давай почитаем: "Зафиксирована фишинг-атака..." Значит обнаружили все-таки?

    > даже смотреть не будет, чего там изменилось

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

     
     
  • 7.47, Tron is Whistling (?), 12:32, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вот как раз чекаут гита лучше и не трогать. Тарбаллы так-то подписаны, и качает он их тьфу-тьфу с мегамонстра (орацл), который ни разу не публичная репо-помойка.
     
  • 7.67, Аноним (67), 18:35, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И, конечно, все чеканутые коммиты подписаны? Нет? А тарболлы - да.
    А если ты исходники после распаковки тарболла не проверил, то и после джит-пулла, очевидно, не проверишь.
     
  • 3.70, Анон1110м (?), 21:58, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Весь стэк технологий, который крутится вокруг JavaScript, подозрительно напоминает пародию на идеологию UNIX: куча мелких программ, которые максимально хреново делают свою работу, порой дублируя друг друга. Скорость работы всего этого зоопарка, даже в случае если вы используете только поддерживаемое всеми браузерами подмножество фич, будет давать такой разброс, что пользователи Firefox или IE будут наслаждаться слайд–шоу, пока пользователь Chrome будет выжимать все соки из своего компьютера, проходя простенькую пиксельную аркаду, вроде тех, которые были столь распространены на игровых консолях в 80–х и 90–х годах.

    Даже то, единственно хорошее на мой взгляд, что есть в JavaScript, хваленая скорость ноды — и это результат тысяч угробленных человеко–часов на то, чтобы браузер не тормозил, когда Васин сайт бросит ему вызов всеми своими кривонаписанными скриптами. Ну или хотя бы тормозил не так сильно, когда в соседней вкладке будет работать Twitter. Это отчаянная попытка сделать вэб–приложения хоть сколько–то лучше. И эта попытка была не одна — asm.js также был одной из стратегий увеличения производительности JavaScript.

    Что больше всего раздражает в JavaScript, так это иллюзия того, что перед вами полноценный язык типа Java или Python. На бумаге есть всё — встроенные в язык регулярные выражения, реализация ООП, пусть и альтернативная, как любят повторять адепты языка. И асинхронность есть — ею все уши прожужжали, а по факту всё это выливается в бесконечное хождение по мукам да лихую пляску на костылях.

     
     
  • 4.76, Аноним (76), 08:13, 22/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >хваленая скорость ноды — и это результат тысяч угробленных человеко–часов на то, чтобы браузер не тормозил

    Какая связь между нодой и браузером? Ничего не путаешь?


    >иллюзия того, что перед вами полноценный язык типа Java или Python

    Так это не иллюзия, JavaScript действительно полноценный язык…

     
     
  • 5.83, Анон1110м (?), 10:56, 22/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    К самому языку докопаться к слову почти негде — настолько мала его доля во всем стэке технологий. Тот же DOM отдан на откуп браузерами, весь ввод–вывод отдан библиотекам, модули и человеческая поддержка ООП реализуется ими же. И куда ни глянь, в какую область применения не кинь взгляд, тут же откуда слышится шепоток восторженного JS–боя, о том, что и для этого у них есть библиотека. Когда библиотеки используются для того, чтобы использовать какой–то нестандартный или специализированный функционал — это нормально, когда библиотеки используются для расширения языка общего назначения, это тоже нормально — Boost для С++ отличный пример (если не брать в расчёт его монструозность), а вот когда библиотеки используются для узкоспециализированного языка, причем не расширяя его функционал, а просто скрывая его недостатки, то это заставляет задуматься.
     
  • 3.71, Анон1110м (?), 21:59, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Весь стэк технологий, который крутится вокруг JavaScript, подозрительно напоминает пародию на идеологию UNIX: куча мелких программ, которые максимально хреново делают свою работу, порой дублируя друг друга. Скорость работы всего этого зоопарка, даже в случае если вы используете только поддерживаемое всеми браузерами подмножество фич, будет давать такой разброс, что пользователи Firefox или IE будут наслаждаться слайд–шоу, пока пользователь Chrome будет выжимать все соки из своего компьютера, проходя простенькую пиксельную аркаду, вроде тех, которые были столь распространены на игровых консолях в 80–х и 90–х годах.
     

  • 1.2, Аноним (4), 09:23, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Интересно, на опеннете постоянно появляются новости про фишинг в npm, а почему про пыховский компост нет новостей: мол, там нет уязвимостей?
     
     
  • 2.10, жявамэн (ok), 09:56, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    у нормальных языков все нормально с администрированием репозиторием
     
     
  • 3.17, Аноним (4), 10:52, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –4 +/
    вы хотите сказать, что пых - нормальный язык? может и так, но вот библиотеки на пыхе в компосте пишутся не разработчиками пыха, а васянами со всего света, вот так то! и на пыхе можно по-разному программировать.
     
  • 2.11, penetrator (?), 09:59, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –7 +/
    так пыха мертвая, доживает свои последние дни в виде крупных проектов прошлых лет

    никто не тянет ее на сайт, авторов нет

     
     
  • 3.18, Аноним (4), 10:53, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    дык, вроде в e-commerce пыха всё ещё активно юзается и в разных сайтиках на laravel, разве нет? не знаю, поэтому спрашиваю.
     
     
  • 4.73, Аноним (73), 01:13, 22/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Корпы не нанимают пм-ов у котороых пых основной это не серьезно, там или лоббирование java, c# или всякие typescript-ы хотя есть какой-то там 1С Битрикс, но ничего про него не знаю давно не видел вообще кто-то 1с пользует вообще?
     
  • 3.19, Аноним (-), 10:54, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    К сожалению все ещё самый популярный язык в вебе. Вся их проблема в том что они сильно усложнили в одной из версий, когда появилась груша, автозагрузчики файлов и много пользователей не разобрались, посчитали что все стало сильно сложно, хотя это правда.
     
  • 3.28, Аноним (28), 11:05, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > так пыха мертвая, доживает свои последние дни

    Зачем так сразу? Но нет ничего невозможного. Учитесь у старших ТОВАРИЩЕЙ - готовьте народ постепенно (окно Овертона).

     
     
  • 4.86, penetrator (?), 20:06, 22/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> так пыха мертвая, доживает свои последние дни
    > Зачем так сразу? Но нет ничего невозможного. Учитесь у старших ТОВАРИЩЕЙ -
    > готовьте народ постепенно (окно Овертона).

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

     

  • 1.6, Tron is Whistling (?), 09:42, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отличная новость. Лишний раз подтверждает очевидное - норму жизни публичных помоек кода.
     
     
  • 2.12, Аноним (12), 10:04, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    По сути сделай такой же сайт - скажут, что зеркало. Имею ввиду публично никто ничего не поймет. Т.к. сейчас блокировки и все остальное.. под шумок - зеркало и все.

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

    Все же фильтры необходимы. Локальные.

     
     
  • 3.13, Tron is Whistling (?), 10:10, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Мозги необходимы... локальные...
     
     
  • 4.16, Аноним (12), 10:47, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Человеческий фактор.
     
  • 2.31, Аноним (-), 11:09, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да у меня дорогой ребенок недавно вирусняк на Андроид с плей-стор Гугла поставил. О чем речь?
    А что вы предлагаете вместо? Вернуться к дискам? Так проблема то была в пиратстве.
    Вы знаете я не осуждаю, сам был когда-то мал и беден, и скачивал весьма многие программы и видео (в основном для образования), но если у вашей семьи есть деньги или вы уже взрослый и зарабатываете - кто вам мешает купить, да честно поступить? Вы знаете я даже купил старые книги, которые уже давно прочёл когда денег не было просто чтоб отблагодарить автора (надеюсь это помогло).
     
     
  • 3.46, Tron is Whistling (?), 12:31, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Вирусняк на андроид? Ну так ещё поставьте туда свои банк-клиенты, будет действительно дорогой ребёнок.

    А в целом ваш пост - про бузину и дядьку.

     
  • 2.54, Аноним (54), 15:17, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так фишинг может везде быть запрятан:
    21-й: https://cnews.ru/link/n533617
    23-й: https://www.forbes.ru/tekhnologii/484840-group-ib-rasskazala-o-napadenii-kitaj
    24-й: https://cnews.ru/link/n609984
     

  • 1.8, Аноним (8), 09:53, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Такие атаки должны выявляться браузером: переход на ранее не посещенный адрес, который отличается одной или похожими буквами от адреса в истории посещения.
     
     
  • 2.14, dannyD (?), 10:34, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    ну да, давай встроим в бровзер ИИ )))
     
     
  • 3.23, Tron is Whistling (?), 10:57, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > ну да, давай встроим в бровзер ИИ )))

    ИИ уже впору пользующимися всеми этими NPM встраивать...

     
  • 3.25, Аноним (8), 10:59, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ИИ там нам нах не нужон! Нужна довольно примитивная и легковесная эвристика.
     
     
  • 4.45, Аноним (45), 12:31, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Любую твою вристику можно обмануть узнав алгоритм. У ИИ алгоритм скрыт.
     
     
  • 5.59, Аноним (8), 16:00, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Надо чтобы такие убогие атаки, как подмена одной буквы и т.п. не срабатывали. Пусть даже все правила эвристики будут известны.
     
  • 2.32, Аноним (32), 11:12, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Уже выявляются. Посмотри настройки какого-нибудь Эджа
     
  • 2.37, Аноним (45), 11:33, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Браузер никому ничего не должен он уверенный в себе субъект.
     
     
  • 3.48, Аноним (28), 12:42, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Если человек не пишет код сам, а собирает его по файловым помойкам, ему уже ничто не поможет - ни браузер, ни ИИ, ни браузер с ИИ, не IDE с ИИ или без, ни антивирус. Другое дело - работодателя ситуация устраивает.
     
     
  • 4.56, 1 (??), 15:21, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Скоро ИИ будет сам собирать код по файловым помойкам.

     
     
  • 5.61, Аноним (61), 16:17, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не это ли было целью ИИ - проделать дверь изнутри?
     
  • 5.63, Аноним (63), 16:41, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так уже. Разве гитхаб, на которой столуется копилот - не мусорный бак?
     

  • 1.21, Ананимаз (?), 10:57, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    надеюсь лефтпад не пострадал. Держу кулачки.
     
     
  • 2.74, Аноним (73), 01:14, 22/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    давно уже затащили в стандарт разрабы то не дураки хорошие библиотеки популярные реализуют
     

  • 1.38, Аноним (38), 11:41, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Почитайте тикет по ссылке, там целая драма. В ответ на сообщение о нездоровых изменениях и публикации пакетов чел пишет "Похоже что у кого-то утёк токен!". А ему отвечают "Опубликовал эти пакеты ты, так что это наверное твой токен утёк". И он наконец-то раздупляется и сообщает, что стал жертвой фишинга.
     
     
  • 2.42, Аноним (28), 12:11, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это нормальный прием в определенных кругах - сочинять всё новые доводы, пока какой-нибудь из них не убедит собеседника (собеседников). Одни делают вид, что говорят правду, другие делают вид, что им верят.
     

  • 1.40, Аноним (40), 11:54, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Зачем нам клиентский JS, когда есть Траст?
     
  • 1.51, Аноним (51), 13:45, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Поэтому логины и пароли нужно хранить в браузере, который не будет автоматически их подставлять в форму, если домен подменили. Когда же они научатся?
     
     
  • 2.52, Аноним (52), 14:29, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Половина сайтов написаны обезьянами и в них пароль не подставляется и без подмены домена, к этому все привыкли, поэтому просто будут вводить пароль на левом сайте.
     
  • 2.53, Аноним (4), 14:45, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В localStorage, которое подвержено XSS или где?
     

  • 1.57, Аноним (57), 15:32, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Нужна безальтернативная двухфакторная аутентификация по хардварным ключам и криптографические подписи релизов. В идеале, запрет публикации любого  кода, в котором есть непописанные коммиты. Всё остальное полумеры, которые не будут работать.
     
  • 1.58, Аноним (58), 15:44, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    M и N на клавиатуре рядом находится. Это баг!
     
     
  • 2.62, Аноним (8), 16:29, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да понятно, что отправитель письма просто опечатался. К нему претензий быть не может ).
    Виноват невнимательный юзер.
     

  • 1.65, Аноним (65), 17:41, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно девки пляшут, сервис почти что критической инфраструктуры не имеет даже SPF/DMARC записей в ДНС, что позволяет спокойно слать фишинговые письма (рукалицо)
     
     
  • 2.66, Аноним (67), 18:24, 21/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А вы как хотели? Тыртырпрайз. Сурьёзный бизнес. Сурьёзные дяди проглядели что их рабы, вместо гребли на галерах, были слишком заняты поливанием помоями сообщества в комментариях на Опеннете. Сократят бюджет подхалимам, увеличат - эйчеркам, schеки подсдуются, хвocты подберутся, и всё наладится. (Нет.)
     
  • 2.85, Аноним (85), 15:05, 22/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это фишинговое письмо было без меток SPF, DKIM, DMARC. А у домена npmjs.org все эти метки есть.
     

  • 1.72, Аноним (72), 22:39, 21/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Ждем, когда то же самое будут делать с cargo и crates.io.
     
     
  • 2.75, Аноним (73), 01:15, 22/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    сначала его нужно сделать популярным, а пока там три землекопа и особо нет желающих использовать
     
     
  • 3.82, Аноним (82), 10:11, 22/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    не три, а полтора
     

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



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

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