{"answers":{"affected":"3 open source packages ship an affected version, including snowflake-sqlalchemy.","exploited":"There is no known exploitation of CVE-2026-15736 in the wild and no public exploit code.","fix":"Upgrade snowflake-sqlalchemy to 1.11.0 or later.","what":"CVE-2026-15736 is a high-severity vulnerability in Snowflake SQLAlchemy, published on 14 Jul 2026."},"fix_prompt":"Check this codebase for CVE-2026-15736 and fix it if it is affected.\n\nWhat it is: CVE-2026-15736 is a high-severity vulnerability in Snowflake SQLAlchemy, published on 14 Jul 2026. \nExploitation: There is no known exploitation of CVE-2026-15736 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- snowflake-sqlalchemy (PyPI): affected from 1.1.6; fixed in 1.11.0\n- snowflake-sqlalchemy (PyPI): affected from 1.1.6; fixed in 1.11.0\n- snowflake-sqlalchemy (PyPI): affected from 1.1.6; fixed in 1.11.0\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-15736/ (Markdown: https://insights.sbomify.com/CVE-2026-15736/index.md)","id":"CVE-2026-15736","markdown":"https://insights.sbomify.com/CVE-2026-15736/index.md","name":"CVE-2026-15736","record":{"aliases":["ECHO-c85f-7fc2-cfe5","GHSA-8g6f-qw9x-4q6q","MINI-3g9g-gr3h-47gc","PYSEC-2026-3921"],"analysis":null,"analysis_generated_by":null,"assigner":"SNOWFLAKE","cpe":[],"cvss":{"score":8.3,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L","version":"3.1"},"cwes":[{"id":"CWE-89","name":"Improper Neutralization of Special Elements used in an SQL Command"},{"id":"CWE-73","name":"External Control of File Name or Path"}],"description":"Snowflake SQLAlchemy versions prior to 1.11.0 contain several security vulnerabilities, including: Improper handling of user-supplied column identifiers in merge operations could allow SQL injection through attacker-controlled input keys. An attacker may be able to exploit this through request field names in a dynamic upsert endpoint, potentially enabling read access to data visible to the application's database role or modification of values within the same MERGE statement. Improper literal rendering of bound parameters when building certain Snowflake-specific table creation queries could allow SQL injection. An attacker may be able to exploit this by supplying a crafted string to any application endpoint that passes user-controlled data through the affected query-building API, potentially causing arbitrary data exfiltration within the scope of the connection role. Improper forwarding of connection configuration parameters could allow an attacker to cause the library to read arbitrary local files and transmit their contents to an attacker-controlled endpoint. An attacker may be able to exploit this in deployment environments that accept user-controlled connection parameters, potentially exposing sensitive files accessible to the application process. The fix is available in Snowflake SQLAlchemy version 1.11.0. Users must manually upgrade.","ecosystems":["PyPI"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"Multiple SQL/DDL Injection and Arbitrary File Read Vulnerabilities in snowflake-sqlalchemy","id":"CVE-2026-15736","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"PyPI","product":null,"products":[],"type":null,"year":"2026"},"n_packages":3,"n_references":1,"next":{"headline":"Sensitive content disclosure via OpenTelemetry spans in AgentCore Python SDK","id":"CVE-2026-15737"},"packages":[{"ecosystem":"PyPI","fixed":["1.11.0"],"introduced":["1.1.6"],"last_affected":[],"package":"snowflake-sqlalchemy","purl":null,"source":"GHSA-8g6f-qw9x-4q6q"},{"ecosystem":"PyPI","fixed":["1.11.0"],"introduced":["1.1.6"],"last_affected":[],"package":"snowflake-sqlalchemy","purl":"pkg:pypi/snowflake-sqlalchemy","source":"GHSA-8g6f-qw9x-4q6q"},{"ecosystem":"PyPI","fixed":["1.11.0"],"introduced":["1.1.6"],"last_affected":[],"package":"snowflake-sqlalchemy","purl":"pkg:pypi/snowflake-sqlalchemy","source":"PYSEC-2026-3921"}],"prev":{"headline":"Cross-site scripting in Contact Form to Any API","id":"CVE-2026-15735"},"products":["Snowflake SQLAlchemy"],"published":"2026-07-14","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CC BY 4.0","name":"PyPA Advisory Database","prefix":"PYSEC"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"total"},"state":"PUBLISHED","updated":"2026-07-14","vendors":["Snowflake"]},"summary":null,"url":"https://insights.sbomify.com/CVE-2026-15736/"}