Архив метки: npm

Почитал, что там пишут про вторую серию инцидента с Trivy от Aqua Security

Почитал, что там пишут про вторую серию инцидента с Trivy от Aqua Security

Почитал, что там пишут про вторую серию инцидента с Trivy от Aqua Security. А там мощный движ! 🔥🙂 Вообще у меня всегда было весьма скептическое отношение к Trivy. В первую очередь из-за качества детектирования уязвимостей. Каждый раз, когда я пытался использовать его для анализа докер-образов, я наталкивался на какие-то жуткие фолз-позитивы. Причём логику детектирования уязвимостей было отследить весьма непросто. Поэтому я Trivy использовал только в крайних случаях. Если образ можно было просканировать, детектируя чётко по бюллетеням безопасности через Vulners API, - делал так. Если нельзя из-за того, что образ был на основе какого-то дистрибутива, который Vulners на тот момент не поддерживал (например Alpine), то вынужденно использовал Trivy. Лучше, чем ничего. И тем более Trivy же БЕСПЛАТНЫЙ! 🙂 И если не задумываться о качестве детектирования, то бесплатный сканер - это ведь очевидный и лучший выбор, так ведь? 😅 Правда, я Trivy не пользовался уже года 3-4. Возможно, что с детектированием уязвимостей ситуация у них стала получше. Но вот с собственной безопасностью похоже стало хуже. Иначе как объяснить, что вместо бесплатного сканера с официального репозитория Trivy на GitHub распространяется малварь (и это уже во второй раз за два месяца!). 😱

В конце прошлой недели, 20 марта, исследователь безопасности Paul McCarty сообщил о крупной атаке на цепочку поставок, нацеленной на Trivy.

"Внимание! Trivy версии 0.69.4 скомпрометирована ⚠️ Контейнерные образы и GitHub-релизы версии 0.69.4 являются вредоносными, поэтому если вы используете Trivy в CI, стоит срочно обратить на это внимание. К счастью, версия через Homebrew не была скомпрометирована, как я сообщал ранее. Вредоносная нагрузка представляет собой бинарный файл, и мы пока не провели его анализ, но обновим информацию, как только узнаем больше. Огромное спасибо команде, которая оперативно отреагировала сегодня - вы спасли ОЧЕНЬ много людей от крайне неприятного дня."

Подробности по малвари на opensourcemalware.

Разработчики часто встраивают Trivy в свои CI/CD-пайплайны - и это делает его особенно привлекательным для злоумышленников, поскольку позволяет им похищать API-ключи, учетные данные облаков и баз данных, токены GitHub, а также множество других секретов и чувствительной информации.

За атакой стоит группа TeamPCP. Им удалось это сделать, потому что ещё в феврале та же группа воспользовалась ошибкой конфигурации в GitHub Action Trivy и похитила токен с привилегированным доступом. Эта проблема безопасности так и не была полностью устранена, и позже, в марте, злоумышленники использовали этот токен для создания поддельных коммитов в Trivy.

Исследователи из Socket и Wiz в выходные установили подробности атаки. Атака затронула несколько компонентов проекта Trivy: основной сканер, GitHub Action trivy-action и GitHub Action setup-trivy. Злоумышленники принудительно обновили 75 из 76 тегов trivy-action до вредоносных версий, что означает: любой, кто использовал Trivy в своем пайплайне разработки, запускал инфостилер-вредонос при обращении к сканеру.

Исследователи также обнаружили, что TeamPCP расширила свои операции, начав заражать экосистему npm с помощью ранее неизвестного червя под названием CanisterWorm, используя похищенные publish-токены из первоначального взлома Trivy.

В воскресенье Socket зафиксировали дополнительные вредоносные образы, опубликованные в Docker Hub, а Paul McCarty отметил высокий импакт атаки: "44 внутренних репозитория были взломаны, переименованы и сделаны публичными - включая исходный код Tracee, внутренние форки Trivy, CI/CD-пайплайны, Kubernetes-операторы и базы знаний команд (team knowledge bases)". Socket отмечают, что, хотя полный масштаб доступа остаётся неясным, наличие этих репозиториев указывает на более глубокий уровень контроля во время компрометации.

Charles Carmakal, директор Mandiant Consulting, на мероприятии Google заявил:

"Нам известно о более чем 1 000 затронутых SaaS-средах, которые прямо сейчас активно сталкиваются с этим конкретным злоумышленником. Количество этих жертв, вероятно, вырастет ещё на 500, ещё на 1 000, возможно, ещё на 10 000. И мы знаем, что эти акторы сейчас сотрудничают с рядом других групп".

