EVALUATION
From JDK 7, the server name indication will be included in the TLS client messages. The server can ignore the server name indication, or checking for accuracy of the server name indication. If server want to check the server name indication, it maybe deny connection when the server name indication is not the expected server name, fail with an unrecognized_name alert.
So it is not a bug of JDK, it is the purpose of server that need to deny the server name indication request, or some miss-configuration in the server side. Please make sure the server configuration is correct, or set the server to accept the server name, "timestamp.geotrust.com".
If it is not possible to update the server side, the possible workaround is to disable the server name indication in client side, which can be done by setting system property jsse.enableSNIExtension to false.
For the definition of the system property of jsse.enableSNIExtension, please refer to http://docs.oracle.com/javase/7/docs/technotes/guides/security/jsse/JSSERefGuide.html#Customization
To make sure, please try this:
jarsigner -J-Djsse.enableSNIExtension=false -keystore keystore -tsa https://timestamp.geotrust.com/tsa -signedjar dns-signed.jar dsn.jar mykey
In general, I would not suggest you disable the SNI extension unless you clearly understand the server structures. As may expose you in the risks that the site is not what you really want to access.
|
|
|
PUBLIC COMMENTS
From JDK 7, the server name indication will be included in the TLS client messages. The server can ignore the server name indication, or checking for accuracy of the server name indication. If server want to check the server name indication, it maybe deny connection when the server name indication is not the expected server name, fail with an unrecognized_name alert.
So it is not a bug of JDK, it is the purpose of server that need to deny the server name indication request, or some miss-configuration in the server side. Please make sure the server configuration is correct, or set the server to accept the server name, "timestamp.geotrust.com".
If it is not possible to update the server side, the possible workaround is to disable the server name indication in client side, which can be done by setting system property jsse.enableSNIExtension to false.
For the definition of the system property of jsse.enableSNIExtension, please refer to http://docs.oracle.com/javase/7/docs/technotes/guides/security/jsse/JSSERefGuide.html#Customization
To make sure, please try this:
jarsigner -J-Djsse.enableSNIExtension=false -keystore keystore -tsa https://timestamp.geotrust.com/tsa -signedjar dns-signed.jar dsn.jar mykey
In general, I would not suggest you disable the SNI extension unless you clearly understand the server structures. As may expose you in the risks that the site is not what you really want to access.
|
|
|
EVALUATION
> however since most Browsers happyly connect to those servers,
I tried to access the UEL mentioned in the bug description, "https://timestamp.geotrust.com/tsa", with IE and Firefox. Both shows no page found. So what's your mean about "most browsers happyly connection to those servers"?
If the server sends an "unrecognized_name" fatal alert, the browser cannot be happy to ignore and continue the SSL connection.
> the JSSE implementation should have a way to ignore this specific warning:
We have a workaround for this. Please refer to the description of "jsse.enableSNIExtension" system property in JSSE Reference Guide.
But I would not suggest you disable the SNI extension unless you clearly understand the server structures. As may expose you in the risks that the site is not what you really want to access.
Close it as "not a defect".
|
|
|
PUBLIC COMMENTS
> however since most Browsers happyly connect to those servers,
I tried to access the URL mentioned in the bug description, "https://timestamp.geotrust.com/tsa", with IE and Firefox. Both shows no page found. So what's your mean about "most browsers happyly connection to those servers"?
If the server sends an "unrecognized_name" fatal alert, the browser cannot be happy to ignore and continue the SSL connection.
> the JSSE implementation should have a way to ignore this specific warning:
We have a workaround for this. Please refer to the description of "jsse.enableSNIExtension" system property in JSSE Reference Guide.
But I would not suggest you disable the SNI extension unless you clearly understand the server structures. As may expose you in the risks that the site is not what you really want to access.
Close it as "not a defect".
|
|
|
|