apache-airflow: Apache Airflow Task SDK fails to mask list-shaped JSON Variables
What fixes it
- 3.3.1apache-airflow, pipGitHub
- 3.3.1Apache AirflowCVE List
- 3.3.1apache-airflow, PyPIOSV
pip install "apache-airflow>=3.3.1"
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
Apache Airflow's Task SDK did not mask the contents of a Variable whose JSON value is a list, so secrets stored in that shape appeared in cleartext in task logs and in the Rendered Templates UI. Masking was applied only when the deserialized value was a string or a dict; a list at the top level matched neither and was returned unmasked. Any authenticated user able to read the logs or rendered templates of a task that references such a Variable could recover the values, with no special configuration required. This is the list-shaped counterpart of CVE-2026-59244, whose fix covered the dict case only, so deployments that upgraded in response to that advisory remain affected and must upgrade again. Users are advised to upgrade to apache-airflow 3.3.1 or later.
Text from CVE List
Affected versions 53
- apache-airflow, pip< 3.3.1GitHub
- Apache Airflowaffected: all versions before 3.3.1CVE List
- apache-airflow, PyPIfrom first release, fixed in 3.3.1OSV
- apache-airflow, PyPI1.10.0OSV
- apache-airflow, PyPI1.10.1OSV
- apache-airflow, PyPI1.10.10OSV
- apache-airflow, PyPI1.10.10rc1OSV
- apache-airflow, PyPI1.10.10rc2OSV
- apache-airflow, PyPI1.10.10rc3OSV
- apache-airflow, PyPI1.10.10rc4OSV
- apache-airflow, PyPI1.10.10rc5OSV
- apache-airflow, PyPI1.10.11OSV
- apache-airflow, PyPI1.10.11rc1OSV
- apache-airflow, PyPI1.10.11rc2OSV
- apache-airflow, PyPI1.10.12OSV
- apache-airflow, PyPI1.10.12rc1OSV
- apache-airflow, PyPI1.10.12rc2OSV
- apache-airflow, PyPI1.10.12rc3OSV
- apache-airflow, PyPI1.10.12rc4OSV
- apache-airflow, PyPI1.10.13OSV
- apache-airflow, PyPI1.10.13rc1OSV
- apache-airflow, PyPI1.10.14OSV
- apache-airflow, PyPI1.10.14rc1OSV
- apache-airflow, PyPI1.10.14rc2OSV
- apache-airflow, PyPI1.10.14rc3OSV
- apache-airflow, PyPI1.10.14rc4OSV
- apache-airflow, PyPI1.10.15OSV
- apache-airflow, PyPI1.10.15rc1OSV
- apache-airflow, PyPI1.10.1b1OSV
- apache-airflow, PyPI1.10.1rc2OSV
- apache-airflow, PyPI1.10.2OSV
- apache-airflow, PyPI1.10.2b2OSV
- apache-airflow, PyPI1.10.2rc1OSV
- apache-airflow, PyPI1.10.2rc2OSV
- apache-airflow, PyPI1.10.2rc3OSV
- apache-airflow, PyPI1.10.3OSV
- apache-airflow, PyPI1.10.3b1OSV
- apache-airflow, PyPI1.10.3b2OSV
- apache-airflow, PyPI1.10.3rc1OSV
- apache-airflow, PyPI1.10.3rc2OSV
- apache-airflow, PyPI1.10.4OSV
- apache-airflow, PyPI1.10.4b2OSV
- apache-airflow, PyPI1.10.4rc1OSV
- apache-airflow, PyPI1.10.4rc2OSV
- apache-airflow, PyPI1.10.4rc3OSV
- apache-airflow, PyPI1.10.4rc4OSV
- apache-airflow, PyPI1.10.4rc5OSV
- apache-airflow, PyPI1.10.5OSV
- apache-airflow, PyPI1.10.5rc1OSV
- apache-airflow, PyPI1.10.6OSV
- apache-airflow, PyPI1.10.6rc1OSV
- apache-airflow, PyPI1.10.6rc2OSV
- apache-airflow, PyPI1.10.7OSV
References 9
- github.com/apache/airflow/pull/70891Fixvia CVE List
- github.com/apache/airflow/commit/0de18f5ea722fdb0f3372d02cf0222348e83ddcfFixvia GitHub
- github.com/apache/airflow/commit/c2e4711c6fd43f344f5940e37f813cb3aa49dbf1Fixvia GitHub
- github.com/apache/airflow/releases/tag/3.3.1Fixvia GitHub
- lists.apache.org/thread/kkrlnbsk47oght4h38mcd3h2kcb8dt28Advisoryvia CVE List
- github.com/pypa/advisory-database/tree/main/vulns/apache-airflow/PYSEC-2026-3712.yamlAdvisoryvia GitHub
- github.com/advisories/GHSA-f3c2-j7g8-vpp8Advisoryvia GitHub
- nvd.nist.gov/vuln/detail/CVE-2026-68970Referencevia GitHub
- cve.org/CVERecord?id=CVE-2026-59244Referencevia CVE List