Qual è l'impatto esatto dell'aggiunta di SSLv3 a jdk.tls.disabledAlgorithms in java 7 o 8

0

Stavo cercando di rimuovere il supporto per SSLv3 da un'app Web in esecuzione su WebSphere 8.5 / Java 7 e in base a più origini (tra le altre, Bollettino sulla sicurezza WebSphere per CVE-2014-3566 ), ho pensato che avrei potuto farlo aggiungendo

jdk.tls.disabledAlgorithms=SSLv3

a jre/lib/security/java.security .

Tuttavia i test con nmap e altri strumenti hanno mostrato che il protocollo SSLv3 è ancora presente; e so che l'impostazione influisce sul server perché sono riuscito a disabilitare RC4 allo stesso modo.

Ho provato a verificare il comportamento di Oracle JDK con il seguente codice:

import javax.net.ssl.SSLContext;
import java.security.*;
import java.util.*;

public class Main {
    public static void main(String[] args) {
        System.out.println(Security.getProperty("jdk.tls.disabledAlgorithms"));
        List<String> protocols = new ArrayList<>();
        for (Provider provider : Security.getProviders()) {
            for (Object prop : provider.keySet()) {
                String key = (String) prop;
                if (key.startsWith("SSLContext.")
                        && !key.equals("SSLContext.Default")
                        && key.matches(".*[0-9].*"))
                    protocols.add(key.substring("SSLContext.".length()));
                else if (key.startsWith("Alg.Alias.SSLContext.")
                        && key.matches(".*[0-9].*"))
                    protocols.add(key.substring("Alg.Alias.SSLContext.".length()));
            }
        }
        Collections.sort(protocols);
        System.out.println(protocols);

        SecureRandom rand = new SecureRandom();
    }
}

e in esecuzione con entrambe le ultime versioni di JDK 7 e 8, posso vedere che SSLv3 è incluso negli algoritmi disabilitati, e tuttavia anche disponibile. Ad esempio, con JDK 8:

SSLv3, RC4, MD5withRSA, DH keySize < 768
[SSLv3, TLSv1, TLSv1.1, TLSv1.2]

La prima riga è il valore corrente di jdk.tls.disabledAlgorithms e il secondo i protocolli disponibili.

Quindi mi chiedo che cosa dovrebbe fare questa impostazione; come ho detto so che influisce su altri algoritmi, ma perché SSLv3 è ancora disponibile?

Grazie

    
posta Frédéric Dumont 10.08.2016 - 07:16
fonte

0 risposte

Leggi altre domande sui tag