Apache Airflow's Google provider built Google Drive search expressions by...
Medium4.3CVE-2026-81914 · Published Sep 29, 2026
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 `gcs_to_gdrive` 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 `gcs_to_gdrive` transfers from buckets writable by less-trusted principals. Users are advised to upgrade to `apache-airflow-providers-go...
Affected versions
| Package | Affected | Fixed in |
|---|---|---|
| Apache Airflow Google provider Product | < 22.6.0 | 22.6.0 |
Details and references
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 `gcs_to_gdrive` 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 `gcs_to_gdrive` 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.
- CVSS 3.1
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
- Severity from
- CISA (its enrichment of the CVE record)
- Weakness
- CWE-943
More Apache Software Foundation advisories
All Apache Software Foundation| Date | Advisory | Severity | Fixed in |
|---|---|---|---|
| Sep 29 | Apache Polaris: missing authorization | High8.1 | 1.8.0 |
| Sep 29 | Apache DolphinScheduler: improper authorization | Medium4.3 | 3.4.3 |
| Sep 29 | Apache DolphinScheduler: missing authorization | Medium6.5 | 3.4.3 |
| Sep 29 | Apache DolphinScheduler: authentication bypass | Medium5.3 | 3.4.3 |
| Sep 29 | Apache DolphinScheduler: improper authorization | Medium4.3 | 3.4.3 |
| Sep 29 | Apache DolphinScheduler: improper authorization | Medium4.3 | 3.4.3 |