A bug in `BaseSerialization.deserialize()` allowed unrestricted `import_string()` of attacker-controlled class paths when the Scheduler / API Server loaded a serialized DAG: a DAG author could embed a malicious trigger into a DAG to gain remote code execution on the API Server / Scheduler process, crossing the Airflow security boundary that DAG-author code must never execute in those processes. Users are advised to upgrade to `apache-airflow` 3.3.0 or later. As a defense-in-depth mitigation, deployments where DAG-author trust is limited can restrict the `[core] allowed_deserialization_classes` config to a narrow allowlist.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HApache Airflow
APPApache< 3.3.0
Related vulnerabilities
Apache Airflow — brak uwierzytelnienia w Experimental API umożliwia RCE
Apache Airflow: command injection przez niebezpieczny wzorzec w dokumentacji BashOperator
Apache Airflow: brak unieważnienia tokenu JWT po wylogowaniu
Apache Airflow Providers FAB — nieprawidłowe wygasanie sesji (CWE-613)
Apache Airflow – błąd przełączania kontekstu uprawnień przed wersją 2.6.0