Como ativar as codificações SSL 3DES para o OpenSSL 1.0.2k

2

O OpenSSL 1.0.2k removeu cifras 3DES por padrão, o que significa que alguns navegadores legados (por exemplo, o IE8 no Windows XP) não podem mais ser suportados.

De acordo com o blog oficial do OpenSSL , para reativar as cifras 3DES, nós deve adicionar enable-weak-ssl-ciphers flag ao compilar.

Então, como lidar com isso? Quaisquer outros sinalizadores necessários ao compilar? Além disso, posso cobrir o Openssl instalado pelo DPKG (ferramenta de gerenciamento de pacotes Debian) com a versão auto-compilada e habilitada para 3DES? Se for praticável, como?

Obrigado: -)

    
por Hardrain 16.02.2017 / 03:20

2 respostas

1

Como não tenho uma resposta útil para resolver esse problema, gostaria de compartilhar o que fiz nele.

Primeiro, você deve obter as ferramentas para criar software e as dependências do OpenSSL (por exemplo, em distros do tipo Debian)

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

Em seguida, obtenha a última versão do OpenSSL, verifique a assinatura e compile-a com a opção enable-weak-ssl-ciphers , se desejar recuperar o suporte do SSLv3 obsoleto para o GOD D ** N Microsoft IE6, enable-ssl3 e enable-ssl3-method também deve ser anexado à opção de compilação.

Não se esqueça de shared flag ou libssl.so e libcrypto.so não serão criados e use -Wl,-rpath= para informar ao vinculador ( ld ) para vincular bibliotecas compartilhadas em qual diretório.

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

Depois disso, sua versão personalizada do OpenSSL será instalada em /opt/openssl-1.0.2 (em vez de cobrir a versão fornecida com seu SO).

Seus aplicativos também podem ter que ser recompilados, com essas opções para forçar o vinculador a vincular sua versão personalizada de bibliotecas OpenSSL (Substituir a configuração da variável /etc/ld.so.conf ou PKGCONFIG )

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

Você também pode tentar o OpenSSL 1.1.0, já que a maioria dos aplicativos agora suporta a API dele.

    
por 04.05.2018 / 09:36
0

Você precisará:

  1. Reconstruindo o pacote OpenSSL do Debian - a versão incluída no seu lançamento Debian.
  2. Hospedando-o em algum lugar para disponibilizá-lo em todas as máquinas você quer que ele substitua o original.
  3. Certificando-se de recriar sua versão personalizada cada vez que o estoque OpenSSL pacote recebe uma atualização de segurança (e, portanto, sua nova versão corrigida é lançada através do canal de atualizações de segurança).
Infelizmente, todas as etapas acima requerem uma expansão adicional, então a principal questão que eu tenho é que o certeza triple-DES está desabilitado no repositório do Debian? No meu sistema Stretch eu tenho:

$ 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

O que, para mim, sugere que eu tenha uma versão mais recente do OpenSSL do que você está falando, e tem 3DES suportado.

Então, você testou?

    
por 16.02.2017 / 08:32