Инциденты с безопасностью в репозиториях PyPI и crates.io

in #ru11 days ago

Разработчики репозитория Python-пакетов PyPI (Python Package Index) сообщили о выявлении проблемы с безопасностью в реализации функции "Organization Team", позволяющей сформировать команду из нескольких разработчиков, совместно работающих над проектом в PyPI. Суть выявленных проблем в том, что привилегии, делегированные пользователю как участнику "Organization Team", сохранялись после удаления пользователя из состава организации. Уязвимость в PyPI была устранена спустя 2 часа после сообщения о наличии проблемы. Проведённый аудит не выявил несанкционированных действий, связанных с использованием не отозванных прав доступа.

О связанном с безопасностью инциденте также сообщили разработчики репозитория crates.io, через который распространяются пакеты на языке Rust. В инфраструктуре crates.io при возникновении ошибок на стороне бэкенда информация о обрабатываемых в момент возникновения проблемы запросах отправляется в сервис мониторинга Sentry. Проблема связана с тем, что среди отправляемых данных присутствовало поле с содержимым Cookie "cargo_session", в котором находился сессионный ключ, идентифицирующий пользователя. Посторонний, получивший данный ключ, мог осуществлять любые действия в незавершённом сеансе пользователя.

Отмечается, что доступ к серверу мониторинга Sentry имели только отдельные участники команд, обслуживающих инфраструктуру проекта и репозиторий crates.io, которые и без того имеют привилегированный доступ к рабочим серверам crates.io. Свидетельств о том, что осевшие в логах сессионные ключи использовались кем-то, не выявлено. После устранения проблемы подобные Cookie были удалены из всех записей о событиях в Sentry, а связанные с ними активные сеансы пользователей завершены.

Источник: https://www.opennet.ru/opennews/art.shtml?num=63086