SSRF через разрешение URL-адреса зеркала Metalink:
Аутентифицированный арендатор может зарегистрировать шаблон, указывающий на контролируемый злоумышленником файл Metallink, содержащий внутренние цели. Виртуальная машина вторичного хранилища получит данные и сохранит их в виде файла шаблона, который позже можно будет загрузить через обычные API. RCE на гипервизоре KVM через NFS, файлы Metalink с прямой загрузкой или без нее:
Прошедший проверку подлинности арендатор CloudStack, имеющий роль пользователя по умолчанию, может выполнять произвольные команды оболочки от имени пользователя root на узле гипервизора KVM, на котором работают виртуальные машины других арендаторов.
Это межклиентский корень базовых вычислений, доступный через общедоступный API CloudStack. Когда пользователь регистрирует шаблон виртуальной машины с параметром DirectDownload=true и URL-адресом, указывающим на файл .metalink, сервер управления извлекает XML-код Metalink и отправляет загрузку агенту KVM. Внутренние URL-адреса внутри XML-кода Metalink никогда не проверяются повторно на соответствие списку разрешений схемы.
Эти проблемы затрагивают Apache CloudStack: с 4.14.0.0 по 4.20.3.0 и с 4.21.0.0 по 4.22.1.0. Пользователям рекомендуется выполнить обновление до версии 4.20.3.1 или 4.22.1.1 или более поздней, что устраняет проблему.
Показать оригинальное описание (EN)
SSRF via Metalink Mirror URL Resolution: An authenticated tenant can register a template pointing to an attacker-controlled metalink file containing internal targets. The Secondary Storage VM will retrieve the data and persist it as a template file, which can later be downloaded through normal APIs. RCE on KVM hypervisor via NFS, Metalink files with/without Direct Downloads: An authenticated CloudStack tenant holding the default User role can execute arbitrary shell commands as root on the KVM hypervisor host that runs other tenants' VMs. This is cross-tenant root on the underlying compute, reachable via the public CloudStack API. When a User registers a VM template with directDownload=true and a URL pointing to a .metalink file, the management server fetches the metalink XML and dispatches download to the KVM agent. Inner URLs inside the metalink XML are never re-validated against the scheme allowlist. These issues affect Apache CloudStack: from 4.14.0.0 through 4.20.3.0 and from 4.21.0.0 through 4.22.1.0. Users are recommended to upgrade to version 4.20.3.1 or 4.22.1.1 or later, which fixes the issue.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 2
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Apache Cloudstack
cpe:2.3:a:apache:cloudstack:*:*:*:*:*:*:*:*
|
4.14.0.0
|
4.20.3.1
|
|
Apache Cloudstack
cpe:2.3:a:apache:cloudstack:*:*:*:*:*:*:*:*
|
4.21.0.0
|
4.22.1.1
|