Renovate — это инструмент автоматизации обновления зависимостей. В версиях до 44.11.2 (и изображениях и диаграммах Mend Renovate CE/EE до 15.4.0 и контрольной диаграмме mend-renovate-enterprise-edition до 10.4.0) при выводе списка новых версий пакета из реестра NuGet Renovate следует URL-адресам нумерации страниц, предоставленным реестром в HTTP-заголовке Link, без проверки того, что цель имеет то же происхождение, что и настроенный реестр. Учетные данные реестра прикрепляются к запросу на «следующую» страницу, поэтому вредоносный или скомпрометированный реестр NuGet может вернуть заголовок «Link», указывающий на сервер, контролируемый злоумышленником, и заставить Renovate отправить учетные данные реестра на этот сервер.
Для эксплуатации требуется, чтобы удаленный реестр был вредоносным или скомпрометированным; такой реестр обычно уже получил бы учетные данные при первоначальном запросе, поэтому проблема в первую очередь позволяет доставить учетные данные на дополнительный хост, выбранный злоумышленником. Исправление ограничивает нумерацию страниц одним и тем же источником; предыдущее поведение можно повторно включить с помощью параметра RENOVATE_X_NUGET_PAGINATION_ALLOW_CROSS_ORIGIN.
Показать оригинальное описание (EN)
Renovate is a dependency update automation tool. In versions before 44.11.2 (and Mend Renovate CE/EE images and charts before 15.4.0, and mend-renovate-enterprise-edition helm chart before 10.4.0), when listing new package versions from a NuGet registry Renovate follows pagination URLs supplied by the registry in the HTTP `Link` header without verifying that the target has the same origin as the configured registry. Registry credentials are attached to the request for the 'next' page, so a malicious or compromised NuGet registry can return a `Link` header pointing at an attacker-controlled server and cause Renovate to send the registry credentials to that server. Exploitation requires the remote registry to be malicious or compromised; such a registry would normally already have received the credentials on the initial request, so the issue primarily allows the credentials to be delivered to an additional, attacker-chosen host. The fix restricts pagination to the same origin; the previous behaviour can be re-enabled with the RENOVATE_X_NUGET_PAGINATION_ALLOW_CROSS_ORIGIN option.
Характеристики атаки
Последствия
Строка CVSS v4.0