PYSEC-2026-3986

See a problem?
Import Source
https://github.com/pypa/advisory-database/blob/main/vulns/apache-airflow-providers-apache-kafka/PYSEC-2026-3986.yaml
JSON Data
https://api.osv.dev/v1/vulns/PYSEC-2026-3986
Aliases
Published
2026-09-16T10:16:55Z
Modified
2026-09-19T23:00:02Z
Severity
  • 8.8 (High) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H CVSS Calculator
Summary
[none]
Details

Apache Airflow Apache Kafka provider versions 1.15.0 before 2.0.0 resolve dotted-path strings found in a Kafka connection's extra field into Python callables via import_string, with no allowlist, and hand them to the confluent-kafka client which invokes them. Deployments that have enabled the Kafka event producer — dag_run_events_enabled or task_instance_events_enabled, both disabled by default — build that client inside the scheduler process, so a user whose only privilege is editing Airflow connections gains arbitrary code execution in the control plane; the Airflow security model limits connection-configuration users to code execution on workers, not the scheduler. Deployments using Google Managed Kafka are not affected, because that code path overwrites any user-supplied oauth_cb; plain brokers and Amazon MSK are exposed. Users are recommended to upgrade to apache-airflow-providers-apache-kafka 2.0.0 or later, which adds an allowlist configuration option for connection-string callbacks.

References

Affected packages

PyPI / apache-airflow-providers-apache-kafka

Package

Name
apache-airflow-providers-apache-kafka
View open source insights on deps.dev
Purl
pkg:pypi/apache-airflow-providers-apache-kafka

Affected ranges

Type
ECOSYSTEM
Events
Introduced
1.15.0
Fixed
2.0.0

Affected versions

1.*
1.15.0
1.15.1rc1
1.15.1rc2
1.15.1
1.16.0rc1
1.16.0
2.*
2.0.0rc1

Database specific

source
"https://github.com/pypa/advisory-database/blob/main/vulns/apache-airflow-providers-apache-kafka/PYSEC-2026-3986.yaml"