Pourquoi les mises à niveau sans assistance ne corrigent pas le bug Heartbleed?

20

J'ai suivi les instructions pour installer des mises à niveau sans assistance pour installer des mises à jour de sécurité automatiques sur mon serveur (serveur ubuntu 13.10).

https://help.ubuntu.com/community/AutomaticSecurityUpdates

Pouvez-vous m'aider à comprendre pourquoi ce matin j'ai toujours le bug heartbleed sur mon serveur?

$ openssl version -a
OpenSSL 1.0.1e 11 Feb 2013
built on: Wed Jan  8 20:58:47 UTC 2014
platform: debian-amd64

les autres informations:

$ cat /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

$ cat /var/log/apt/history.log
....
Start-Date: 2014-04-03  15:33:59
Commandline: apt-get install nginx
Install: libxau6:amd64 (1.0.8-1, automatic), libx11-data:amd64 (1.6.1-1ubuntu1, automatic), libxcb1:amd64 (1.9.1-3ubuntu1, automatic), libvpx1:amd64 (1.2.0-2, automatic), libgd3:amd64 (2.1.0-2, automatic), libxdmcp6:amd64 (1.1.1-1, automatic), libxslt1.1:amd64 (1.1.28-2, automatic), nginx-common:amd64 (1.4.1-3ubuntu1.3, automatic), nginx:amd64 (1.4.1-3ubuntu1.3), nginx-full:amd64 (1.4.1-3ubuntu1.3, automatic), libx11-6:amd64 (1.6.1-1ubuntu1, automatic), libxpm4:amd64 (3.5.10-1, automatic)
End-Date: 2014-04-03  15:34:02

Start-Date: 2014-04-04  10:26:38
Commandline: apt-get install unattended-upgrades
Install: unattended-upgrades:amd64 (0.79.3ubuntu8)
End-Date: 2014-04-04  10:26:40

Je vous remercie

Guillaume Vincent
la source
2
Ne répond pas à votre question, mais jetez un œil à la réponse dans ce document pour réparer votre système d'exploitation askubuntu.com/questions/444817/am-i-affected-heartbleed-bug
Ring Ø
J'accepte que vous ayez une version mise à jour. Mon serveur 12.04 est sur les mises à jour automatiques et a été mis à jour hier. Avez-vous vérifié /var/log/apt/history.log?
Jos
@jos J'ai eu le contenu de mon /var/log/apt/history.log, pas plus d'informations ici
Guillaume Vincent

Réponses:

28

Vous n'avez pas la vulnérabilité Heartbleed sur votre serveur, OpenSSL a été corrigé pour résoudre ce problème (sans le mettre à niveau).

Vous avez omis plusieurs lignes importantes dans la sortie de la version OpenSSL, c'est ainsi que vous savez qu'il a été corrigé, pas avec le numéro de version:

openssl version -a                                                                ✭
OpenSSL 1.0.1e 11 Feb 2013
built on: Mon Apr  7 20:33:19 UTC 2014
platform: debian-amd64
options:  bn(64,64) rc4(16x,int) des(idx,cisc,16,int) blowfish(idx) 
compiler: cc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_NO_TLS1_2_CLIENT -DOPENSSL_MAX_TLS1_2_CIPHER_LENGTH=50 -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/usr/lib/ssl"

La ligne «build on» est ce qui compte ici, le 7 avril ou après: vous êtes bon. Sinon: vous avez des ennuis.

Mise à jour, car la date de construction ne semble pas être bonne:

Peut-être que la mise à niveau sans assistance n'a pas encore été exécutée, sur mon serveur, les scripts dans cron.daily sont configurés pour s'exécuter à 6:25

25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )

Vérifiez également le contenu de /etc/apt/apt.conf.d/10periodic et vérifiez que les mises à jour de sécurité sont installées:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";

Source: https://help.ubuntu.com/lts/serverguide/automatic-updates.html

Mathieu Comandon
la source
1
J'ai des ennuis :(built on: Wed Jan 8 20:58:47 UTC 2014 platform: debian-amd64
Guillaume Vincent
lancez sudo apt-get update && sudo apt-get dist-upgrade-vous et vous devriez être à jour.
Edd Turtle du
Merci @EddTurtle, ce n'est pas ma question! Ma question est pourquoi la mise à jour automatique ne fonctionne pas!
Guillaume Vincent
mon /etc/apt/apt.conf.d/10periodic n'était pas bon ou peut-être que le cron n'a trouvé aucune mise à niveau à 5h du matin. Merci @ mathieu-comandon
Guillaume Vincent
@guillaumevincent Je viens de remarquer que les mises à niveau sans assistance étaient le tout dernier paquet que vous avez installé - il devait donc s'agir d'un problème de configuration.
Jos
12

