Read the docs
TI-2026-30660 Aliases CVE-2026-42358GHSA-33g2-gx67-c2h3

Apache Airflow: Variable masker depth-limit bypass returns cleartext nested secrets

Priority LOW 29CWE-200Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
None
Attack complexity
Low
Impact type
Information disclosure
Confidentiality · integrity · availability
High · None · None
Fix status
Fixed

Attack profile from CVSS 3.1 · CISA ADP. Fix status from CNA and GitHub. Impact type from CWE-200.

Summary

A bug in Apache Airflow's Variable response masker caused nested-key redaction (triggered by secret-suffixed key names like `password`, `token`, `secret`, `api_key`) to be bypassed when the JSON value's nesting depth exceeded the shared secrets masker's recursion limit: the masker returned the original nested item before checking the sensitive key name. An authenticated UI/API user with Variable read permission could harvest plaintext secret values stored under sensitive keys nested deep enough to exceed the masker's depth cap. Affects deployments that store sensitive values inside deeply-nested JSON Variables. This is a residual gap in the fix for CVE-2026-32690 (which covered shallower nesting via `max_depth=1`); the depth-limit boundary itself was not raised, so the same key-name bypass pattern reappears beyond the recursion cap. Users who already upgraded for CVE-2026-32690 should additionally upgrade to `apache-airflow` 3.2.2 or later to cover the deep-nesting path.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00335 27th percentileScored 2026-11-07
Fix Fixed Apache Airflow (Apache Software Foundation): 3.0.0, 3.2.2apache-airflow (PyPI): 3.2.2

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
ApacheApache Airflowbefore 3.0.03.0.0Patch availableCNA
ApacheApache Airflow3.0.0 to before 3.2.23.2.2Patch availableCNA
—apache-airflow (PyPI)before 3.2.23.2.2Patch availableGHSA-33g2-gx67-c2h3
  • Apache Airflow VendorApache Affected before 3.0.0 Fixed in 3.0.0 Patch available CNA
  • Apache Airflow VendorApache Affected 3.0.0 to before 3.2.2 Fixed in 3.2.2 Patch available CNA
  • apache-airflow (PyPI) Vendor— Affected before 3.2.2 Fixed in 3.2.2 Patch available GHSA-33g2-gx67-c2h3

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:apache:airflow:*:*:*:*:*:*:*:*before 3.2.2VulnerableApache
  • cpe:2.3:a:apache:airflow:*:*:*:*:*:*:*:* Versions before 3.2.2 Vulnerable ·Apache

Remediation

  • Fix · CNA Apache Airflow (Apache Software Foundation) Fixed in 3.0.0
  • Fix · CNA Apache Airflow (Apache Software Foundation) Fixed in 3.2.2
  • Fix · GHSA-33g2-gx67-c2h3 apache-airflow (PyPI) Fixed in 3.2.2 Advisory →

Fixed in the same release

Records fixed by the same vendor advisory or release, as the CNA lists them.

  • Release ·

    Apache Airflow 3.2.2

    17 records Highest priority Priority MEDIUM 3 MEDIUM, 14 LOW

    Other records, highest priority first

    • TI-2026-30568 Apache Airflow: BashOperator Jinja2 injection via dag_run.conf — low-privilege user patternPriority MEDIUM 47
    • TI-2026-36484 Apache Airflow: JWT Token Exposure in KubernetesExecutor Command-Line ArgumentsPriority MEDIUM 41
    • TI-2026-30661 Apache Airflow: Authenticated RCE via XCom PATCH endpoint — XComUpdateBody missing FORBIDDEN_XCOM_KEYS validatorPriority MEDIUM 41
  • Release ·

    Apache Airflow 3.0.0

    9 records Highest priority Priority MEDIUM 1 MEDIUM, 8 LOW

    Other records, highest priority first

    • TI-2026-36484 Apache Airflow: JWT Token Exposure in KubernetesExecutor Command-Line ArgumentsPriority MEDIUM 41
    • TI-2026-33151 Apache Airflow: Arbitrary import in custom deadline-reference deserializationPriority LOW 39
    • TI-2026-29518 Apache Airflow: Arbitrary File Read via Log Symlink following in FileTaskHandlerPriority LOW 30

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-42358
  2. 2026-10-03 Alias added: GHSA-33g2-gx67-c2h3
  3. 2026-11-03 Fix available: [email protected], [email protected] · CNA

References

  • TI-2020-10905 Missing authentication in Apache Airflow KEVCVSS 3.1CRITICAL 9.8
  • TI-2020-09638 OS command injection in Apache Airflow KEVCVSS 3.1HIGH 8.8
  • TI-2022-19017 Apache Airflow <2.4.0 has an RCE in a bash example CVSS 3.1HIGH 8.8
  • TI-2021-16140 Apache Airflow: Variable Import endpoint missed authentication check CVSS 3.1CRITICAL 9.8
  • TI-2022-08169 Apache Airflow: RCE in example DAGs CVSS 3.1HIGH 8.8
  • TI-2024-26776 Apache Airflow: DAG Author Code Execution possibility in airflow-scheduler CVSS 3.1HIGH 8.8
See all 157 →

Sources