В Rust-репозитории crates.io выявлен вредоносный пакет rustdecimal

Автор Сообщение
news_bot ®

Стаж: 6 лет 9 месяцев
Сообщений: 27286

Создавать темы news_bot ® написал(а)
11-Май-2022 11:30

Разработчики языка Rust предупредили о выявлении в репозитории crates.io пакета rustdecimal, содержащего вредоносный код. Пакет был основан на легитимном пакете rust_decimal и пользовался для распространения сходством в имени (тайпсквоттинг) с расчётом на то, что пользователь не обратит внимание на отсутствие символа подчёркивания, осуществляя поиск или выбирая модуль из списка.
Примечательно, что указанная стратегия оказалась успешной и по числу загрузок фиктивный пакет лишь немного отстал от оригинала (~111 тысяч загрузок rustdecimal 1.23.1 и 113 тысяч оригинального rust_decimal 1.23.1). При этом большинство загрузок пришлось на безобидный клон, не содержащий вредоносного кода.
Вредоносные изменения были добавлены 25 марта в версии rustdecimal 1.23.5, которая до выявления проблемы и блокирования пакета была загружена около 500 раз (предполагается что большая часть загрузок вредоносной версии совершена ботами) и не была использована в зависимостях у других пакетов, присутствующих в репозитории (не исключено, что вредоносный пакет был в зависимостях у конечных приложений).
Вредоносные изменения сводились к добавлению новой функции Decimal::new, в реализации которого содержался обфусцированный код для загрузки с внешнего сервера и запуска исполняемого файла. При вызове функции осуществлялась проверка переменной окружения GITLAB_CI, в случае выставления которой с внешнего сервера загружался файл /tmp/git-updater.bin. Загружаемый вредоносный обработчик поддерживал работу в Linux и macOS (платформа Windows не поддерживалась).
Предполагалось, что вредоносная функция будет выполнена в процессе тестирования на системах непрерывной интеграции. После блокировки rustdecimal администраторы crates.io выполнили анализ содержимого репозитория на наличие похожих вредоносных вставок, но не выявили проблем в других пакетах. Владельцам систем непрерывной интеграции на базе платформы GitLab рекомендуется убедиться, что тестируемые на их серверах проекты не использовали в зависимостях пакет rustdecimal.
===========
Источник:
OpenNet.RU
===========

Похожие новости: Теги для поиска: #_rust, #_security, #_mallware, #_crate
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 22-Ноя 09:23
Часовой пояс: UTC + 5