Skip to main content

Apache Airflow Google Provider CVE-2026-45361

| EUVDEUVD-2026-31659 HIGH
Key Exchange without Entity Authentication (CWE-322)
2026-05-25 apache GHSA-g9v5-gjwf-9rwx
8.1
CVSS 3.1 · Vendor: apache
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Identify Airflow worker
  2. Delivery
    GCE SSH path
  3. Exploit
    Gain in-path network position
  4. Install
    Intercept SSH connection attempt
  5. C2
    Present attacker host key (auto-accepted)
  6. Execute
    Proxy session and capture credentials
  7. Impact
    Inject commands on GCE VM

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Authenticated key exchange
Exploitation Conditions

Exploitation requires (1) the victim to use ComputeEngineSSHHook from apache-airflow-providers-google < 22.0.0 to SSH from an Airflow worker into a Compute Engine VM, (2) the hook to be running with its default AutoAddPolicy host-key behavior (which is the shipped default and remains the default even after the 22.0.0 upgrade unless host_key_policy="reject" is explicitly set), and (3) the attacker to hold an in-path/MitM position on the network path between the worker and the GCE instance - captured by CVSS AC:H. No authentication to Airflow or GCP is required of the attacker (PR:N, UI:N), but exploitation is bounded to deployments whose worker→VM SSH traffic traverses a network the attacker can intercept; purely intra-VPC paths inside a trusted Google network are substantially harder to target.

Impact

Signals are mixed and lean toward elevated but not urgent risk. CVSS 8.1 (AV:N/AC:H/PR:N/UI:N/C:H/I:H/A:H) reflects high confidentiality, integrity, and availability impact with no authentication needed, but AC:H correctly captures that the attacker must already hold an in-path network position between Airflow worker and the GCE VM - a non-trivial prerequisite. EPSS is 0.02% (4th percentile) and SSVC marks Exploitation as none and Automatable as no, while Technical Impact is total; this points to a vulnerability that is severe when exploited but unlikely to be opportunistically attacked at scale. There is no CISA KEV listing and no public exploit identified at time of analysis. The realistic priority is moderate: organizations running Airflow workers on hostile or shared networks, hybrid-cloud egress paths, or environments where GCP traffic transits third-party infrastructure should treat it as urgent, while purely intra-VPC deployments face lower exposure.

Exploit ScenarioDerived

An attacker who controls a network hop between the Airflow worker subnet and the Compute Engine target - for example via a compromised on-prem-to-GCP VPN appliance, a malicious peer in a shared transit network, or DNS/ARP poisoning on a co-located worker network - answers the SSH connection, presents their own host key (which Airflow silently accepts via AutoAddPolicy), and proxies the session to the real VM. They can then capture any credentials or secrets pushed by DAG tasks, alter command output, or inject commands executed on the GCE instance. No public proof-of-concept is documented, but the attack is conceptually equivalent to any standard SSH MitM against a client with disabled host-key checking.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 08, 2026

Man-in-the-middle exposure in Apache Airflow's apache-airflow-providers-google package (versions prior to 22.0.0) stems from the ComputeEngineSSHHook shipping with paramiko.AutoAddPolicy as its default missing-host-key policy, silently trusting any SSH host key presented by a Compute Engine VM. An in-path network attacker positioned between the Airflow worker and the GCE instance can intercept or tamper with the SSH session, exposing credentials, DAG-driven commands, and transferred data. No public exploit identified at time of analysis and EPSS is very low (0.02%), but technical impact is rated total by SSVC.

RemediationAI

Vendor-released patch: upgrade apache-airflow-providers-google to 22.0.0 or later (fix landed via apache/airflow PR #66746, https://github.com/apache/airflow/pull/66746). Note that 22.0.0 introduces a new host_key_policy constructor argument but preserves the historical "auto_add" default for backward compatibility, so upgrading alone does NOT close the MitM gap - operators must explicitly construct ComputeEngineSSHHook (or configure connections) with host_key_policy="reject" and a populated known_hosts file, or pass a custom paramiko.MissingHostKeyPolicy (for example, one that loads pinned host keys from GCE guest attributes). If upgrade is delayed, compensating controls include constraining Airflow-to-GCE SSH traffic to private VPC paths with no third-party transit (eliminating the in-path attacker position), enforcing IAP TCP forwarding for SSH so Google-managed identity gates the path, and using short-lived OS Login keys; trade-off is operational complexity and that IAP/VPC restrictions still trust the GCP control plane rather than cryptographically authenticating the host key.

Affected VersionsENISA

Apache Airflow Google Provider 0 <22.0.0

Affected Packages

pypi apache-airflow-providers-google fix: 22.0.0
euvd apache_airflow_google_provider fix: 22.0.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in pypi, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The affected component is the ComputeEngineSSHHook in providers/google/src/airflow/providers/google/cloud/hooks/compute_ssh.py, which wraps paramiko's SSHClient to connect Airflow workers to Google Compute Engine VMs over SSH. The pre-fix code unconditionally called client.set_missing_host_key_policy(paramiko.AutoAddPolicy()), meaning the client accepted and recorded any host key presented during the first connection without verifying it against a known_hosts file or out-of-band source. This is a textbook CWE-322 (Key Exchange without Entity Authentication) issue: the SSH handshake completes a Diffie-Hellman key exchange but never authenticates the server identity, so a network adversary who can redirect traffic (BGP hijack, ARP/DNS spoofing on a shared network segment, compromised GCP networking path) can present their own host key and act as a transparent proxy. The CPE cpe:2.3:a:apache_software_foundation:apache_airflow_google_provider:* covers all versions prior to the fix.

Know when Apache Airflow Google Provider gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (apache) PRIMARY 8.1 HIGH
AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

Primary rating from Vendor (apache) · only source for this CVE.

CVSS VectorVendor: apache

Attack Vector
Network
Attack Complexity
High
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

3
CVE Published
Jun 22, 2026 - 06:03 cve.org
HIGH 8.1
CVSS changed
May 26, 2026 - 16:22 NVD
8.1 (HIGH)
CVE Published
May 25, 2026 - 09:34 nvd
UNKNOWN (no severity yet)

DescriptionCVE.org

Apache Airflow providers-google's ComputeEngineSSHHook disables SSH host-key verification by default, exposing SSH traffic between an Airflow worker and a Compute Engine VM to in-path network attackers who can intercept or modify the session. Users are advised to upgrade to apache-airflow-providers-google 22.0.0 or later.

Threat Intelligence Overview

EPSS Score
0.0%
Top 96% exploitable
Threat Intel
1
1 source
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact· derived
Medium
Technical Impact
Total

Priority Score

40
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +40
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy