Comment activer les chiffrements SSL 3DES pour OpenSSL 1.0.2k

2

OpenSSL 1.0.2k a supprimé les chiffrements 3DES par défaut, ce qui signifie que certains navigateurs existants (par exemple, IE8 sur Windows XP) ne peuvent plus être pris en charge.

Selon OpenSSL blog officiel , pour réactiver les chiffrements 3DES, nous devrions ajouter enable-weak-ssl-ciphers drapeau lors de la compilation.

Alors, comment y faire face? Est-ce que d'autres drapeaux sont requis lors de la compilation? De plus, puis-je couvrir OpenSL installé par DPKG (outil de gestion de paquets Debian) avec la version 3DES auto-compilée? Si c'est faisable, comment faire?

Merci :-)

Hardrain
la source
Sûrement WinXP prend en charge plus que 3DES?
grawity

Réponses:

1

Étant donné que je n'ai pas de réponse utile pour résoudre ce problème, j'aimerais partager ce que j'ai fait à ce sujet.

Tout d’abord, vous devez vous procurer les outils de construction de logiciels et les dépendances pour OpenSSL (par exemple, des distributions de type Debian).

apt install build-essential make zlib1g-dev libxml2-dev

Ensuite, récupérez la dernière version d’OpenSSL, vérifiez la signature et compilez-la avec l’option enable-weak-ssl-ciphers, si vous voulez retrouver le support de SSLv3 obsolète pour le DIEU D ** N Microsoft IE6, enable-ssl3 et enable-ssl3-method devrait également être ajouter à l'option de compilation.

N'oubliez pas le shared drapeau ou libssl.so et libcrypto.so ne sera pas construit, et utiliser -Wl,-rpath= dire à l'éditeur de liens ( ld ) pour lier des bibliothèques partagées dans quel répertoire.

wget https://www.openssl.org/source/openssl-1.0.2o.tar.gz
sha256sum openssl-1.0.2o.tar.gz
curl https://www.openssl.org/source/openssl-1.0.2o.tar.gz.sha256

tar -zxvf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o/

./config --prefix=/opt/openssl-1.0.2 \
--openssldir=/etc/ssl \
shared enable-weak-ssl-ciphers \
-Wl,-rpath=/opt/openssl-1.0.2/lib

make
make install

Après cela, votre version personnalisée de OpenSSL sera installée dans /opt/openssl-1.0.2 (plutôt que de couvrir la version livrée avec votre système d'exploitation).

Il se peut également que vos applications doivent être recompilées, avec ces options pour forcer l’éditeur de liens à lier votre version personnalisée des bibliothèques OpenSSL (Remplacer la configuration à partir de /etc/ld.so.conf ou PKGCONFIG variable)

LDFLAGS="-L/opt/openssl-1.0.2/lib -lssl -lcrypto -Wl,-rpath=/opt/openssl-1.0.2/lib"

Vous pouvez également essayer OpenSSL 1.1.0, car la plupart des applications prennent désormais en charge son API.

Hardrain
la source
0

Tu auras besoin de:

  1. Reconstruire le Paquet OpenSSL de Debian —La version incluse dans votre version de Debian.
  2. L'héberger quelque part pour le rendre disponible sur toutes les machines vous voulez qu'il remplace l'original.
  3. Assurez-vous de reconstruire votre version personnalisée chaque fois que le stock OpenSSL package reçoit une mise à jour de sécurité (et par conséquent sa nouvelle version corrigée est publiée via le canal des mises à jour de sécurité).

Malheureusement, toutes les étapes ci-dessus nécessitent plus de développement, la principale question que je me pose est la suivante: sûr triple-DES est désactivé en stock Les versions de Debian? Sur mon système Stretch, j'ai:

$ openssl version
OpenSSL 1.1.0c  10 Nov 2016

$ openssl list -cipher-algorithms | grep -i des
DES => DES-CBC
DES-CBC
DES-CFB
DES-CFB1
DES-CFB8
DES-ECB
DES-EDE
DES-EDE-CBC
DES-EDE-CFB
DES-EDE-ECB => DES-EDE
DES-EDE-OFB
DES-EDE3
DES-EDE3-CBC
DES-EDE3-CFB
DES-EDE3-CFB1
DES-EDE3-CFB8
DES-EDE3-ECB => DES-EDE3
DES-EDE3-OFB
DES-OFB
DES3 => DES-EDE3-CBC
DESX => DESX-CBC
DESX-CBC
des => DES-CBC
DES-CBC
DES-CFB
DES-CFB1
DES-CFB8
DES-ECB
DES-EDE
DES-EDE-CBC
DES-EDE-CFB
des-ede-ecb => DES-EDE
DES-EDE-OFB
DES-EDE3
DES-EDE3-CBC
DES-EDE3-CFB
DES-EDE3-CFB1
DES-EDE3-CFB8
des-ede3-ecb => DES-EDE3
DES-EDE3-OFB
DES-OFB
des3 => DES-EDE3-CBC
des3-wrap => id-smime-alg-CMS3DESwrap
desx => DESX-CBC
DESX-CBC
id-smime-alg-CMS3DESwrap

$ openssl list -disabled
Disabled algorithms:
BLAKE2
HEARTBEATS
IDEA
MD2
MDC2
RC5
SCTP
SSL3
ZLIB

Ce qui, à mes yeux, suggère que j'ai une version plus récente d'OpenSSL que celui dont vous parlez, et il prend en charge 3DES.

Alors, avez-vous testé?

kostix
la source