https://issues.apache.org/bugzilla/show_bug.cgi?id=48236
Summary: another workaround for CVE-2009-3555 for the BIO connector Product: Tomcat 6 Version: unspecified Platform: All OS/Version: All Status: NEW Severity: major Priority: P2 Component: Connectors AssignedTo: dev@tomcat.apache.org ReportedBy: hartmut.k...@adnovum.ch Since Revision 881774 of org/apache/tomcat/util/net/jsse/JSSESocketFactory.java SSL renegotiation can be disabled. That is achieved by a HandshakeCompletedListener. The drawback is, that in the JSSE from SUN any HandshakeCompletedListener will be invoked by with an own thread. (See com.sun.net.ssl.internal.ssl.SSLSocketImpl or the fragment below) Another way of disabling a SSL renegotiation is to set an empty cipher list after the initial handshake: org.apache.tomcat.util.net.jsse.JSSESocketFactory ... ... public void handshake(Socket sock) throws IOException { ((SSLSocket)sock).startHandshake(); if(!allowUnsafeLegacyRenegotiation) { // disable all ciphers, avoiding any subsequent handshake ((SSLSocket)sock).setEnabledCipherSuites(new String[0]); } } Regards Hartmut com.sun.net.ssl.internal.ssl.SSLSocketImpl code fragment: if (handshaker.isDone()) { sess = handshaker.getSession(); handshaker = null; connectionState = cs_DATA; // // Tell folk about handshake completion, but do // it in a separate thread. // if (handshakeListeners != null) { HandshakeCompletedEvent event = new HandshakeCompletedEvent(this, sess); Thread t = new NotifyHandshakeThread( handshakeListeners.entrySet(), event); t.start(); } } -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org