Análise de Protocolos e Suites de Cifra TLS
O diagnóstico de configurações de segurança em servidores web e sistemas de rede exige a interpretação rápida de dados de auditoria. O Verificador de suites de cifra TLS analisa o texto fornecido pelo utilizador — como o resultado de uma análise TLS ou um resumo do handshake — para identificar o protocolo negociado, as suites de cifra e a presença de algoritmos antigos ou inseguros.
Esta ferramenta realiza uma análise estática do texto introduzido, sem efetuar ligações externas ou varreduras ativas. O processamento é feito localmente: os dados TLS colados ficam no seu navegador e o BroBroGo não os envia nem guarda.
Estrutura e Componentes das Suites de Cifra TLS
Uma suite de cifra TLS (ou cipher suite) define o conjunto de algoritmos criptográficos que garantem a segurança de uma ligação. Nas versões TLS 1.2 e anteriores, o nome de uma suite de cifra segue uma estrutura padronizada que identifica os seguintes elementos:
- Troca de Chaves: Algoritmos como ECDHE ou DHE, que estabelecem a chave partilhada.
- Autenticação: Mecanismos como RSA ou ECDSA, que validam a identidade do servidor.
- Cifra de Bloco ou Fluxo: O algoritmo de encriptação simétrica (por exemplo, AES ou ChaCha20) e o seu modo de operação (como GCM ou CBC).
- Função de Hash (HMAC): Algoritmos como SHA-256 ou SHA-384, utilizados para verificar a integridade das mensagens.
O verificador reconhece nomes IANA comuns, aliases OpenSSL e vários IDs de conjuntos hexadecimais comuns. No entanto, a ferramenta não decodifica bytes de pacotes brutos.
A Diferença no TLS 1.3
No protocolo TLS 1.3, o processo de negociação foi simplificado. O TLS 1.3 negocia troca de chaves e autenticação separadamente do conjunto de criptografia. Consequentemente, as suites de cifra do TLS 1.3 contêm apenas a cifra simétrica e a função de hash de integridade (por exemplo, TLS_AES_256_GCM_SHA384), não sendo possível inferir os mecanismos de troca de chaves ou autenticação apenas a partir do nome da suite.
Classificação de Parâmetros: Negociado, Oferecido e Observado
Ao analisar a saída de ferramentas de diagnóstico ou capturas de tráfego, os parâmetros identificados são categorizados de acordo com a sua função no fluxo de comunicação:
- Negociado: O protocolo ou a suite de cifra efetivamente selecionada e acordada entre o cliente e o servidor para proteger a sessão.
- Oferecido: A lista de suites de cifra e versões de protocolo que o cliente enviou na mensagem ClientHello, indicando o que é capaz de suportar.
- Observado: Parâmetros detetados passivamente durante a monitorização de um fluxo de dados ou registados num histórico de auditoria.
Avaliação de Segurança e Algoritmos Obsoletos
O analisador avalia cada suite de cifra identificada e atribui-lhe uma classificação de segurança: Moderno, Revisão, Obsoleto ou Desconhecido. Algoritmos antigos ou mal concebidos comprometem a confidencialidade e a integridade das comunicações. Abaixo encontram-se as avaliações aplicadas a algoritmos e configurações específicas:
| Algoritmo / Configuração | Classificação / Constatação |
|---|---|
| RC4 | RC4 está obsoleto e não deve ser negociado. |
| DES | DES não é seguro para uso geral do TLS. |
| 3DES | 3DES tem um tamanho de bloco pequeno e está obsoleto para TLS. |
| Criptografia NULL | A criptografia NULL não fornece confidencialidade. |
| Suites EXPORT | Os conjuntos EXPORT usam intencionalmente criptografia fraca e estão obsoletos. |
| Suites Anónimas | Conjuntos anônimos não autenticam o par e são vulneráveis à interceptação. |
| MD5 | MD5 não é seguro para uso geral do TLS. |
| SHA-1 | Este conjunto usa SHA-1, que está obsoleto para uso geral de TLS. |
| Suites CBC | Os conjuntos CBC são legados. Prefira um conjunto AEAD, como AES-GCM ou ChaCha20-Poly1305. |
| Troca de Chaves RSA Estática | A troca de chaves estática RSA não fornece sigilo de encaminhamento. |
| CCM-8 | CCM-8 usa uma etiqueta de autenticação mais curta e precisa de uma revisão específica do protocolo. |
A Importância do Sigilo de Encaminhamento (Forward Secrecy)
A troca de chaves estática RSA apresenta uma vulnerabilidade estrutural: se a chave privada do servidor for comprometida no futuro, todas as comunicações passadas que foram gravadas poderão ser desencriptadas. A troca de chaves estática RSA não fornece sigilo de encaminhamento. Para mitigar este risco, devem ser priorizados algoritmos de troca de chaves efémeros, como ECDHE (Elliptic Curve Diffie-Hellman Ephemeral), que geram chaves de sessão exclusivas e descartáveis para cada ligação.
Limitações da Análise Estática
Esta ferramenta foi desenhada para ajudar programadores, engenheiros de fiabilidade de sites (SREs) e auditores de segurança a interpretar rapidamente relatórios de auditoria. Contudo, a análise estática possui limites claros em comparação com testes ativos:
- Sem Ligação Ativa: Esta página explica apenas o texto fornecido. Ele não se conecta a um host nem executa uma varredura TLS ao vivo e os campos ausentes permanecem desconhecidos.
- Sem Validação de Certificados: A ferramenta não valida cadeias de fidedignidade de certificados, datas de validade ou revogações.
- Sem Medição de Chaves: Não é possível medir o tamanho real das chaves utilizadas na sessão ativa ou testar a resistência do servidor a ataques de downgrade.
Resolução de Problemas e Mensagens de Erro
Se o texto introduzido não puder ser processado, a ferramenta apresenta mensagens específicas para orientar a correção:
- Entrada Vazia: Se tentar submeter o formulário sem dados, surge o erro: Cole primeiro uma varredura TLS ou um resumo do handshake.
- Excesso de Caracteres: O limite máximo de processamento é de 200.000 caracteres. Se este limite for ultrapassado, é exibido o erro: Esse resumo é extraordinariamente grande. Mantenha-o abaixo de 200.000 caracteres.
- Dados Não Reconhecidos: Se o texto não contiver padrões válidos, surge o erro: Nenhuma versão TLS ou conjunto de criptografia foi reconhecido. Cole campos legíveis de scanner ou handshake.
- Ausência de Elementos Específicos: Se a análise for bem-sucedida mas faltarem componentes, verá as mensagens Nenhuma versão do protocolo foi encontrada no texto fornecido. ou Nenhum conjunto de cifras foi encontrado no texto fornecido.
- Suites Fora do Mapeamento: Se uma suite identificada não constar na base de dados local, a ferramenta indica: Esta suíte não está no mapa de suíte comum integrado. Verifique o registro IANA atual ou a documentação do scanner.
Perguntas Frequentes
Quais formatos de saída TLS posso colar?
Cole texto de scanners TLS comuns, openssl s_client, resumos de análise de pacotes ou uma breve nota ClientHello ou ServerHello. O verificador reconhece nomes IANA comuns, aliases OpenSSL e vários IDs de conjuntos hexadecimais comuns; ele não decodifica bytes de pacotes brutos.
Por que um conjunto de criptografia TLS 1.3 não mostra RSA ou ECDHE?
Os nomes do conjunto de criptografia TLS 1.3 descrevem a criptografia de registro e o hash de handshake. A troca de chaves e a autenticação são negociadas separadamente, portanto não podem ser inferidas apenas a partir do nome de um conjunto.
Este resultado prova que um servidor é seguro?
Não. Ele explica apenas o texto que você cola. Ele não se conecta ao host, não verifica o certificado, não mede os tamanhos das chaves, não testa o comportamento de downgrade ou mostra todos os conjuntos que o servidor aceita.