The vulnerability is a race condition in Eclipse Jersey's client when handling concurrent HTTPS requests. The root cause lies in the non-thread-safe lazy initialization of the default SSLSocketFactory from HttpsURLConnection. When multiple threads attempt to create HTTPS connections simultaneously, they can enter a race condition while initializing the default SSL context. This can result in some connections using a partially configured SSL context, leading to the bypass of critical security settings like custom trust stores or mutual authentication.
The analysis of the provided patches shows that the fix was applied in the org.glassfish.jersey.client.internal.HttpUrlConnector._apply method. The patch ensures that the default SSLSocketFactory is explicitly and safely initialized before any HttpURLConnection is created. This prevents the race condition from occurring. An earlier, incorrect fix attempt in org.glassfish.jersey.client.HttpUrlConnectorProvider.DefaultConnectionFactory.getConnection by adding a lock also points to the connection creation process as the place where the vulnerability manifests. Therefore, any runtime profile of an exploit would show calls to org.glassfish.jersey.client.internal.HttpUrlConnector._apply as the entry point for the vulnerable logic.