La vulnerabilità di HeartBleed riguarda i server Apache Tomcat che utilizzano Tomcat Native?

13

I server Apache Tomcat utilizzano Tomcat Native & APR vulnerabile al bug OpenSSL HeartBleed, o questo strato li isola? link

Informazioni bug HeartBled OpenSSL: link

Sul mio server Apache Tomcat, ho:

  • Una versione vulnerabile di OpenSSL
  • APR compilato e installato
  • Creato e installato Tomcat Native utilizzando - with-apr e - with-ssl
  • Tomcat sta gestendo le richieste direttamente. Un connettore sulla porta 443 è configurato con attributi SSLEnabled, SSLProtocol, SSLCipherSuite, SSLCertificateFile, SSLCertificateKeyFile, SSLCertificateChainFile
    • SSLProtocol="- ALL + SSLv3 + TLSv1"
    • SSLCipherSuite="ALL:! ANULL: eNULL:! ADH: RC4 + RSA: + ALTO: + MEDIO: BASSO: SSLv2: EXPORT"

Domande:

  • Le versioni di Tomcat, APR o Tomcat Native hanno qualche effetto sulla vulnerabilità?
  • I valori SSLProtocol o SSLCipherSuite influiscono sulla vulnerabilità?
posta Arlo 08.04.2014 - 18:41
fonte

4 risposte

11

In base al documento a cui sei collegato, il connettore APR

  • Uses OpenSSL for TLS/SSL capabilities (if supported by linked APR library)

Pertanto, sarebbe ragionevole presumere che la Tomcat Native Library sarebbe vulnerabile al bug Heartbleed. Tuttavia, le condizioni sono diverse, perché Tomcat è scritto in Java e Java ha un proprio sistema di allocazione (il famoso garbage collector) che ottiene memoria dal sistema operativo da enormi blocchi, a parte le zone in cui OpenSSL ottiene i suoi blocchi.

Pertanto, è improbabile che il sovraccarico del buffer heartbleed sveli informazioni segrete che esistono come oggetti basati su Java. Può, tuttavia, ottenere informazioni che sono allocate dallo stesso heap di dove OpenSSL ottiene i propri buffer. In particolare, è possibile che la vulnerabilità può rivelare parte o tutta la chiave privata utilizzata da OpenSSL stesso.

    
risposta data 08.04.2014 - 19:55
fonte
5

Ho un server tomcat 7.0.29 su Windows che risulta vulnerabile nelle scansioni heartbleed di qualis. Sta usando l'APR con questa configurazione di connettore in server.xml:

Connector protocol="org.apache.coyote.http11.Http11AprProtocol"
URIEncoding="UTF-8"
port="443" maxThreads="200"
scheme="https" secure="true" SSLEnabled="true"
SSLCertificateFile="${catalina.base}/conf/ssl/XXXX.cer" 
SSLCertificateKeyFile="${catalina.base}/conf/ssl/XXXX.key"
SSLCertificateChainFile="${catalina.base}/conf/ssl/XXXX.cer"
SSLPassword="XXXX"
clientAuth="optional" 
SSLProtocol="ALL" 
SSLCipherSuite="ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:!SSLv2:RC4+RSA"

Brian

    
risposta data 09.04.2014 - 18:27
fonte
1

Ecco il un link ai binari tcnative-1.1.29 per Windows rispettati contro apr-1.5.0, openssl-1.0.1g. Ciò è conforme a VC 2008, quindi è necessario il ridistribuibile Microsoft Visual C ++ 2008 per Windows 2003 o XP. I file di Juan Calero non includevano win32 e sono stati accolti contro VC 2010. Uno o l'altro potrebbe servire meglio le tue proposte. Devi solo fermare tomcat, sostituire tcnative-1.dll e poi avviare tomcat.

    
risposta data 10.04.2014 - 19:58
fonte
1

Credo che Tomcat non sia vulnerabile a un heartbleed out of the box.

Sì, la libreria APR è collegata e SSLEngine è attivo.

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

Ma se si guarda il file di configurazione server.xml di una distribuzione tomcat predefinita, il connettore SSL utilizza JSSE non la libreria APR.

<!-- Define a SSL HTTP/1.1 Connector on port 8443
     This connector uses the BIO implementation that requires the JSSE
     style configuration. When using the APR/native implementation, the
     OpenSSL style configuration is required as described in the APR/native
     documentation -->
<!--
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS" />
-->

Quindi non dovrebbe essere sfruttato tramite Heartbleed. A meno che tu non abbia modificato manualmente il connettore SSL per utilizzare l'APR, penso che sia sicuro dire che non sei vulnerabile.

A proposito di chi conosci qualche tester offline per il cuore?

link

Saluti,

Alex L.

    
risposta data 11.04.2014 - 08:02
fonte

Leggi altre domande sui tag