KubeVela — это платформа доставки приложений с открытым исходным кодом. До версии 1.9.14, с 1.10.0-alpha.1 по 1.10.9 и с 1.11.0-alpha.1 по 1.11.0-alpha.4 загрузчик удаленной конфигурации Terraform в pkg/controller/utils/capability.go, GetTerraformConfigurationFromRemote, клонирует репозиторий, предоставленный через core.oam.dev/v1beta1. ComponentDefinition и следует за символическими ссылками, управляемыми репозиториемvariables.tf или main.tf. Пользователь с разрешением на создание или обновление объектов ComponentDefinition может указать переменные.tf на /dev/zero через terraform.path, после чего os.Stat и os.ReadFile перейдут по ссылке и прочитают неограниченный поток, прежде чем ParseTerraformVariables или синтаксический анализ HCL смогут отклонить содержимое.
Чтение может исчерпать память, привести к уничтожению контроллера Vela-Core в масштабе кластера, вызвать повторные перезапуски Pod и оказать давление на память узла, если не настроен эффективный предел контейнера. Эта проблема исправлена в версиях 1.9.14, 1.10.9 и 1.11.0-альфа.4.
Показать оригинальное описание (EN)
KubeVela is an open source application delivery platform. Prior to 1.9.14, from 1.10.0-alpha.1 until 1.10.9, and from 1.11.0-alpha.1 until 1.11.0-alpha.4, the Terraform remote configuration loader in pkg/controller/utils/capability.go, GetTerraformConfigurationFromRemote, clones a repository supplied through a core.oam.dev/v1beta1 ComponentDefinition and follows repository-controlled variables.tf or main.tf symlinks. A user with permission to create or update ComponentDefinition objects can point variables.tf to /dev/zero through terraform.path, after which os.Stat and os.ReadFile follow the link and read an unbounded stream before ParseTerraformVariables or HCL parsing can reject the content. The read can exhaust memory, OOM-kill the cluster-wide vela-core controller, cause repeated Pod restarts, and pressure node memory when no effective container limit is configured. This issue is fixed in versions 1.9.14, 1.10.9, and 1.11.0-alpha.4.
Характеристики атаки
Последствия
Строка CVSS v3.1