CVE-2021-45230 Apache Airflow: Creating DagRuns didn't respect Dag-level permissions in the Webserver
Users with DAG Run creation permissions can create runs for DAGs they lack edit access to, bypassing intended authorization controls.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2021-45230?
CVE-2021-45230 is a medium-severity missing authorization vulnerability in Apache Airflow, published on 20 Jan 2022. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
In Apache Airflow prior to 2.2.0. This CVE applies to a specific case where a User who has "can_create" permissions on DAG Runs can create Dag Runs for dags that they don't have "edit" permissions for.
Which versions are affected by CVE-2021-45230?
4 open source packages ship an affected version, including apache-airflow and airflow. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
apache-airflow PyPI | All versions | 2.2.0 |
apache-airflow PyPI | All versions | 2.2.0 |
apache-airflow PyPI | From 1.10.0 | 2.0.0b1, 2.2.0 |
airflow Bitnami | From 2.0.0 | 2.2.0 |
Products include Apache Airflow.
How do I fix CVE-2021-45230?
Upgrade apache-airflow to a fixed version for your release line: 2.2.0 or 2.0.0b1.
Upgrade, and check permissions on every request on the server, not only in the interface. More about Missing authorization.
Is CVE-2021-45230 being exploited?
There is no known exploitation of CVE-2021-45230 in the wild and no public exploit code.
Other vulnerabilities in Apache Airflow
- CVE-2020-13927 Apache Airflow's Experimental API Authentication Bypass
- CVE-2020-11978 Apache Airflow Command Injection
- CVE-2026-33264 Apache Airflow: DAG author RCE on webserver via unrestricted import_string() in BaseSerialization.deserialize()
- CVE-2023-25754 Apache Airflow: Privilege escalation using airflow logs
- CVE-2023-22884 Apache Airflow, Apache Airflow MySQL Provider: Arbitrary file read via MySQL provider in Apache Airflow
Sources
Also known as BIT-airflow-2021-45230, GHSA-4jh2-3c85-q67h, PYSEC-2022-11.