Mi piacerebbe essere in grado di testare la vulnerabilità di POODLE su TLS.Come testare POODLE su TLS?
Ci sono già diversi modi per farlo, ad esempio SSLLabs di Qualys, ma è troppo restrittivo (solo la porta TCP 443 di server disponibile su Internet). c'è anche questo collegamento, ma ho avuto un sacco falsi positivi/negativi durante il test: http://www.exploresecurity.com/testing-for-poodle_tls-manually/
Così ora sto cercando di modificare implementazione di TLS di OpenSSL 1.0.2d per essere in grado di inviare pacchetti non validi (usando openssl s_client ...) e per vedere il comportamento dei server.
Anche se non sono molto familiarità con C, sono riuscito a trovare interessante codice che implementa l'imbottitura per AES-CBC-SHA (secondo RFC 2246) in OpenSSL in crypto/evp/e_aes_cbc_hmac_sha1.c
on line 518:
/* pad the payload|hmac */
plen += SHA_DIGEST_LENGTH;
for (l = len - plen - 1; plen < len; plen++)
out[plen] = l;
I modificato in questo per cambiare il primo byte imbottitura per renderlo corretto secondo RFC:
/* pad the payload|hmac */
plen += SHA_DIGEST_LENGTH;
for (l = len - plen - 1; plen < len; plen++) {
if (plen == len - l - 1)
out[plen] = (l + 1) % 256;
else
out[plen] = l;
}
Dai compilazione e test:
./config
make
./apps/openssl s_client -connect www.google.com:443 -servername www.google.com -tls1 -cipher AES128-SHA
E potrei collegare e fare una richiesta HTTP che ha ottenuto risposta ...
Quindi la mia domanda è: non era forse il bene del file ho modificato o si tratta di qualcos'altro?
Grazie mille per il vostro aiuto.
ringraziarvi swa66. Tuttavia, sto cercando un modo per testare POODLE su TLS, non su SSLv3. A proposito, la descrizione che mi hai inviato non è precisa. Un server può supportare SSLv3 senza essere vulnerabile. La vulnerabilità di POODLE è legata all'uso di suite di crittografia CBC, quindi l'utilizzo di RC4 con SSLv3, ad esempio, evita di essere vulnerabile;) –
FWIW: Non ho commentato cosa è o non è vulnerabile, solo ciò che è uno scanner ben noto usa come algoritmo. Lo scanner in metasploit segnala la vulnerabilità di POODLE se trova una connessione SSLv3. Il controllo nello scanner nmap effettua in effetti una determinazione più complessa, incluso il controllo delle cyphersuites CBC e un fallback da TLS a SSLv3. – swa66