PHP — Seu servidor esta pronta para as evolução do TLS?

Olá Gente

Todas tecnologias evoluem, segurança não é diferente, o TLS esta sendo implantado gradativamente a algum tempo, e este ano diversas plataformas estão passando a permitir apenas o TLS 1.2 (Ou superior).

Achas que isto não ira te afetar? Usa Paypal em seu site? Então veja:

PayPal Security Guidelines
PayPal API reference

Toda plataforma esta atualizando suas apis para os novos protocolos de segurança e isto requer que nós, desenvolvedoras, fiquemos atentas.

Vamos ver o problema acontecendo, irei tentar fazer um GET para a API do paypal através de um servidor rodando PHP 5.2 utilizando OpenSSL/0.9:

Automáticamente gera o erro:

HTTP_CODE: 0
ERRO: 35: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure

Agora iremos fazer a mesma chamada em um servidor rodando PHP 7.0 utilizando OpenSSL/1.0.2o:

HTTP_CODE: 302

Sem Erro!

Mas como vou saber se meu servidor é compatível?

Faça uma chamada GET para https://www.howsmyssl.com/a/check, será indicado qual a versão mais recente ativa no TLS do seu servidor:

No parametro tls_version será indicado a versão do TLS ativa.

Segue teste no PHP 5.2:

tls_version: TLS 1.0

E teste no PHP 7.0:

tls_version: TLS 1.2

Mas e se tenho uma aplicação Rodando PHP 5.2 e quero utilizar o TLS 1.2? Ai você vai começar a ver o problema.

Para utilizar o TLS 1.2 você precisar possuir o OpenSSL ≥ 1.0.1c, e para atualizar o OpenSSL você precisa atualizar o PHP!

Então comece logo a atualizar suas aplicações antigas!

Por hoje é isto, queridos desenvolvedores! 👩‍💼

Até logo! 👋