Recently, our PCI security scan failed due to the following:
Description: SSL server accepts weak ciphers Severity: Potential Problem Impact: A remote attacker with the ability to sniff network traffic could decrypt an encrypted session. Resolution For Apache mod_ssl web servers, use the [mod_ssl - Apache HTTP Server] SSLCipherSuite directive in the configuration file to specify strong ciphers only and disable SSLv2.
Our SSL was setup via the keytool as our server’s only purpose is serving up Servoy.
Does anyone know anything about this or how to accomplish this with the Servoy App Server or is this strictly an apache thing?
Has anyone else here dealt with PCI certification (for credit card processing) in Servoy?
If our server is now failing the certification because of weak ciphers on port 1099, would it make sense to just use HTTP tunnel connection mode?
And if so:
Should we up our server resources with more RAM due to the HTTP Tunnel using more server-side resources?
If we change the connection mode, what will happen when all of our users double click their shortcut icon on their desktops? Will it error and require a clearing of the cache AND .servoy folder?
What kind of certificate are you really using then for RMI? (so in your servoy keystore)
Is it a real valid signed certificate from a trusted source? So the same as you would use for tomcat/apache https itself (so for the tunnel?)
then it is pretty much the same thing
Unfortunately it is not possible to tell Java not to use SSLv2 on port 1099 currently. Server.xml only applies to tomcat connectors, not to the RMI port.
I’m not sure if Java 7 does or does not allow SSLv2 to be negotiated, best way to find out is to try it.
We can look at Java 7, but right now, we need the fastest game plan to getting PCI compliant.
It’s integral if we want to use our solution in a SaaS environment. It’s frustrating that it’s not been in an issue for 2 years, but for some reason, the scrutiny of the security scans changed.
So, If our server is now failing the certification because of weak ciphers on port 1099, would it make sense to just use HTTP tunnel connection mode?
And if so:
Should we up our server resources with more RAM due to the HTTP Tunnel using more server-side resources?
If we change the connection mode, what will happen when all of our users double click their shortcut icon on their desktops? Will it error and require a clearing of the cache AND .servoy folder?
it will not cost that much more memory to use http tunneling
clients will switch automatically, because network settings will be pushed to the client every time.
by the way even in java 6 it is not that it is SSLv2 that you talked to it is just that special SSLv2Hello will be there but that will go to SSLv3 right away (if i read everything correctly)
I was also unable to see any ciphers on this port at all. I have submitted your statement along with my testing to management to see if we can lower this issue for you. If you have any other questions, or if there is anything else that I can help you with, feel free to email me back.
Thanks for all your help Servoy guys! You’re the best.
So, although SSLv2 is not running, supposedly the 40-bit ciphers are under SSLv3 or TLS. So, is there something somewhere where I can disable those ciphers on these protocols?
purely going over the http mode is a bit slower, because it has more overhead.
But we don’t really notice it in our own applications.
Did you disable SocketFactory.tunnelUseSSLForHttp ? because else you would have double ssl encryption. that is a bit waste. (the https of tomcat and the tunnels http ssl encryption)
But in the latest servoy versions we do have now support for it for the socket portion of http&socket, see this https://support.servoy.com/browse/SVY-1724 or the duplicate