CVE-2026-81914: Apache Airflow Google provider: Google Drive query injection via unescaped file and folder names
Apache Airflow's Google provider built Google Drive search expressions by interpolating file and folder names directly into single-quoted string literals, without escaping the quote character that delimits them. A name containing an apostrophe therefore terminated the literal early and appended clauses of the attacker's choosing to the query.
The names are frequently not written by the Dag author. In a wildcard gcstogdrive transfer they come from the source bucket listing, so anyone able to create objects in that bucket controls them — typically an external data producer or an ingest-only service account, a different trust principal from the Dag author. An injected clause can broaden the match and so steer which file or folder the hook resolves: an upload can be directed into a folder the attacker named, and, because downloads select the most recently modified match, a download can return a file they placed rather than the one the Dag asked for.
Affects deployments passing externally-sourced names to the Google Drive hook, including wildcard gcstogdrive transfers from buckets writable by less-trusted principals. Users are advised to upgrade to apache-airflow-providers-google 22.6.0 or later, which escapes quote and backslash characters in every value interpolated into a Drive query.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
apache-airflow-providers-googleto a version that resolves this vulnerability.Fixed in 22.6.0
Event History
Frequently Asked Questions
Which deployments are realistically exposed?
Deployments that pass externally sourced file or folder names to the Google Drive hook are affected. This includes wildcard gcs_to_gdrive transfers when the source bucket can be written by less-trusted principals, such as external data producers or ingest-only service accounts.
What access does an attacker need?
The attacker needs the ability to create an object with a crafted name in a source bucket whose contents are used by the workflow. They do not need to be the DAG author if a different, less-trusted principal can write to that bucket.
What could an attacker achieve through a crafted object name?
A crafted apostrophe can alter the Google Drive search query and broaden its match. This can steer an upload into an attacker-named folder or cause a download to return an attacker-placed file, since downloads select the most recently modified matching file or folder.
How can teams identify workflows at risk?
Review workflows that use the Google Drive hook, especially wildcard gcs_to_gdrive transfers. Prioritize those where object names or folder names originate from buckets writable by principals that are not trusted to control Google Drive query inputs.