CVE-2025-59250
High · 8.1JDBC Driver for SQL Server has improper input validation issue
CVSS
8.1
EPSS
0.7%
Published
Oct 14, 2025
CISA due date
—
Cloudanix analysis
A problem in database connection software could allow attackers on the network to pretend to be trusted systems and potentially access or change information.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Theoretical
- Impact
- Full Compromise
- Component
- Library
- Class
- Improper Input Validation
- Remediation
- Other
- Effort
- Other
- Patch risk
- Other
What it actually does
Improper input validation in the JDBC Driver for SQL Server permits crafted network inputs to bypass checks, enabling spoofing of client or server identities and subsequent unauthorized data flows.
Why it matters to the business
Organizations relying on SQL Server connections through affected drivers face potential unauthorized access to database resources, increasing risk of data exposure or integrity issues without requiring authentication.
How an attack unfolds
An attacker on the network sends specially formatted requests to the vulnerable JDBC driver that exploit weak input validation, allowing impersonation of a legitimate endpoint to intercept queries, responses, or credentials.
How to fix it
Upgrade the Microsoft JDBC Driver for SQL Server to a build containing commit 5c9cd93f057de5322973b427583e8603a2bc0fc7; apply the listed Red Hat kpatch updates (0:1-4.el7, 0:1-3.el7, or 0:1-1.el7) for affected packages.
How to confirm the fix worked
Confirm driver version or kpatch package revision matches fixed releases, then perform controlled network tests with invalid inputs to verify rejection; review connection logs for absence of previously accepted spoof attempts.
Typical attack path
- Scan for exposed SQL Server JDBC endpoints
- Craft and transmit malformed input payloads over the network
- Bypass validation to establish a spoofed session
- Intercept or manipulate database traffic for data access or tampering
How to detect it
Examine application and driver logs for rejected or unexpected connection attempts involving SQL Server; correlate with network flow data for anomalous source identities or protocol deviations.
What your security team should do
- Apply driver and kpatch updates immediately given the high CVSS and network attack vector
- Enforce encrypted connections and certificate validation for all JDBC traffic
- Implement network segmentation to limit exposure of database endpoints
The record
Improper input validation in JDBC Driver for SQL Server allows an unauthorized attacker to perform spoofing over a network.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Maven | com.microsoft.sqlserver:mssql-jdbc | 0.2.0-SNAPSHOT.jre11-preview | 10.2.4.jre11 |
| Maven | com.microsoft.sqlserver:mssql-jdbc | 11.2.0.jre11 | 11.2.4.jre11 |
| Maven | com.microsoft.sqlserver:mssql-jdbc | 12.10.0.jre11 | 12.10.2.jre11 |
| Maven | com.microsoft.sqlserver:mssql-jdbc | 12.2.0.jre11 | 12.2.1.jre11 |
| Maven | com.microsoft.sqlserver:mssql-jdbc | 12.6.0.jre11 | 12.6.5.jre11 |
| Maven | com.microsoft.sqlserver:mssql-jdbc | 12.8.0.jre11 | 12.8.2.jre11 |
| Maven | com.microsoft.sqlserver:mssql-jdbc | 13.2.0.jre11 | 13.2.1.jre11 |
| Maven | com.microsoft.sqlserver:mssql-jdbc | 8.3.0.jre11-preview | 10.2.4.jre11 |
| Chainguard | apache-hop | 0 | 2.15.0-r14 |
| Chainguard | apache-hop-fips | 0 | 2.15.0-r16 |
| Chainguard | apicurio-registry | 0 | 3.1.4-r2 |
| Chainguard | apicurio-registry-nginx-config | 0 | 3.1.4-r2 |
| Chainguard | apicurio-registry-ui | 0 | 3.1.4-r2 |
| Chainguard | dependency-track | 0 | 4.13.6-r0 |
| Chainguard | dependency-track-bundled | 0 | 0 |
| Chainguard | flyway | 0 | 11.15.0-r1 |
| Chainguard | hadoop-fips-3.3.6 | 0 | 3.3.6-r15 |
| Chainguard | hadoop-fips-3.3.6-compat | 0 | 0 |
| Chainguard | hadoop-fips-3.3.6-dev | 0 | 0 |
| Chainguard | hadoop-fips-3.3.6-m2 | 0 | 0 |
| Chainguard | keycloak-26.2 | 0 | 0 |
| Chainguard | keycloak-26.2 | 0 | 26.2.5-r7 |
| Chainguard | keycloak-26.2-bitnami-compat | 0 | 0 |
| Chainguard | keycloak-26.2-compat | 0 | 0 |
| Chainguard | keycloak-26.2-iamguarded-compat | 0 | 0 |
| Chainguard | keycloak-26.2-iamguarded-compat | 0 | 26.2.5-r7 |
| Chainguard | keycloak-26.3 | 0 | 0 |
| Chainguard | keycloak-26.3 | 0 | 26.3.5-r4 |
| Chainguard | keycloak-26.3-bitnami-compat | 0 | 0 |
| Chainguard | keycloak-26.3-compat | 0 | 0 |
| Chainguard | keycloak-26.3-iamguarded-compat | 0 | 0 |
| Chainguard | keycloak-26.3-iamguarded-compat | 0 | 26.3.5-r4 |
| Chainguard | keycloak-26.4 | 0 | 26.4.7-r0 |
| Chainguard | keycloak-26.4-compat | 0 | 26.4.2-r0 |
| Chainguard | keycloak-26.4-iamguarded-compat | 0 | 26.4.7-r0 |
| Chainguard | keycloak-26.4-operator | 0 | 26.4.2-r0 |
| Chainguard | keycloak-26.4-operator-compat | 0 | 26.4.2-r0 |
| Chainguard | keycloak-fips-26.2 | 0 | 26.2.5-r9 |
| Chainguard | keycloak-fips-26.2-bitnami-fips | 0 | 0 |
| Chainguard | keycloak-fips-26.2-iamguarded-fips | 0 | 26.2.5-r9 |
| Chainguard | keycloak-fips-26.3 | 0 | 26.3.5-r4 |
| Chainguard | keycloak-fips-26.3-bitnami-fips | 0 | 0 |
| Chainguard | keycloak-fips-26.3-iamguarded-fips | 0 | 26.3.5-r4 |
| Chainguard | keycloak-fips-26.3-operator | 0 | 0 |
| Chainguard | keycloak-fips-26.3-operator-compat | 0 | 0 |
| Chainguard | keycloak-fips-26.4 | 0 | 0 |
| Chainguard | keycloak-fips-26.4-iamguarded-fips | 0 | 0 |
| Chainguard | keycloak-fips-26.4-operator | 0 | 0 |
| Chainguard | keycloak-fips-26.4-operator-compat | 0 | 0 |
| Chainguard | sonarqube | 0 | 0 |
| Chainguard | sonarqube-docker-compat | 0 | 0 |
| Chainguard | sonarqube-scripts | 0 | 0 |
| Chainguard | tez | 0 | 0.10.5-r7 |
| Chainguard | trino | 0 | 478-r2 |
| Chainguard | trino-config | 0 | 478-r2 |
| Chainguard | trino-oci-entrypoint | 0 | 478-r2 |
| Chainguard | trino-plugin-accumulo | 0 | 0 |
| Chainguard | trino-plugin-ai-functions | 0 | 478-r2 |
| Chainguard | trino-plugin-atop | 0 | 0 |
| Chainguard | trino-plugin-bigquery | 0 | 478-r2 |
| Chainguard | trino-plugin-blackhole | 0 | 478-r2 |
| Chainguard | trino-plugin-cassandra | 0 | 478-r2 |
| Chainguard | trino-plugin-clickhouse | 0 | 478-r2 |
| Chainguard | trino-plugin-delta-lake | 0 | 478-r2 |
| Chainguard | trino-plugin-druid | 0 | 478-r2 |
| Chainguard | trino-plugin-duckdb | 0 | 478-r2 |
| Chainguard | trino-plugin-elasticsearch | 0 | 478-r2 |
| Chainguard | trino-plugin-example-http | 0 | 0 |
| Chainguard | trino-plugin-exasol | 0 | 478-r2 |
| Chainguard | trino-plugin-exchange-filesystem | 0 | 478-r2 |
| Chainguard | trino-plugin-exchange-hdfs | 0 | 478-r2 |
| Chainguard | trino-plugin-faker | 0 | 478-r2 |
| Chainguard | trino-plugin-functions-python | 0 | 478-r2 |
| Chainguard | trino-plugin-geospatial | 0 | 478-r2 |
| Chainguard | trino-plugin-google-sheets | 0 | 478-r2 |
| Chainguard | trino-plugin-hive | 0 | 478-r2 |
| Chainguard | trino-plugin-http-event-listener | 0 | 478-r2 |
| Chainguard | trino-plugin-http-server-event-listener | 0 | 0 |
| Chainguard | trino-plugin-hudi | 0 | 478-r2 |
| Chainguard | trino-plugin-iceberg | 0 | 478-r2 |
| Chainguard | trino-plugin-ignite | 0 | 478-r2 |
| Chainguard | trino-plugin-jmx | 0 | 478-r2 |
| Chainguard | trino-plugin-kafka | 0 | 478-r2 |
| Chainguard | trino-plugin-kafka-event-listener | 0 | 478-r2 |
| Chainguard | trino-plugin-kinesis | 0 | 0 |
| Chainguard | trino-plugin-kudu | 0 | 0 |
| Chainguard | trino-plugin-lakehouse | 0 | 478-r2 |
| Chainguard | trino-plugin-ldap-group-provider | 0 | 478-r2 |
| Chainguard | trino-plugin-local-file | 0 | 0 |
| Chainguard | trino-plugin-loki | 0 | 478-r2 |
| Chainguard | trino-plugin-mariadb | 0 | 478-r2 |
| Chainguard | trino-plugin-memory | 0 | 478-r2 |
| Chainguard | trino-plugin-ml | 0 | 478-r2 |
| Chainguard | trino-plugin-mongodb | 0 | 478-r2 |
| Chainguard | trino-plugin-mysql | 0 | 478-r2 |
| Chainguard | trino-plugin-mysql-event-listener | 0 | 478-r2 |
| Chainguard | trino-plugin-opa | 0 | 478-r2 |
| Chainguard | trino-plugin-openlineage | 0 | 478-r2 |
| Chainguard | trino-plugin-opensearch | 0 | 478-r2 |
| Chainguard | trino-plugin-oracle | 0 | 478-r2 |
| Chainguard | trino-plugin-password-authenticators | 0 | 478-r2 |
| Chainguard | trino-plugin-phoenix5 | 0 | 0 |
| Chainguard | trino-plugin-pinot | 0 | 478-r2 |
| Chainguard | trino-plugin-postgresql | 0 | 478-r2 |
| Chainguard | trino-plugin-prometheus | 0 | 478-r2 |
| Chainguard | trino-plugin-ranger | 0 | 478-r2 |
| Chainguard | trino-plugin-raptor-legacy | 0 | 0 |
| Chainguard | trino-plugin-redis | 0 | 478-r2 |
| Chainguard | trino-plugin-redshift | 0 | 478-r2 |
| Chainguard | trino-plugin-resource-group-managers | 0 | 478-r2 |
| Chainguard | trino-plugin-session-property-managers | 0 | 478-r2 |
| Chainguard | trino-plugin-singlestore | 0 | 478-r2 |
| Chainguard | trino-plugin-snowflake | 0 | 478-r2 |
| Chainguard | trino-plugin-spooling-filesystem | 0 | 478-r2 |
| Chainguard | trino-plugin-sqlserver | 0 | 478-r2 |
| Chainguard | trino-plugin-teradata-functions | 0 | 478-r2 |
| Chainguard | trino-plugin-thrift | 0 | 478-r2 |
| Chainguard | trino-plugin-tpcds | 0 | 478-r2 |
| Chainguard | trino-plugin-tpch | 0 | 478-r2 |
| Chainguard | trino-plugin-vertica | 0 | 478-r2 |
| Wolfi | apicurio-registry | 0 | 3.1.4-r2 |
| Wolfi | apicurio-registry-nginx-config | 0 | 3.1.4-r2 |
| Wolfi | apicurio-registry-ui | 0 | 3.1.4-r2 |
| Wolfi | dependency-track | 0 | 4.13.6-r0 |
| Wolfi | dependency-track-bundled | 0 | 0 |
| Wolfi | flyway | 0 | 11.15.0-r1 |
| Wolfi | keycloak-26.3 | 0 | 26.3.5-r4 |
| Wolfi | keycloak-26.3-bitnami-compat | 0 | 0 |
| Wolfi | keycloak-26.3-compat | 0 | 0 |
| Wolfi | keycloak-26.3-iamguarded-compat | 0 | 26.3.5-r4 |
| Wolfi | keycloak-26.4 | 0 | 26.4.7-r0 |
| Wolfi | keycloak-26.4-compat | 0 | 26.4.2-r0 |
| Wolfi | keycloak-26.4-iamguarded-compat | 0 | 26.4.7-r0 |
| Wolfi | keycloak-26.4-operator | 0 | 26.4.2-r0 |
| Wolfi | keycloak-26.4-operator-compat | 0 | 26.4.2-r0 |
| Wolfi | sonarqube | 0 | 0 |
| Wolfi | sonarqube-docker-compat | 0 | 0 |
| Wolfi | sonarqube-scripts | 0 | 0 |
| Wolfi | tez | 0 | 0.10.5-r7 |
| Wolfi | trino | 0 | 478-r2 |
| Wolfi | trino-config | 0 | 478-r2 |
| Wolfi | trino-oci-entrypoint | 0 | 478-r2 |
| Wolfi | trino-plugin-accumulo | 0 | 0 |
| Wolfi | trino-plugin-ai-functions | 0 | 478-r2 |
| Wolfi | trino-plugin-atop | 0 | 0 |
| Wolfi | trino-plugin-bigquery | 0 | 478-r2 |
| Wolfi | trino-plugin-blackhole | 0 | 478-r2 |
| Wolfi | trino-plugin-cassandra | 0 | 478-r2 |
| Wolfi | trino-plugin-clickhouse | 0 | 478-r2 |
| Wolfi | trino-plugin-delta-lake | 0 | 478-r2 |
| Wolfi | trino-plugin-druid | 0 | 478-r2 |
| Wolfi | trino-plugin-duckdb | 0 | 478-r2 |
| Wolfi | trino-plugin-elasticsearch | 0 | 478-r2 |
| Wolfi | trino-plugin-example-http | 0 | 0 |
| Wolfi | trino-plugin-exasol | 0 | 478-r2 |
| Wolfi | trino-plugin-exchange-filesystem | 0 | 478-r2 |
| Wolfi | trino-plugin-exchange-hdfs | 0 | 478-r2 |
| Wolfi | trino-plugin-faker | 0 | 478-r2 |
| Wolfi | trino-plugin-functions-python | 0 | 478-r2 |
| Wolfi | trino-plugin-geospatial | 0 | 478-r2 |
| Wolfi | trino-plugin-google-sheets | 0 | 478-r2 |
| Wolfi | trino-plugin-hive | 0 | 478-r2 |
| Wolfi | trino-plugin-http-event-listener | 0 | 478-r2 |
| Wolfi | trino-plugin-http-server-event-listener | 0 | 0 |
| Wolfi | trino-plugin-hudi | 0 | 478-r2 |
| Wolfi | trino-plugin-iceberg | 0 | 478-r2 |
| Wolfi | trino-plugin-ignite | 0 | 478-r2 |
| Wolfi | trino-plugin-jmx | 0 | 478-r2 |
| Wolfi | trino-plugin-kafka | 0 | 478-r2 |
| Wolfi | trino-plugin-kafka-event-listener | 0 | 478-r2 |
| Wolfi | trino-plugin-kinesis | 0 | 0 |
| Wolfi | trino-plugin-kudu | 0 | 0 |
| Wolfi | trino-plugin-lakehouse | 0 | 478-r2 |
| Wolfi | trino-plugin-ldap-group-provider | 0 | 478-r2 |
| Wolfi | trino-plugin-local-file | 0 | 0 |
| Wolfi | trino-plugin-loki | 0 | 478-r2 |
| Wolfi | trino-plugin-mariadb | 0 | 478-r2 |
| Wolfi | trino-plugin-memory | 0 | 478-r2 |
| Wolfi | trino-plugin-ml | 0 | 478-r2 |
| Wolfi | trino-plugin-mongodb | 0 | 478-r2 |
| Wolfi | trino-plugin-mysql | 0 | 478-r2 |
| Wolfi | trino-plugin-mysql-event-listener | 0 | 478-r2 |
| Wolfi | trino-plugin-opa | 0 | 478-r2 |
| Wolfi | trino-plugin-openlineage | 0 | 478-r2 |
| Wolfi | trino-plugin-opensearch | 0 | 478-r2 |
| Wolfi | trino-plugin-oracle | 0 | 478-r2 |
| Wolfi | trino-plugin-password-authenticators | 0 | 478-r2 |
| Wolfi | trino-plugin-phoenix5 | 0 | 0 |
| Wolfi | trino-plugin-pinot | 0 | 478-r2 |
| Wolfi | trino-plugin-postgresql | 0 | 478-r2 |
| Wolfi | trino-plugin-prometheus | 0 | 478-r2 |
| Wolfi | trino-plugin-ranger | 0 | 478-r2 |
| Wolfi | trino-plugin-raptor-legacy | 0 | 0 |
| Wolfi | trino-plugin-redis | 0 | 478-r2 |
| Wolfi | trino-plugin-redshift | 0 | 478-r2 |
| Wolfi | trino-plugin-resource-group-managers | 0 | 478-r2 |
| Wolfi | trino-plugin-session-property-managers | 0 | 478-r2 |
| Wolfi | trino-plugin-singlestore | 0 | 478-r2 |
| Wolfi | trino-plugin-snowflake | 0 | 478-r2 |
| Wolfi | trino-plugin-spooling-filesystem | 0 | 478-r2 |
Related vulnerabilities
- CVE-2026-33871 Netty is an asynchronous, event-driven network application framework. Also affects apache-hop
- CVE-2026-1605 In Eclipse Jetty, versions 12.0.0-12.0.31 and 12.1.0-12.0.5, class GzipHandler exposes a… Also affects apache-hop
- CVE-2025-11143 The Jetty URI parser has some key differences to other common parsers when evaluating… Also affects apache-hop
- CVE-2025-33042 Improper Control of Generation of Code ('Code Injection') vulnerability in Apache Avro… Also affects apache-hop
- CVE-2025-68161 Apache Log4j does not verify the TLS hostname in its Socket Appender Also affects apache-hop
- CVE-2025-67735 Netty has a CRLF Injection vulnerability in io.netty.handler.codec.http.HttpRequestEncoder Also affects apache-hop
- CVE-2025-66566 yawkat LZ4 Java provides LZ4 compression for Java. Also affects apache-hop
- CVE-2025-12183 Out-of-bounds memory operations in org.lz4:lz4-java 1.8.0 and earlier allow remote… Also affects apache-hop