Auteur Sujet: Multiple version OpenSSL sur un même systéme: Pourquoi ?  (Lu 2739 fois)

0 Membres et 1 Invité sur ce sujet

vivien

  • Administrateur
  • *
  • Messages: 47 213
    • Twitter LaFibre.info
Multiple version OpenSSL sur un même systéme: Pourquoi ?
« le: 07 décembre 2018 à 09:51:33 »
Le 20 novembre 2018, de mises à jour pour les 3 branches d'OpenSSL maintenu ont été publiées :
- OpenSSL 1.1.1a
- OpenSSL 1.1.0j
- OpenSSL 1.0.2q
Cela fait suite à de multiples vulnérabilités (CVE-2018-0734 - CVE-2018-0735 - CVE-2018-5407)

Ce qui m'étonne, c'est qu'un système a plusieurs version d'OpenSSL :

Ubuntu 18.10 :
- OpenSSL 1.0.2n-1ubuntu6.1 qui correspond à OpenSSL 1.0.2q
- OpenSSL 1.1.1-1ubuntu2.1 qui correspond à OpenSSL 1.1.1a

Ubuntu 18.04 LTS :
- OpenSSL 1.0.2n-1ubuntu5.2 qui correspond à OpenSSL 1.0.2q
- OpenSSL 1.1.0g-2ubuntu4.3 qui correspond à OpenSSL 1.1.0j

Savez-vous pourquoi OpenSSL 1.0.2 est installé sur les systèmes récents alors qu'il y a une version plus récente d'OpenSSL ?

Mise à jour depuis un Ubuntu 18.04 serveur avec juste Apache d'installé :

# apt full-upgrade
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances       
Lecture des informations d'état... Fait
Calcul de la mise à jour... Fait
Les paquets suivants seront mis à jour :
  libssl1.0.0 libssl1.1 openssl
3 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 0 o/2 750 ko dans les archives.
Après cette opération, 0 o d'espace disque supplèmentaires seront utilisés.
Souhaitez-vous continuer ? [O/n] o
Préconfiguration des paquets...
(Lecture de la base de données... 110165 fichiers et répertoires déjà installés.)
Préparation du dépaquetage de .../libssl1.1_1.1.0g-2ubuntu4.3_amd64.deb ...
Dépaquetage de libssl1.1:amd64 (1.1.0g-2ubuntu4.3) sur (1.1.0g-2ubuntu4.1) ...
Préparation du dépaquetage de .../openssl_1.1.0g-2ubuntu4.3_amd64.deb ...
Dépaquetage de openssl (1.1.0g-2ubuntu4.3) sur (1.1.0g-2ubuntu4.1) ...
Préparation du dépaquetage de .../libssl1.0.0_1.0.2n-1ubuntu5.2_amd64.deb ...
Dépaquetage de libssl1.0.0:amd64 (1.0.2n-1ubuntu5.2) sur (1.0.2n-1ubuntu5.1) ...
Paramétrage de libssl1.0.0:amd64 (1.0.2n-1ubuntu5.2) ...
Traitement des actions différées (« triggers ») pour libc-bin (2.27-3ubuntu1) ...
Paramétrage de libssl1.1:amd64 (1.1.0g-2ubuntu4.3) ...
Paramétrage de openssl (1.1.0g-2ubuntu4.3) ...
Traitement des actions différées (« triggers ») pour man-db (2.8.3-2ubuntu0.1) ...
Traitement des actions différées (« triggers ») pour libc-bin (2.27-3ubuntu1) ...

Une version d'OpenSSL est sous la forme majeur.mineur.correctif suivit de la lettre qui fait référence à la version du patch.

Une particularité d'Ubuntu, c'est de mettre les patchs de sécurité, sans changer la référence à la version du patch, qui reste identique.

Voici l'évolutoin des version OPenSSL pour Ubuntu 16.04 LTS :

14/11/2017 : 1.0.2g-1ubuntu4.9 OpenSSL 1.0.2g  1 Mar 2016
12/12/2017 : 1.0.2g-1ubuntu4.10 OpenSSL 1.0.2g  1 Mar 2016
28/03/2018 : 1.0.2g-1ubuntu4.11 OpenSSL 1.0.2g  1 Mar 2016
20/04/2018 : 1.0.2g-1ubuntu4.12 OpenSSL 1.0.2g  1 Mar 2016
26/06/2018 : 1.0.2g-1ubuntu4.13 OpenSSL 1.0.2g  1 Mar 2016


A noter que les prochaines version d'OpenSSL n'auront plsu de chiffre pour le correctif et le patch sera un chiffre.
Cela s'applique pour la prochaine version qui sera OpenSSL 3.0.0

Il n'y aura pas d'OpenSSL 2 car le module OpenSSL FIPS utilise déjà cette référence.

Marin

  • Client Bbox vdsl
  • Modérateur
  • *
  • Messages: 2 804
  • 73
Multiple version OpenSSL sur un même systéme: Pourquoi ?
« Réponse #1 le: 07 décembre 2018 à 10:19:24 »
Salut,

Je pense qu'il y a simplement eu des cassages de compatibilité dans l'API. Quand je fais « apt rdepends libssl1.0.0 » je vois pas mal de paquets (et quand je fais « apt rdepends libssl1.1 » j'en vois beaucoup plus).

Ce blog post semble faire une synthèse des points où la rétrocompatibilité a été cassée : https://www.cossacklabs.com/blog/moving-to-openssl-110.html

Personnellement j'ai eu des problèmes avec OpenSSL 1.1 qui supprime complètement certaines ciphersuites toujours utilisées par des applications industrielles anciennes, sauf compilation avec une option spéciale (celles basées sur RC4 notamment), mais Python 3.7 semble reposer uniquement sur celui-ci (à l'inverse de Python 3.5).