Инъекция языка **экспрессии ** была найдена в функции HeaderContentGuard.permit в publication.py охранника контента в пакете **Pulpcore **. Охранник должен проверить значение в заголовке запроса. Он сохраняет фильтр и запускает этот фильтр против заголовка, когда клиент запрашивает контент.
Фильтр не ограничивается заголовком, и встроенный env также возвращает среду процесса содержимого. Низкопривилегированный сетевой злоумышленник или пользователь, который может создать защиту содержимого заголовка и прикрепить его к дистрибутиву, может сохранить фильтр, который читает эту среду. Запрос содержимого разрешается или отклоняется в соответствии с результатом фильтра.
Повторение запроса позволяет злоумышленнику или пользователю восстановить среду, включая параметры Pulp, такие как секретный ключ Django или пароль базы данных.
Показать оригинальное описание (EN)
An **expression language injection** has been found in the HeaderContentGuard.permit function in publication.py of the content guard in the **Pulpcore** package. The guard is supposed to check a value in a request header. It saves a jq filter and runs that filter against the header when a client asks for content. The filter is not limited to the header, and jq's env builtin also returns the environment of the content process. A low-privileged network attacker or user who can create a header content guard and attach it to a distribution can save a filter that reads that environment. The content request is allowed or denied according to the filter result. Repeating the request lets that attacker or user recover the environment, including Pulp settings held there, such as the Django secret key or the database password.
Характеристики атаки
Последствия
Строка CVSS v3.1