Exasol JDBC Driver Validates Custom Socket Factory Class Before Initialization

Details

Detail name Value
Changelog Number 31996
Type Bug
Status Resolved
Affected Versions JDBC 24.0.0
Fix Versions JDBC 26.2.9
Resolution Date 2026-09-04

Description

The Exasol JDBC driver supports specifying a custom socket factory using the socketfactory connection property.

Previously, a user-provided socket factory class could be initialized before verifying that the class was of the expected SocketFactory type. This could allow initialization or constructor code of an unexpected class available on the application's classpath to be executed.

Workaround

Ensure that JDBC connection URLs and connection properties are obtained only from trusted sources. Do not allow untrusted users or external inputs to control the socketfactory connection property.

Fix

The Exasol JDBC driver now validates a user-provided socket factory class to ensure that it is of the expected SocketFactory type before initialization and instantiation.

If the class does not match the expected type, the connection attempt is rejected without initializing or instantiating the provided class.

Acknowledgement

We thank Fushuling and racerZ for responsible disclosure of this vulnerability to Exasol.