Snowflake JDBC Security AdvisoryGHSA-f686-hw9c-xw9c
MEDIUMGHSA-f686-hw9c-xw9c is a medium-severity (CVSS 5.9) CWE-326 vulnerability in net.snowflake:snowflake-jdbc. A fix is available for net.snowflake:snowflake-jdbc — see the affected versions and patch details below.
Exploitation Status
No confirmed exploitation observed yet
- A successful exploit gives an attacker total control of the affected component, not partial access.
- CISA’s own triage has not observed active exploitation or public proof-of-concept code for this CVE as of its last assessment.
Exploitation and automatability from CISA’s SSVC triage for GHSA-f686-hw9c-xw9c.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
Where this sits among everything scored
Real-World Exposure
net.snowflake:snowflake-jdbcReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects Maven packages — download data is not available via public APIs for these ecosystems.
Description
Impacted Products
Snowflake JDBC driver versions >= 3.2.6 & <= 3.19.1 are affected.
Introduction
Snowflake recently identified an issue affecting JDBC drivers that can result in data being uploaded to an encrypted stage without the additional layer of protection provided by client side encryption. The issue, which affects only a subset of accounts hosted on Azure and GCP deployments (AWS deployments are not affected), manifests in instances where customers create a stage using a JDBC driver with the CLIENT_ENCRYPTION_KEY_SIZE account parameter set to 256-bit rather than the default 128-bit. The data is still protected by TLS in transit and server side encryption at rest. This missed layer of the additional protection is not visible to the affected customers.
Incorrect Security Setting Vulnerability
Description
Snowflake identified an incorrect security setting in Snowflake JDBC drivers. Snowflake has evaluated the severity of the issue and determined it was in medium range with a maximum CVSSv3 base score of 5.9.
Scenarios and attack vector(s)
Users of Snowflake JDBC drivers with accounts on Azure and GCP deployments who set the parameter CLIENT_ENCRYPTION_KEY_SIZE = 256 were subject to this incorrect security setting vulnerability as it could result in data being uploaded to a stage without an additional layer for encryption.
Our response
On July 23, 2024, Snowflake discovered this vulnerability. On 10/28/2024, Snowflake released a patch in Snowflake JDBC driver Version 3.20.0. The patch fixes the incorrect security setting.
Resolution
We strongly recommend users to upgrade to 3.20.0 or later versions as soon as possible.
Contact
If you discover a security vulnerability in one of our products or websites, please report the issue to HackerOne. For more information, please see our Vulnerability Disclosure Policy.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| ☕Maven | net.snowflake:snowflake-jdbc | ≥ 3.2.6&&< 3.20.0 | 3.20.0net.snowflake:snowflake-jdbc:3.20.0 |
Affected Products
snowflake jdbcsnowflakeDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for net.snowflake:snowflake-jdbc, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update net.snowflake:snowflake-jdbc to 3.20.0 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-f686-hw9c-xw9c is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is GHSA-f686-hw9c-xw9c in your dependencies?
Find it across Maven, including transitive dependencies.