O que é um Cipher Suite e como baixar um?
Se você já visitou um site que usa HTTPS, provavelmente se beneficiou da segurança fornecida por um conjunto de cifras. Um conjunto de cifras é um conjunto de algoritmos que ajudam a proteger uma conexão de rede por meio do Transport Layer Security (TLS), muitas vezes ainda chamado de Secure Sockets Layer (SSL). Neste artigo, explicaremos o que é um conjunto de cifras, como ele funciona, como comparar diferentes conjuntos de cifras e como baixar e instalar um em seu servidor ou dispositivo.
Introdução
Um conjunto de cifras é uma combinação de algoritmos criptográficos que permitem comunicações de rede seguras por meio de TLS. Um conjunto de cifras especifica um algoritmo para cada tarefa de criação de chaves, criptografia de informações e fornecimento de integridade, autenticação e confidencialidade dos dados. Um conjunto de cifras é acordado entre o servidor da Web e o cliente durante um handshake SSL, que é um processo que utiliza várias funções criptográficas para obter uma conexão HTTPS.
cipher suite download
Os principais componentes de um conjunto de cifras são:
Um algoritmo de troca de chaves, como RSA, DH, ECDH, DHE, ECDHE ou PSK. Este algoritmo é usado para trocar uma chave entre dois dispositivos. Essa chave é usada para criptografar e descriptografar as mensagens enviadas entre duas máquinas.
Um algoritmo de criptografia em massa, como AES, DES, RC4 ou ChaCha20. Este algoritmo é usado para criptografar os dados que estão sendo enviados.
Um algoritmo de código de autenticação de mensagem (MAC), como SHA1, SHA256, SHA384 ou Poly1305. Esse algoritmo fornece verificações de integridade de dados para garantir que os dados enviados não sejam alterados em trânsito.
Um algoritmo de autenticação ou algoritmo de assinatura digital, como RSA, ECDSA ou DSA. Este algoritmo ajuda a autenticar o servidor e/ou cliente verificando seus certificados.
Um conjunto de cifras funciona no processo de handshake TLS da seguinte maneira:
O cliente envia ao servidor uma lista de conjuntos de cifras suportados em ordem de preferência.
O servidor seleciona o conjunto de cifras com suporte mútuo mais seguro e o envia de volta ao cliente junto com seu certificado.
O cliente verifica o certificado do servidor e envia seu próprio certificado, se necessário.
O cliente e o servidor usam o algoritmo de troca de chaves para gerar uma chave secreta compartilhada.
O cliente e o servidor usam o algoritmo de criptografia em massa e o algoritmo MAC para criptografar e autenticar suas mensagens usando a chave secreta compartilhada.
Exemplos de suíte de cifras
Cada conjunto de cifras tem um nome exclusivo que representa os algoritmos usados para cada componente. Por exemplo, o conjunto de cifras TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 significa que ele usa TLS como protocolo, ECDHE como algoritmo de troca de chaves, RSA como algoritmo de autenticação, AES com chaves de 256 bits como algoritmo de criptografia em massa, GCM como modo de operação e SHA384 como algoritmo MAC.
Existem diferentes conjuntos de cifras para diferentes versões do TLS. A versão mais recente, TLS 1.3, possui um conjunto menor e mais seguro de conjuntos de cifras do que as versões anteriores. O TLS 1.3 oferece suporte apenas a cinco conjuntos de cifras, todos os quais usam algoritmos AEAD (criptografia autenticada com dados associados) que combinam criptografia e autenticação em uma única etapa. Esses conjuntos de cifras são:
TLS_AES_256_GCM_SHA384
TLS_CHACHA20_POLY1305_SHA256
TLS_AES_128_GCM_SHA256
TLS_AES_128_CCM_8_SHA256
TLS_AES_128_CCM_SHA256
Versões anteriores do TLS, como TLS 1.2 e TLS 1.1, oferecem suporte a um conjunto maior e mais diversificado de conjuntos de cifras, alguns dos quais são considerados fracos ou obsoletos. Por exemplo, alguns conjuntos de cifras usam RC4 ou DES como algoritmo de criptografia em massa, que são vulneráveis a ataques. Alguns conjuntos de cifras usam MD5 ou SHA1 como algoritmo MAC, que também são inseguros. Alguns conjuntos de cifras não fornecem sigilo de encaminhamento, o que significa que, se a chave privada for comprometida, todas as comunicações anteriores poderão ser descriptografadas.Alguns conjuntos de cifras não fornecem autenticação, o que significa que eles são suscetíveis a ataques man-in-the-middle.
Para comparar e avaliar diferentes conjuntos de cifras com base em sua segurança e desempenho, você pode usar vários critérios, como:
A força do algoritmo de criptografia e o tamanho da chave
A segurança do algoritmo MAC e a função hash
O suporte para encaminhamento de sigilo e autenticação
A compatibilidade com diferentes navegadores e dispositivos
A velocidade e eficiência do processo de criptografia e descriptografia
Melhores práticas do pacote de cifras
Para garantir que sua conexão de rede seja segura e confiável, você precisa seguir algumas práticas recomendadas ao escolher e usar conjuntos de cifras. Esses incluem:
Escolhendo uma autoridade de certificação (CA) confiável para seus certificados
Uma autoridade certificadora (CA) é uma entidade que emite certificados digitais que verificam a identidade e a chave pública de um servidor ou cliente. Um certificado é essencial para estabelecer uma conexão segura usando TLS, pois permite que o servidor e o cliente se autentiquem e criptografem suas mensagens usando uma chave secreta compartilhada. No entanto, nem todas as CAs são confiáveis ou respeitáveis. Algumas CAs podem emitir certificados para partes mal-intencionadas ou fraudulentas, ou podem ter seus próprios certificados comprometidos ou revogados.
Para evitar esses riscos, você deve escolher uma CA confiável para seus certificados. Você pode usar vários fatores para avaliar a confiabilidade de uma CA, como:
A reputação e a história da CA
A segurança e a transparência das operações e políticas da CA
O período de validade e o mecanismo de revogação dos certificados da CA
A compatibilidade e interoperabilidade dos certificados da CA com diferentes navegadores e dispositivos
O custo e o suporte dos serviços da CA
Usando registros de autorização de autoridade de certificação (CAA) para restringir quais CAs podem emitir certificados para seu domínio
Um registro de autorização de autoridade de certificação (CAA) é um registro DNS que permite especificar quais CAs estão autorizadas a emitir certificados para seu domínio. Isso ajuda a evitar que CAs não autorizados ou desonestos emitam certificados para seu domínio sem seu consentimento ou conhecimento. Um registro CAA também ajuda a reduzir o risco de emissão incorreta ou comprometimento do certificado, limitando o número de CAs que podem emitir certificados para seu domínio.
Para usar registros CAA, você precisa adicioná-los ao seu arquivo de zona DNS usando uma sintaxe específica. Um registro CAA consiste em três partes: um sinalizador, uma marca e um valor. O sinalizador indica se o registro é crítico ou não. A tag indica o tipo de diretiva ou propriedade que o registro especifica. O valor indica o parâmetro ou valor que corresponde ao tag. Por exemplo, um registro CAA que permite apenas que a Let's Encrypt emita certificados para seu domínio ficaria assim:
exemplo. com. Problema CAA 0 "letsencrypt.org"
Você também pode usar vários registros CAA para especificar diferentes diretivas ou propriedades para seu domínio. Por exemplo, você pode usar um registro CAA para especificar um endereço de e-mail onde você pode receber notificações sobre solicitações de certificados ou problemas para seu domínio:
Usando firewalls de aplicativos da Web (WAFs) para proteger seu site contra ataques comuns da Web, como injeção de SQL, XSS, CSRF ou DDoS. Um WAF é um dispositivo de software ou hardware que monitora e filtra o tráfego da Web de entrada e saída com base em regras ou políticas predefinidas.
Download do conjunto de cifras
Para baixar e instalar cipher suites em seu servidor ou dispositivo, você precisa usar algumas ferramentas ou recursos que podem ajudá-lo nessa tarefa. Algumas dessas ferramentas ou recursos são:
Criptografia do IIS
IIS Crypto é uma ferramenta gratuita que permite habilitar ou desabilitar protocolos, cifras, hashes e algoritmos de troca de chaves no Windows Server. Ele também permite que você reordene os conjuntos de cifras para atender às suas preferências e requisitos. Ele oferece suporte a todas as versões do IIS, do IIS 5.0 ao IIS 10.0.Ele também oferece suporte a todas as versões do TLS, de TLS 1.0 a TLS 1.3.
Para usar o IIS Crypto, você precisa baixá-lo de seu site oficial e executá-lo como administrador em seu Windows Server. Você pode usar a interface gráfica do usuário (GUI) ou a interface de linha de comando (CLI) para definir suas configurações. Você também pode usar os modelos fornecidos pela ferramenta para aplicar as melhores práticas ou padrões para a configuração do seu servidor. Depois de fazer as alterações, você precisa reinicializar o servidor para que elas entrem em vigor.
OpenSSL
OpenSSL é um software de código aberto popular que fornece funções criptográficas e oferece suporte a vários conjuntos de cifras. Ele pode ser usado para gerar e gerenciar certificados, chaves e outros objetos criptográficos. Ele também pode ser usado para testar ou depurar conexões TLS e conjuntos de cifras.
Para usar o OpenSSL, você precisa baixá-lo de seu site oficial e instalá-lo em seu servidor ou dispositivo. Você pode usar a ferramenta de linha de comando openssl para executar várias operações relacionadas a conjuntos de cifras. Por exemplo, você pode usar o seguinte comando para listar todos os conjuntos de cifras compatíveis com sua versão do OpenSSL:
cifras openssl -v
Você também pode usar o seguinte comando para testar o conjunto de cifras usado por um site:
openssl s_client -connect example.com:443 -cipher AES256-SHA
Você também pode usar o OpenSSL para gerar e gerenciar certificados e chaves para seu servidor ou dispositivo. Por exemplo, você pode usar o seguinte comando para gerar um certificado autoassinado e uma chave privada usando RSA com 2048 bits:
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365
Conclusão
Neste artigo, explicamos o que é um conjunto de cifras, como ele funciona, como comparar diferentes conjuntos de cifras e como baixar e instalar um em seu servidor ou dispositivo. Também fornecemos algumas práticas recomendadas para escolher e usar conjuntos de cifras, bem como para aprimorar a segurança e a experiência do usuário em seus aplicativos da web.
Esperamos que este artigo tenha ajudado você a entender a importância e a complexidade dos conjuntos de cifras e que você tenha aprendido algumas dicas e ferramentas úteis para gerenciá-los. Se você quiser saber mais sobre conjuntos de cifras ou tópicos relacionados, verifique alguns desses links ou referências:
: um artigo da Microsoft que explica os fundamentos dos conjuntos de cifras e como eles são usados no Windows.
: um artigo do Google que explica o processo de handshake SSL/TLS e como ele estabelece uma conexão segura.
: um artigo da Mozilla que lista e descreve os conjuntos de cifras suportados pelo Firefox.
: um site que fornece várias ferramentas e recursos para testar e melhorar a segurança SSL/TLS.
: o documento RFC oficial que especifica a versão mais recente do TLS.
perguntas frequentes
Qual é a diferença entre SSL e TLS?
SSL (Secure Sockets Layer) e TLS (Transport Layer Security) são protocolos que fornecem segurança para comunicações de rede. No entanto, o SSL é uma versão mais antiga do TLS, que foi preterida e substituída pelo TLS. A versão mais recente do SSL é o SSL 3.0, lançado em 1996 e considerado vulnerável a vários ataques. A versão mais recente do TLS é o TLS 1.3, que foi lançado em 2018 e oferece segurança e desempenho aprimorados. Portanto, você sempre deve usar TLS em vez de SSL para suas comunicações de rede.
Qual é a diferença entre TLS 1.2 e TLS 1.3?
TLS 1.2 e TLS 1.3 são versões do protocolo TLS que fornecem segurança para comunicações de rede. No entanto, o TLS 1.3 tem algumas diferenças e melhorias significativas em relação ao TLS 1.2, como:
O TLS 1.3 possui um processo de handshake mais simples e rápido, o que reduz a latência e o consumo de largura de banda da conexão.
O TLS 1.3 possui um conjunto menor e mais seguro de conjuntos de cifras, o que elimina o uso de algoritmos fracos ou obsoletos.
O TLS 1.3 possui um sistema de gerenciamento de chaves mais robusto e flexível, que permite melhor sigilo de encaminhamento e segurança pós-quântica.
O TLS 1.3 tem um design mais extensível e modular, que permite integração e implantação mais fáceis de novos recursos e aprimoramentos.
Quais são as vantagens e desvantagens de usar criptografia de curva elíptica (ECC) em conjuntos de cifras?
Criptografia de curva elíptica (ECC) é um tipo de criptografia de chave pública que usa curvas matemáticas para gerar chaves e executar operações criptográficas. O ECC tem algumas vantagens e desvantagens em relação a outros tipos de criptografia de chave pública, como RSA ou DSA, quando usado em conjuntos de cifras, como:
O ECC tem a vantagem de fornecer o mesmo nível de segurança com tamanhos de chave menores, o que reduz o custo computacional e a sobrecarga de rede do processo de criptografia e descriptografia.
O ECC tem a vantagem de ser mais resistente a certos tipos de ataques, como fatoração ou ataques de logaritmos discretos, que podem comprometer a segurança de outros tipos de criptografia de chave pública.
O ECC tem a desvantagem de ser menos amplamente suportado ou compatível com navegadores ou dispositivos mais antigos, o que pode limitar a disponibilidade ou acessibilidade do seu site ou serviço.
O ECC tem a desvantagem de ser mais complexo e difícil de implementar ou verificar, o que pode introduzir erros ou vulnerabilidades em seu código ou configuração.
Como posso testar ou verificar os conjuntos de cifras usados pelo meu site ou servidor?
Existem várias ferramentas ou serviços que podem ajudá-lo a testar ou verificar os conjuntos de cifras usados pelo seu site ou servidor, como:
: Um serviço online gratuito que realiza uma análise profunda da configuração SSL/TLS do seu site e fornece um relatório detalhado sobre sua segurança e desempenho.
: uma API RESTful gratuita que permite acessar a funcionalidade SSL Server Test programaticamente e integrá-la com seus próprios aplicativos ou scripts.
: um software de código aberto popular que fornece funções criptográficas e oferece suporte a vários conjuntos de cifras. Você pode usá-lo para testar ou depurar conexões TLS e conjuntos de cifras usando a ferramenta de linha de comando openssl.
: uma poderosa ferramenta de código aberto que fornece recursos de exploração de rede e auditoria de segurança. Você pode usá-lo para escanear seu servidor ou dispositivo em busca de protocolos e conjuntos de cifras compatíveis usando o script ssl-enum-ciphers.
Como posso me manter atualizado sobre novas vulnerabilidades ou desenvolvimentos relacionados a conjuntos de cifras?
Existem várias fontes ou canais que podem ajudá-lo a se manter atualizado sobre novas vulnerabilidades ou desenvolvimentos relacionados a conjuntos de cifras, como:
: um site que fornece informações abrangentes sobre vulnerabilidades e exposições comuns (CVEs) relacionadas a vários produtos ou tecnologias, incluindo conjuntos de cifras.
: um site que fornece um relatório mensal sobre o estado do suporte SSL/TLS em milhões de sites, incluindo estatísticas sobre protocolo e uso do conjunto de cifras.
: um site que fornece notícias e análises sobre tópicos de criptografia e segurança, incluindo conjuntos de cifras.
: um blog que fornece insights e opiniões sobre tópicos de criptografia e segurança, incluindo conjuntos de cifras.
0517a86e26
Comments