Конечная точка материализации активов Apache Airflow (`POST /api/v2/assets/{asset_id}/materialize`) и проверка результатов XCom на `wait_dag_run_until_finished` авторизовали целевой Dag без его команды, в отличие от любого другого сайта авторизации. Менеджер аутентификации с поддержкой команды отличает Dag с областью действия команды от глобального по этому полю - например, менеджер аутентификации Keycloak проверяет ресурс `DAG` вместо `DAG:<team>` - поэтому разрешение на уровне команды, которое должно блокировать запрос, никогда не рассматривалось. В развертывании, работающем в многокомандном режиме с менеджером аутентификации, знающим команду, аутентифицированный пользователь в одной команде может запускать запуски Dag, принадлежащие другой команде, предоставляя свои собственные `dag_run_id` и `conf`, и может читать значения XCom другой команды.
Развертывания с использованием менеджера аутентификации FAB не затрагиваются, поскольку он не поддерживает многокомандную работу. Пользователям рекомендуется выполнить обновление до apache-airflow 3.3.1 или более поздней версии, что решает команда Дага на обоих сайтах.
Показать оригинальное описание (EN)
Apache Airflow's asset materialization endpoint (`POST /api/v2/assets/{asset_id}/materialize`) and the XCom result check on `wait_dag_run_until_finished` authorized the target Dag without its team, unlike every other authorization site. A team-aware auth manager distinguishes a team-scoped Dag from a global one by that field -- the Keycloak auth manager, for example, checks the `DAG` resource instead of `DAG:<team>` -- so the team-scoped permission that should gate the request was never consulted. In a deployment running multi-team mode with a team-aware auth manager, an authenticated user in one team could trigger Dag runs belonging to another team, supplying their own `dag_run_id` and `conf`, and could read another team's XCom values. Deployments using the FAB auth manager are unaffected, as it has no multi-team support. Users are advised to upgrade to apache-airflow 3.3.1 or later, which resolves the Dag's team at both sites.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Apache Airflow
cpe:2.3:a:apache:airflow:*:*:*:*:*:*:*:*
|
— |
3.3.1
|