Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-15183

CVE-2026-15183: Snowflake Spark Connector SQLi Vulnerability

CVE-2026-15183 is a SQL injection flaw in Snowflake Spark Connector that enables credential theft, unauthorized data access, and privilege escalation. This article covers technical details, affected versions, and mitigation.

Published:

CVE-2026-15183 Overview

CVE-2026-15183 covers multiple input validation vulnerabilities in the Snowflake Spark Connector (spark-snowflake) in versions prior to 3.2.1. Attackers can exfiltrate OAuth client credentials, execute arbitrary SQL under the connector's Snowflake role, or redirect COPY operations to attacker-controlled storage. Exploitation paths include supplying a crafted OAuth token request URL, planting malicious files in an ingestion pipeline, injecting SQL through staging options in shared Spark environments, and issuing runtime SET commands in shared Spark-SQL sessions that inject SQL into the SnowflakeFallbackCatalog option map executed under cluster admin JDBC credentials. The connector's role in data pipelines makes these flaws relevant to any organization running Spark against Snowflake.

Critical Impact

Successful exploitation may result in OAuth credential theft, unauthorized access to Snowflake account data, and privilege escalation within connected data infrastructure.

Affected Products

  • Snowflake Spark Connector (spark-snowflake) versions prior to 3.2.1
  • Shared Spark and Spark-SQL environments using the connector for Snowflake ingestion
  • Data pipelines relying on SnowflakeFallbackCatalog with cluster admin JDBC credentials

Discovery Timeline

  • 2026-07-14 - CVE-2026-15183 published to NVD
  • 2026-07-15 - Last updated in NVD database

Technical Details for CVE-2026-15183

Vulnerability Analysis

The connector fails to validate several externally influenced inputs before passing them to sensitive operations. Four distinct exploitation paths converge on the same underlying weakness: user-controlled configuration values reach OAuth token retrieval, file ingestion, staging option parsing, and SQL catalog option maps without sanitization. The primary weakness maps to SQL Injection [CWE-89], though the credential exfiltration and storage redirection paths represent broader improper input validation.

In a shared Spark cluster, a low-privileged user can influence session options that the connector later concatenates into SQL executed under the cluster administrator's JDBC session. This crosses the trust boundary between session-level tenants and the connector's privileged Snowflake role.

Root Cause

The connector treats runtime configuration values, staging options, and OAuth endpoint URLs as trusted inputs. Options passed through the SnowflakeFallbackCatalog option map are interpolated into SQL without parameterization. OAuth token request URLs are not restricted to expected Snowflake endpoints, allowing redirection to attacker-controlled hosts that receive client credentials.

Attack Vector

An attacker with the ability to submit Spark jobs or issue Spark-SQL statements in a shared environment can influence connector options at runtime. Executing a SET command that modifies staging options injects arbitrary SQL that runs with the connector's Snowflake role. A separate path uses a crafted OAuth token URL to exfiltrate client credentials during token acquisition. A third path places malicious files inside an ingestion location so that COPY INTO operations pull attacker-controlled data. See the Snowflake Spark Connector Release Notes for vendor-supplied technical details.

Detection Methods for CVE-2026-15183

Indicators of Compromise

  • Outbound HTTPS requests from Spark driver or executor nodes to hostnames outside expected Snowflake OAuth endpoints.
  • Snowflake query history entries containing unusual DDL or DML executed under the cluster admin's role but originating from user-submitted Spark sessions.
  • COPY INTO operations referencing external stages or storage locations not defined in approved pipeline configurations.
  • Runtime SET statements in Spark-SQL sessions modifying sfStage, sfURL, or catalog option keys.

Detection Strategies

  • Enable Snowflake query logging and correlate QUERY_HISTORY records with Spark job identifiers to spot SQL that did not originate from approved pipeline code.
  • Inspect Spark event logs for SET commands that modify connector options mid-session in multi-tenant clusters.
  • Compare OAuth token endpoint destinations in network telemetry against an allowlist of Snowflake account URLs.

Monitoring Recommendations

  • Forward Snowflake LOGIN_HISTORY, QUERY_HISTORY, and ACCESS_HISTORY to a centralized data lake for retention and correlation.
  • Alert on any COPY operation whose source URI does not match the approved storage integration.
  • Track the version of spark-snowflake deployed on each Spark cluster and alert on any release older than 3.2.1.

How to Mitigate CVE-2026-15183

Immediate Actions Required

  • Upgrade the Snowflake Spark Connector to version 3.2.1 or later on every Spark cluster and job submission environment.
  • Rotate OAuth client secrets and any JDBC credentials used by the connector, particularly for shared clusters.
  • Audit Snowflake QUERY_HISTORY for the exposure window to identify unauthorized SQL executed under the connector's role.

Patch Information

Snowflake resolved the input validation flaws in spark-snowflake release 3.2.1. Refer to the Snowflake Spark Connector Release Notes for the full fix list and upgrade guidance.

Workarounds

  • Restrict submission of Spark and Spark-SQL jobs on clusters that hold privileged Snowflake JDBC credentials to trusted operators only.
  • Disable runtime SET of connector options by enforcing job-level configuration through immutable submission templates.
  • Route all OAuth traffic through an egress proxy that allowlists Snowflake account hostnames.
  • Use dedicated storage integrations and deny the connector's role permission to read from unapproved stages.

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.