CVE-2026-123859
HighCVSS 8.1Summary
When identifier escaping is disabled through a non-default configuration, the write_pandas() data-loading functionality in Snowflake Connector for Python and Snowflake Connector for Python (Universal Core) did not escape DataFrame column names before including them in generated SQL, potentially allowing SQL injection. A crafted column name could chain additional SQL statements, allowing an attacker to read, modify, or delete other data accessible to the application's Snowflake role.
Risk Assessment
An attacker able to control column names can execute arbitrary SQL in the application role's context, risking confidentiality and integrity of Snowflake data.
Recommendation
Upgrade Snowflake Connector for Python to version 4.8.1 or later and Snowflake Connector for Python (Universal Core) to version 5.2.0 or later. Do not disable identifier escaping and do not pass untrusted column names to write_pandas().
Other vulnerabilities in Snowflake Connector for Python
See all- CVE-2026-15925Critical
Snowflake Connector for Python versions prior to 4.7.1 and 3.18.1 lack proper TLS hostname verification. An attacker with on-path network access could intercept or redirect HTTPS traffic and present a certificate signed by any trusted CA for any domain, causing the connector to accept connections without validating the certificate matches the requested hostname.
- CVE-2023-34233High
The Snowflake Connector for Python in versions prior to 3.0.2 is vulnerable to command injection via SSO browser URL authentication. An attacker can exploit a malicious resource to redirect users to a malicious URL, potentially leading to remote code execution.
Original NVD description (English source)
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.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

