Stavo cercando un modo affidabile e portatile per controllare la versione OpenSSL su GNU / Linux e altri sistemi, in modo che gli utenti possano facilmente scoprire se devono aggiornare il proprio SSL a causa del bug Heartbleed.
Ho pensato che sarebbe stato facile, ma ho riscontrato rapidamente un problema su Ubuntu 12.04 LTS con l'ultimo OpenSSL 1.0.1g:
versione di openssl -a
Mi aspettavo di vedere una versione completa, ma invece ho ottenuto questo:
OpenSSL 1.0.1 14 marzo 2012 costruito il: martedì 4 giugno 07:26:06 UTC 2013 piattaforma: [...]
Con mia spiacevole sorpresa, la lettera della versione non mostra. No f, no g lì, solo "1.0.1" e basta. Le date elencate non aiutano neanche a scoprire una versione (non) vulnerabile.
La differenza tra 1.0.1 (af) e 1.0.1g è cruciale.
Domande:
- Qual è un modo affidabile per controllare la versione, preferibilmente cross-distro?
- Perché la lettera della versione non viene visualizzata in primo luogo? Non sono stato in grado di testarlo su nient'altro che Ubuntu 12.04 LTS.
Anche altri stanno segnalando questo comportamento. Alcuni esempi:
- https://twitter.com/orblivion/status/453323034955223040
- https://twitter.com/axiomsofchoice/status/453309436816535554
Alcuni suggerimenti (specifici per la distro) che arrivano:
- Ubuntu e Debian:
apt-cache policy openssl
eapt-cache policy libssl1.0.0
. Confronta i numeri di versione con i pacchetti qui: http://www.ubuntu.com/usn/usn-2165-1/ - Fedora 20:
yum info openssl
(grazie @znmeb su Twitter) eyum info openssl-libs
Verifica se una versione precedente di OpenSSL è ancora residente:
- Non è completamente affidabile, ma puoi provare
lsof -n | grep ssl | grep DEL
. Vedi Heartbleed: come verificare in modo affidabile e portabile la versione OpenSSL? sul perché questo potrebbe non funzionare per te.
Si scopre che l'aggiornamento del pacchetto OpenSSL su Ubuntu e Debian non è sempre sufficiente. Dovresti anche aggiornare il pacchetto libssl1.0.0 e -then- controlla se openssl version -a
indica built on: Mon Apr 7 20:33:29 UTC 2014
.
[root@null~]# openssl version -a OpenSSL 1.0.1e-fips 11 Feb 2013
apt-cache policy openssl
e ha risposto con: Installed: 1.0.1-4ubuntu5.12
che è la 1.0.1g appena rilasciata da Ubuntu per 12.04 LTS. Ho effettuato il logout e di nuovo l'accesso. C'è qualcos'altro che posso fare per verificare?