Уязвимость в RubyGems.org, позволяющая подменить чужие пакеты
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
В репозитории пакетов RubyGems.org выявлена критическая уязвимость (CVE-2022-29176), позволяющая без наличия должных полномочий подменить некоторые чужие пакеты в репозитории путём инициирования изъятия (yank) легитимного пакета и загрузки вместо него другого файла с тем же именем и номером версии.
Для успешной эксплуатации уязвимости необходимо выполнения трёх условий:
- Атака может быть совершена только на пакеты, в имени которых используется символ тире.
- Атакующий должен иметь возможность разместить gem-пакет с частью имени до символа тире. Например, если атака производится на пакет "rails-html-sanitizer", атакующий должен разместить в репозитории собственный пакет "rails-html".
- Пакет, на который совершается атака, должен быть создан в последние 30 дней или не обновляться в течение 100 дней.
Уязвимость вызвана ошибкой в обработчике действия "yank", трактующего часть имени после тире как название платформы, что позволяло инициировать удаление чужих пакетов, совпадающих в части имени до символа тире. В частности, в коде обработчика операции "yank" для поиска пакетов использовался вызов 'find_by!(full_name: "#{rubygem.name}-#{slug}")', при том, что параметр "slug" передавался владельцем пакета для определения удаляемой версии. Владелец пакета "rails-html" вместо версии "1.2.3" мог указать "sanitizer-1.2.3", что привело бы к применению операции к чужому пакету "rails-html-sanitizer-1.2.3".
Проблема была выявлена исследователем безопасности в рамках действующей на HackerOne программы выплаты вознаграждений за поиск проблем с безопасностью в известных открытых проектах. Проблема устранена в RubyGems.org 5 мая и по заявлению разработчиков они пока не выявили следов эксплуатации уязвимости в логах за последние 18 месяцев. При этом пока проведён лишь поверхностный аудит и в дальнейшем планируется проведение более глубокой проверки.
Для проверки своих проектов рекомендуется проанализировать историю операций в файле Gemfile.lock, вредоносная активность выражается в наличии изменений с сохранением имени и версии или сменой платформы (например, когда пакт gemname-1.2.3 обновлён до gemname-1.2.3-java). В качестве обходного метода защиты от скрытой подмены пакетов в системах непрерывной интеграции или при публикации проектов разработчикам рекомендовано использовать Bundler с опциями "--frozen" или "--deployment" для фиксации зависимостей.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://greg.molnar.io/blog/ru...)
- OpenNews: В RubyGems выявлено 724 вредоносных пакета
- OpenNews: В RubyGems устранено 7 уязвимостей
- OpenNews: В RubyGems выявлена удалённо эксплуатируемая уязвимость
- OpenNews: В RubyGems устранена уязвимость, позволявшая подменять файлы в репозитории
- OpenNews: Rubygems.org подвергся взлому
Похожие новости:
- [Ruby, Google Chrome, Ruby on Rails] Генерация картинок в коде
- Серия вредоносных дополнений в Chrome Web Store и модулей в RubyGems
- [Читальный зал, Ruby on Rails] Рецензия
- GitHub добавил средства информирования об уязвимостях в репозиториях
- В RubyGems выявлена удалённо эксплуатируемая уязвимость
- Несколько уязвимостей в RubyGems
Теги для поиска: #_rubygems
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 26-Ноя 05:16
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
В репозитории пакетов RubyGems.org выявлена критическая уязвимость (CVE-2022-29176), позволяющая без наличия должных полномочий подменить некоторые чужие пакеты в репозитории путём инициирования изъятия (yank) легитимного пакета и загрузки вместо него другого файла с тем же именем и номером версии. Для успешной эксплуатации уязвимости необходимо выполнения трёх условий:
Проблема была выявлена исследователем безопасности в рамках действующей на HackerOne программы выплаты вознаграждений за поиск проблем с безопасностью в известных открытых проектах. Проблема устранена в RubyGems.org 5 мая и по заявлению разработчиков они пока не выявили следов эксплуатации уязвимости в логах за последние 18 месяцев. При этом пока проведён лишь поверхностный аудит и в дальнейшем планируется проведение более глубокой проверки. Для проверки своих проектов рекомендуется проанализировать историю операций в файле Gemfile.lock, вредоносная активность выражается в наличии изменений с сохранением имени и версии или сменой платформы (например, когда пакт gemname-1.2.3 обновлён до gemname-1.2.3-java). В качестве обходного метода защиты от скрытой подмены пакетов в системах непрерывной интеграции или при публикации проектов разработчикам рекомендовано использовать Bundler с опциями "--frozen" или "--deployment" для фиксации зависимостей. =========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 26-Ноя 05:16
Часовой пояс: UTC + 5