Google: Более 35 000 Java-пакетов уязвимы перед Log4Shell

Google: Более 35 000 Java-пакетов уязвимы перед Log4Shell

Google: Более 35 000 Java-пакетов уязвимы перед Log4Shell

Команда Google просканировала крупнейший на сегодняшний день репозиторий Java-пакетов — Maven Central и пришла к выводу, что 35 863 пакета используют уязвимые версии библиотеки Apache Log4j. Таким образом, масштабы бреши Log4Shell продолжают удивлять экспертов.

Среди пакетов с проблемными версиями Log4j есть и те, что уязвимы перед самым первым эксплойтом для CVE-2021-44228 (Log4Shell). Однако часть пакетов страдает от второй выявленной бреши — CVE-2021-45046, приводящей к удалённому выполнению кода.

В отчёте команды Google Open Source Insights специалисты указывают на тот факт, что обычно серьёзная Java-уязвимость затрагивает лишь 2% пакетов в Maven Central. Судя по всему, с Log4Shell дела обстоят куда хуже, ведь 35 тыс. пакетов составляют около 8% от коллекции Maven Central.

Джейм Уэттер и Ники Рингленд из команды Google ещё раз подчеркнули важность обновить уязвимые пакеты и использовать пропатченную версию библиотеки, однако сами специалисты считают, что патчинг в отдельных случаях будет происходить годами, а рассчитывать на полное устранение брешей пакетов в Maven Central просто наивно.

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

Атакующие взломали популярный сканер Trivy через GitHub-теги

Одна из самых неприятных историй последних дней развернулась вокруг Trivy — популярного сканера уязвимостей от Aqua Security, который используют разработчики и DevOps-команды по всему миру. Атакующие смогли скомпрометировать почти все версии инструмента в рамках атаки на цепочку поставок, и последствия здесь могут быть действительно серьёзными.

О проблеме публично сообщил мейнтейнер Trivy Итай Шакури. По его словам, если есть хоть малейшее подозрение, что в пайплайне запускалась скомпрометированная версия, все секреты нужно считать утёкшими и срочно ротировать.

Исследователи из Socket и Wiz выяснили, что внедрённый зловред не просто подменял работу Trivy, а параллельно запускал настоящий сканер и свою вредоносную нагрузку. То есть внешне всё могло выглядеть вполне штатно, пока внутри шёл сбор конфиденциальных данных.

По данным исследователей, зловред прочёсывал CI/CD-пайплайны, машины разработчиков и окружение в поисках GitHub-токенов, облачных учётных данных, SSH-ключей, Kubernetes-токенов и других секретов. Всё найденное он архивировал, шифровал и отправлял на сервер, контролируемый атакующими.

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

Под удар попали 75 тегов в trivy-action и ещё семь тегов setup-trivy. Среди затронутых версий оказались и очень распространённые варианты вроде @0.34.2, @0.33 и @0.18.0. По имеющейся информации, незатронутой осталась только версия @0.35.0.

Именно это делает инцидент особенно опасным. Если воркфлоу в GitHub Actions ссылался на один из таких тегов, при запуске Trivy он автоматически подтягивал уже не легитимный код, а вредоносную подмену. Компрометация могла произойти просто в момент очередного штатного сканирования.

По данным Wiz, у атакующих был и запасной канал вывода данных. Сначала зловред пытался отправить собранную информацию на домен scan.aquasecurtiy[.]org. Если это не удавалось, он пробовал использовать украденный GITHUB_TOKEN, чтобы создать репозиторий tpcp-docs и выгрузить данные туда.

Если же зловред понимал, что работает не в пайплайне, а на машине разработчика, он дополнительно записывал кодированный base64 дроппер на Python для закрепления.

Отдельно настораживает и предыстория атаки. Массовая компрометация началась в четверг, но, как пояснил Итай Шакури, её корни уходят в более ранний инцидент — взлом расширения VS Code Aqua Trivy, произошедший ещё в прошлом месяце. Тогда атакующие получили учётные данные с правами записи в GitHub-аккаунт Trivy.

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

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

RSS: Новости на портале Anti-Malware.ru