Раскрыта новая порция вредоносных NPM-пакетов, созданных для целевых атак на немецкие компании Bertelsmann, Bosch, Stihl и DB Schenker. Для атаки использован метод смешивания зависимостей, манипулирующий пересечением имён зависимостей в публичных и внутренних репозиториях. В имеющихся в публичном доступе приложениях атакующие находят следы обращения ко внутренним NPM-пакетам, загружаемым из корпоративных репозиториев, поле чего размещают пакеты с теми же именами и более новыми номерами версий в публичном репозитории NPM. Если при сборке внутренние библиотеки явно не привязаны в настройках к своему репозиторию, пакетный менеджер npm считает более приоритетным публичный репозиторий и загружает подготовленный атакующим пакет...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=57177
Как же хорошо, что ещё остались люди, которые перед установкой приложений полностью читают их исходные коды, благодаря чему обеспечивают безопасность.
ядро линукс тоже читаешь перед установкой?
Ядро линукс стало приложением?
А что это? Чем является 30 мб блоб (3 мб в сжатом виде)? Это такая же компиляция софта как и что угодно ещё. Для сравнения, у хрома около-гигабайтный блоб. Хром -- приложение? Какого размера должен быть блоб, чтобы стать приложением?
Нет, но вообще пробэкдорить кернел эффективнее чем приложения. Ведь оно все их запросы выполняет.
Он читает код хромиума перед установкой.
Дважды.
Дважды - чтобы во втором чтении внести правки?
А в третьем - отменить!
Я комиты между версиями читаю, как минимум в интересующих меня местах. А так там куча роботов, анализаторов, ревью при мерже несколькими мордами и все такое...
А там тысячи глаз™
Как можно додуматься отдавать предпочтение внешнему пакету вместо внутреннего? Наверно же не просто так он там лежит. Или у них там нет разделения откуда и что скачивать, лишь бы самое свежее урвать?
Так-то можно явно версию пакета указать.
Чтобы так не подставляться, можно делать локальный форк со своим скоупом, например leftpad превращается в @vasyan/leftpad. И в локальном .npmrc можно вписать что-то типа @vasyan:registry=https://npm.pkg.github.com . Работает даже с приватными репозиториями, надо только auth token сгенерировать. Подменить имя гитхаб пользователя будет явно посложнее.
А как можно додуматься до функции json_last_error_msg() в PHP? Вот я думаю, что это всё какая-то определённая порода кодакОв (программистами их назвать ни в коем случае нельзя) придумывает.
Признание виновными во всем и сразу русских хакеров через: 3... 2... 1... признано!
Загрузка сообщений от прикормленных "экспердов" по безопасности - 32% завершено
Создание медийного скандала с привлечением политики - 1% завершено.---
А теперь следует задать серьёзный вопрос: а что, в NPM оказалось действительно возможным смешение репозиториев и пакет public:AAA и local:AAA теперь одно и то же?Нет, требую пояснительную бригаду в студию, какой в этом практический смысл?
>А теперь следует задать серьёзный вопрос: а что, в NPM оказалось действительно возможным смешение репозиториев и пакет public:AAA и local:AAA теперь одно и то же?если внимательно подумать, то окажется что все системы управления пакетами так и работают - важно в первую очередь название пакета и его версия, а репозиторий как правило не указывается, хоть обычно и есть такая возможность.
В обслуживаемых специально обученными мейнтейнерами репозиториях, допустим, привязка пакета ААА к репозиторию bb или cc действительно нужна скорее для бэклога - узнать откуда установлен пакет.Другое дело, что ЕМНИП во всех виденных мной реализациях есть так или иначе механизм приоритета репозиториев и маскировок. Ну т.е.
- при обновлении при одинаковом приоритете bb:AAA v0.1 до cc:AAA v0.2 обычно спрашивается, мол, стоит ли обновлять с заменой репов
- если реп bb стоит по приоритету выше сс, то для обновления нужно специально указывать смену репа
- если реп bb маскирует пересечение с сс, то пакет cc:ААА не будет виден за bb:AAA хоть там на десять мажорок выше версия.Все равно не понимаю, почему у паблик-помойки нету даже такого?
Ну там хотя бы чтобы внутренние репы маскировали паблик, я не заикаюсь даже про веса приоритетов.
Ты так говоришь как будто твои русские хакеры святые и непогрешимые.
Дадада, решили ломануть как раз те компании, которые решили остаться в России.А вообще, откуда в России хакеры? Там же только дикие russkies в ushankas с balalaikas.
Даже орк может стрелять, не из лука как эльф так из арбалета.
Судя по всему, это был пентестер, а подстановка была запланированной проверкой:On Wednesday, just hours before both JFrog and ReversingLabs posted blogs here and here, a penetration testing boutique named Code White took credit for the packages.
“Tnx for your excellent analysis,” the firm said in a tweet that addressed Snyk and cited its blog post from last month. “And don't worry, the ‘malicious actor’ is one of our interns 😎 who was tasked to research dependency confusion as part of our continuous attack simulations for clients. To clarify your questions: we're trying to mimic realistic threat actors for dedicated clients as part of our Security Intelligence Service and we brought our ‘own’ package manager that supports yarn and npm.”
Источник: https://arstechnica.com/information-technology/2022/05/backd.../
Выглядит так, как будто это умышленное прикрытие провального внедрения вредоноса.
С другой стороны, в современном мире сказанное правильными людьми "Это не карманная кража кошелька, это проверка кражестойкости карманов случайного респондента" пойманными за руку, на ура срабатывает.
> Выглядит так, как будто это умышленное прикрытие провального внедрения вредоноса.
> С другой стороны, в современном мире сказанное правильными людьми "Это не карманная
> кража кошелька, это проверка кражестойкости карманов случайного респондента" пойманными
> за руку, на ура срабатывает.С другой стороны, опеннет без сравнения опы с пальцем и додумывания "как оно там все на самом деле" после чтения заголока - не опеннет.
>> In a direct message, Code White CEO David Elze said the company intern created and posted the packages as part of a legitimate penetration-testing exercise explicitly authorized by the companies affected.
>>
> “We do not disclose the names of our clients but specifically, I can confirm that we're legally contracted by the affected companies and were acting on their behalf to simulate these realistic attack scenarios,” Elze said....или просто взял на себя ответственность, чтобы потушить никому не нужный скандал там, где раздувать его не захотели?
Обычно, как замечено выше, в самой новости, такие proof-of помечаются в коде или безобидными заглушками, или специальными комментариями, но никак не обфусцированной малварью.
>обфусцированныйЗачем? Снимается же тривиально.
конец опенсорцу? кто теперь поверит честному слову? это показывает, кто фирмы вынуждены будут либо делать свои версии нужного ПО, что приведёт к фрагментации, либо должны будут оплачивать аудит каждого нового тарбала. и даже в рамках одной организации может найтись шпион, который всроит бэкдор.
> конец опенсорцу? кто теперь поверит честному слову? это показывает, кто фирмы вынуждены
> будут либо делать свои версии нужного ПО, что приведёт к фрагментации,
> либо должны будут оплачивать аудит каждого нового тарбала. и даже в
> рамках одной организации может найтись шпион, который всроит бэкдор.и лёгким движением ноги, такие рапы как у питона, ноды, го, Dlang могут быть рассадником довольно просто
Скорее приведет к патовой ситуции хакера и солонки.
Ну и да, расширение круга недоверенных систем с сопутствующими механизмами и накладными расходами
> фирмы вынуждены будут либо делать свои версии нужного ПОобъявляю 10 лет велосипедостроения! скорее всего всё так теперь и будет
А в чем проблема ?
Либо юзай и проверяй сам, либо плати за саппорт и поддержку.
> конец опенсорцу? кто теперь поверит честному слову?ужасно! как же мы теперь проживём без того, чтобы корпорасты использовали наш код? шеф, всё пропало, код убирают, корпорасты убегают!
>> конец опенсорцу? кто теперь поверит честному слову?
> ужасно! как же мы теперь проживём без того, чтобы корпорасты использовали наш
> код? шеф, всё пропало, код убирают, корпорасты убегают!а свободным кодерам легче что ли?
Делайте сами, зачем вам эти пакеты.
Не все пакеты содержат в себе лефтпады.
Лефтпад не зловред это чисто чтобы ты бы в курсе, для твоего общего развития.
Контекст дискуссии не зловред это чисто чтобы ты бы в курсе, для твоего общего развития.Но для одаренных: не все пакеты в пару строк, как leftpad, чтобы повально отказываться от всего и писать свои велосипеды.
> ldtzstxwzpntxqn и lznfjbhurpjsqmrнемецкая народная традиция - первой на клавиатуру кидают кошку, что получилось - так и называют пакет
> немецкая народная традицияшифровальная машина Энигма.
Может, это шифротекст для агентов.
Кошка постоянно приземляется сначала на клавишу l и делает после этого ещё 14 ударов по другим клавишам.
> клавишу lI или l?
I в 2 раза жирнее l, не говоря уж о том, что на шрифтах с засечками они совсем разные.
Ты бы поаккуратнее был бы, кошка только вчера получила звание штандартенфюрера.
> пакеты с теми же именами и более новыми номерами версий
> пакетный менеджер npm считает более приоритетным публичный репозиторий и загружает подготовленный атакующим пакетЛюбители обмазываться свеженьким должны страдать
Как и любители засохшего
> Компания Code White заявила, что атака была проведена её сотрудником в рамках согласованной симуляции атаки на инфраструктуру клиентов.Верим.
Npm уже унизили все кто может.
... а караван всё идёт.
Когда же наконец до людей начнет доходить важность умения написать код на стандартной библиотеке без использования сторонних фреймворков и библиотек?
Напомни кто за это заплатит? Если ты мне оплатишь я только за.
Вот только пока ты будешь писать все потенциальные клиенты умрут от старости, а их останки начнут выставлять археологи в музеях.
>Компания Code White заявила, что атака была проведена её сотрудником в рамках согласованной симуляции атаки на инфраструктуру клиентов. В ходе эксперимента были имитированы действия реальных злоумышленников для проверки эффективности работы внедрённых мер защиты.Что-то это напоминает "Рязанский сахар" 1999 г.
Пусть под одеялом имитирует имитатор.
Это обычная практика аудита безопасности. Нанимается несколько комманд и они пытаются ломать (заранее предупретив узкий круг людей из руководства и ознакомив их с планом) компанию по всем областям - от социальной инженерии, цепочее доставок, сетей, до физического вламывания в серверную/офис. Полет фантазии ограничен только суммой вознаграждения.
стопочку новичка этому товарищу
дырявее этой поделки только cargo.io от расторастов