В общем, излишнее доверие к сторонним бесплатным компонентам и излишняя автоматизация вышли компаниям боком. Снова. 😏🍿

Ещё один пример, почему слепо доверять публичным опенсурсным библиотекам может быть крайне опасно

Ещё один пример, почему слепо доверять публичным опенсурсным библиотекам может быть крайне опасно

Ещё один пример, почему слепо доверять публичным опенсурсным библиотекам может быть крайне опасно. В мае 2025 года в npm-репозитории появился пакет "lotusbail", реализующий работу с API мессенджера WhatsApp (разрабатываемого экстремистской компанией Meta). Этот пакет выполнял все заявленные функции.👌 НО кроме того, содержал зловредную функциональность по перехвату сообщений, контактов, токенов аутентификации и привязке аккаунта жертвы к устройству атакующего. 🤷‍♂️

Зловредный пакет был доступен аж до 23 декабря. За это время его скачали около 60 000 раз. 😱

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

Декабрьский "В тренде VM": уязвимости в Windows, библиотеке expr-eval, Control Web Panel и Django

Декабрьский В тренде VM: уязвимости в Windows, библиотеке expr-eval, Control Web Panel и Django

Декабрьский "В тренде VM": уязвимости в Windows, библиотеке expr-eval, Control Web Panel и Django. Традиционная ежемесячная подборка трендовых уязвимостей. В этот раз достаточно компактная. 💽

🗞 Пост на Хабре
🗞 Пост на SecurityLab
🗒 Дайджест на сайте PT

Всего четыре уязвимости:

🔻 EoP - Windows Kernel (CVE-2025-62215)
🔻 RCE - expr-eval (CVE-2025-12735)
🔻 RCE - Control Web Panel (CVE-2025-48703)
🔻 SQLi - Django (CVE-2025-64459)

🟥 Портал трендовых уязвимостей

Мне не нравится, когда опенсурс возводят в культ и представляют как волшебное решение всех проблем, а в особенности проблем с кибербезопасностью

Мне не нравится, когда опенсурс возводят в культ и представляют как волшебное решение всех проблем, а в особенности проблем с кибербезопасностью

Мне не нравится, когда опенсурс возводят в культ и представляют как волшебное решение всех проблем, а в особенности проблем с кибербезопасностью. 😬 На самом деле опенсурс это в основном про хаос, безответственность и огромное количество неблагодарной и, как правило, неоплачиваемой работы. 🤷‍♂️

Возьмём библиотеку expr-eval из предыдущего поста. У библиотеки 800k скачиваний в неделю, она используется в куче проектов (только в npm 259 зависящих пакетов). При этом когда был последний коммит в проект? 4 года назад. 🫠 Вот исследователи нашли там критичную уязвимость, принесли фикс мейнтейнеру Matthew Crumley на GitHub, а достучаться до него не могут. Последняя активность на гитхабе в 2023 году. 🤷‍♂️ Соответственно, нет и вполне вероятно, что не будет фикса в этой библиотеке, которая остаётся доступной для использования.

Самого Matthew Crumley в этом нельзя винить, он, так-то, никому и ничего не должен. 😉 И надеюсь, что у него всё хорошо и просто человеку надоело. 🙏

Про уязвимость Remote Code Execution - expr-eval (CVE-2025-12735)

Про уязвимость Remote Code Execution - expr-eval (CVE-2025-12735)

Про уязвимость Remote Code Execution - expr-eval (CVE-2025-12735). expr-eval - это JavaScript-библиотека для парсинга и вычисления математических выражений, обеспечивающая безопасную обработку пользовательских переменных. Она используется в онлайн-калькуляторах, учебных программах, инструментах для моделирования, финансовых приложениях, системах ИИ и обработки естественного языка (NLP). Уязвимость, связанная с недостаточной проверкой входных данных, может привести к выполнению произвольного JavaScript-кода в контексте приложения.

🛠 Уязвимость была выявлена 5 ноября. PoC на GitHub доступен с 11 ноября.

⚙️ Пока уязвимость находится в процессе устранения в основном (фактически заброшенном 🤷‍♂️) проекте expr-eval, и не полностью устранена в его форке expr-eval-fork. Безопасные версии должны появиться в соответствующей GHSA.

🌐 Библиотека популярная. У expr-eval 800к скачиваний в неделю на npm, у expr-eval-fork - 88к.

👾 Признаков эксплуатации вживую пока нет.