Sceawere

Vulnerability Detail

CVE-2026-123859UPDATED Verified Sceawere Triage Sources: NVD / CISA KEV

Snowflake Connector SQL Injection Vulnerability

Vulnerability Metadata

Severity
High
Score / CVSS
8.1
Creation Date
1d ago
Vendor
Snowflake
Product
Snowflake Connector for Python
Attack Type
Improper Neutralization of Special Elements used in an SQL Command
Vector String
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
Attack Complexity
HIGH

Narrative and Response

Description

When identifier escaping is disabled through a non-default configuration, the write_pandas() data-loading functionality in the Snowflake Connector for Python and the Snowflake Connector for Python (Universal Core) did not escape DataFrame column names before including them in generated SQL, which could allow SQL injection. In both products, a crafted column name could have been used to chain additional SQL statements onto the generated statement, potentially allowing an attacker to read, modify, or delete other data accessible to the application's Snowflake role. Exploitation required an application to pass attacker controlled column names into this functionality. The fix is available in Snowflake Connector for Python version 4.8.1 and Snowflake Connector for Python (Universal Core) version 5.2.0. Users must upgrade manually.

Executive Summary

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Executive Summary Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Technical Details

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Detailed Technical Analysis Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Mitigations

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Remediation & Mitigations Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

References

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.

Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

Intelligence References Locked

Sign up to unlock professional threat analysis, mitigations, and indicator signatures.

Additional Metadata

{
  "score": "8.1",
  "pubDate": "2026-11-06T17:17:25.323Z",
  "pubdate": "2026-11-06T17:17:25.323Z",
  "executiveSummary": "The Snowflake Connector for Python and Snowflake Connector for Python (Universal Core) are susceptible to a critical SQL injection vulnerability within the write_pandas() data-loading function. This security flaw stems from insufficient input sanitization when identifier escaping is disabled via non-default configuration.\nBy manipulating DataFrame column names, an attacker can inject malicious SQL commands into the generated query string. This enables unauthorized interactions with the Snowflake database, including the potential for data exfiltration, unauthorized modification of records, or deletion of sensitive information.\nThe vulnerability is contingent upon an application explicitly passing attacker-controlled data into the column names processed by the write_pandas() method. The risk is elevated in environments where input validation is absent, granting an attacker the ability to escalate privileges within the scope of the database role assigned to the application. To mitigate this risk, users must manually upgrade to the remediated versions provided by Snowflake.",
  "technicalDetails": "The vulnerability resides within the write_pandas() functionality of the Snowflake Connector for Python. The core issue involves a failure to properly escape DataFrame column names before integrating them into SQL statements generated for data ingestion. While the connector typically handles identifier escaping, the implementation relies on a configuration setting that, when disabled, removes these protections.\nThe root cause is an improper neutralization of special elements used in an SQL command (CWE-89). When identifier escaping is disabled, the connector treats the provided DataFrame column names as trusted identifiers rather than potentially malicious input. Because these strings are concatenated directly into the dynamically generated SQL queries, the application becomes vulnerable to secondary SQL injection attacks.\nThe attack flow begins when an attacker provides a crafted string as a column name that would be processed by an application using the vulnerable connector. Upon calling write_pandas(), the library incorporates this string into a statement such as 'INSERT INTO table_name (...)'. By injecting SQL command terminators (e.g., semicolons) followed by arbitrary SQL statements, the attacker can break out of the intended query context.\nThis allows for the chaining of subsequent SQL statements. An attacker can use this capability to execute destructive commands (DROP TABLE), unauthorized queries (SELECT * FROM sensitive_table), or administrative actions, provided the application's associated Snowflake role maintains sufficient permissions. The exploit does not require the attacker to have direct access to the database; rather, it requires the application to ingest untrusted input as column names.\nAffected products include the Snowflake Connector for Python and the Snowflake Connector for Python (Universal Core). The vulnerability is addressed in Snowflake Connector for Python version 4.8.1 and Snowflake Connector for Python (Universal Core) version 5.2.0. Successful exploitation requires that the application configuration has explicitly set identifier escaping to false, increasing the attack surface significantly."
}
CVE-2026-123859: Snowflake Connector SQL Injection Vulnerability (HIGH Severity, CVSS: 8.1) | Sceawere