Tout d'abord, vous devez effectuer la mise à niveau. Les mises à niveau sans assistance ne s'exécutent qu'une fois par jour, et cela fait moins d'un jour depuis la sortie du correctif (2014-04-07 vers 20h00 GMT). Pour les excentriques, assurez-vous que vous avez mis à niveau vers la libssl1.0.0version 1.0.1e-3ubuntu1.2 ou supérieure. (Plus précisément, le correctif est venu dans la version 1.0.1-4ubuntu5.12.)

Ensuite, notez qu'il s'agit d'une très mauvaise vulnérabilité: elle peut avoir permis à des attaquants d'obtenir des données confidentielles en se connectant à votre serveur vulnérable. Si vous exécutez un serveur SSL, toutes les données qui étaient dans la mémoire du serveur depuis un peu avant l'annonce de la vulnérabilité peuvent avoir été divulguées. Cela inclut, en particulier, la clé privée SSL du serveur, vous devez donc en générer une nouvelle et révoquer l'ancienne.

Pour plus d'informations, voir Comment corriger le bogue Heartbleed (CVE-2014-0160) dans OpenSSL?

Gilles 'SO- arrête d'être méchant'
la source
Tout ce qui se trouve dans la mémoire du serveur pendant environ deux ans a peut-être été divulgué, et pas seulement depuis l'annonce.
pieroxy
@pieroxy Tout ce qui se trouve dans la mémoire du serveur depuis longtemps est très susceptible d'avoir été écrasé, au point que vous devriez également vous soucier de nombreux autres vecteurs d'attaque. L'exception est que si vous vous inquiétez d'un adversaire qui aurait pu connaître le bug plus tôt et l'exploiter tranquillement - des adversaires au niveau gouvernemental auraient bien pu le savoir, il est peu probable que des escrocs ordinaires l'auraient fait.
Gilles 'SO- arrête d'être méchant'
7

Vous ne pouvez pas faire confiance aux chaînes de version internes. La version indique 1.0.1eet le bogue affecte de 1.0.0 à 1.0.0f. Est-ce suffisant pour déterminer si vous disposez toujours d'une version vulnérable d'OpenSL? Non. La version interne d'OpenSSL ne change pas, même si certaines mises à jour sont appliquées. La seule façon d'identifier de manière fiable votre version consiste à rechercher la version du gestionnaire de packages à l'aide d' apt-cache policyun autre outil:

➜  ~  apt-cache policy openssl
openssl:
  Installed: 1.0.1f-1
  Candidate: 1.0.1f-1
  Version table:
 *** 1.0.1f-1 0
        500 http://http.debian.net/debian/ testing/main i386 Packages
        100 /var/lib/dpkg/status
➜  ~  dpkg -l openssl
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
ii  openssl        1.0.1f-1     i386         Secure Sockets Layer toolkit - cr
➜  ~  

Comme vous pouvez le voir, ma version de openssl est supérieure, à travers semble être affectée, car c'est 1.0.1f, maintenant si je vérifie les changelogs:

➜  ~ apt-get changelog openssl
openssl (1.0.1f-1) unstable; urgency=high

  * New upstream version
    - Fix for TLS record tampering bug CVE-2013-4353
    - Drop the snapshot patch
  * update watch file to check for upstream signature and add upstream pgp key.
  * Drop conflicts against openssh since we now on a released version again.

 -- Kurt Roeckx <[email protected]>  Mon, 06 Jan 2014 18:50:54 +0100

Ouais, je suis toujours affecté. Il n'y a aucune référence au CVE-2014-0160 dans le journal des modifications. Mais, je n'exécute aucun service SSL / TSL, je peux donc attendre. Je n'ai tout simplement pas à générer de certificats SSL à l'aide de cette version d'OpenSSL. Si je le fais, je n'ai qu'à suivre les conseils de Gilles: supprimer les services, révoquer le certificat, en générer de nouveaux.

Braiam
la source
Remarque: "changelog apt-cache" n'est pas une commande valide pour moi, mais "changelog aptitude" l'est.
ColinM
1
@ColinM désolé, était apt-get, pas apt-cache, problème de presse-papiers.
Braiam