ESNI Indicação de nome de servidor criptografado

Versão criptografada do protocolo SNI. O SNI é usado para gerenciar múltiplos certificados TLS de sites em um único servidor.

Categoria de Tecnologia

Postado em 11 outubro 2023

Atualizado em 11 outubro 2023

Palavras-chave: sni,esni,indicacao,nome,servidor,criptografia,seguranca,TLS,protocolo,certificado,ssl

Visualizações: 1013



No princípio, a rede mundial de computadores (internet) não foi projetada para ser segura. Na verdade, ela foi projetada para ser apenas eficiente. De certo modo, a internet já se tornou o meio mais eficiente de comunicação. Porém, possui os seus desafios em relação a segurança e privacidade.

Posteriormente, protocolos como HTTPS foram criados para aumentar a privacidade e segurança da comunicação entre computadores. Ele é responsável por criptografar os dados até eles chegarem ao seu destino, onde são descriptografados e visualizados. O protocolo HTTPS é a mistura dos protocolos HTTP e TLS. O TLS realiza a criptografia da informação que esta sendo trocada entre os computadores, como nome de usuário e senha. Porém, essa criptografia só acontece após a conexão entre dois computadores ser estabelecida. Isso quer dizer que antes da conexão, algumas informações permanecem em texto puro. A indicação de nome do servidor criptografada (ESNI) é um recurso extra para tornar o protocolo TLS ainda mais seguro, criptografando informações que antes não eram encriptadas.

O que é a indicação de nome do servidor criptografada (ESNI)?

A indicação de nome do servidor criptografada (ESNI) se refere a criptografia do endereço de acesso (URL) na comunicação entre dois computadores conectados com a internet. A criptografia do SNI é realizada logo após a etapa de handshake do protocolo TCP (aperto de mão), ou seja, antes dos dois computadores começarem a trocar informações úteis (payload).

esni handshake aperto de maos tcp tls como

O cliente já envia uma solicitação com o URL especificado e criptografado na etapa “Cliente Hello”. O cliente já deve ter a chave antes mesmo de solicitar o URL ao servidor. A chave de criptografia de SNI é obtida no servidor DNS. A criptografia é feita com uma chave pública obtida no servidor DNS. Ao chegar no servidor de destino, onde a chave privada se encontra, o ESNI é descriptografado e as informações de SNI podem ser visualizadas.

esni chave simétrica privada pública

O ESNI é uma extensão do protocolo TLS. Por essa razão, o ESNI é processado com os protocolos vinculados ao TLS. O TLS é responsável por criptografar os dados usando chaves de criptografia, fazendo com que apenas os dois pontos (nodes) tenham acesso ao conteúdo compartilhado.

As informações criptografadas serão o DNS e o endereço IP vinculados ao endereço solicitado que será retornado para o usuário que iniciou a conexão. Com isso, caso haja algum usuário malicioso monitorando a conexão, ele não irá saber qual site está sendo acessado.

O que é a indicação de nome do servidor (SNI)?

Hoje é comum múltiplos sites vinculados em um mesmo endereço IP. Assim, o cliente pode especificar qual site (URL) ele quer acessar dentro do servidor. O protocolo TLS, cujo protocolo é responsável pelo ESNI, é usado em solicitações de HTTPS. Isso quer dizer que cada site dentro do servidor precisa ter seu próprio certificado TLS. Originalmente, o objetivo do SNI é gerenciar o certificado de cada site, permitindo a hospedagem virtual segura de múltiplos sites em um único servidor com um único endereço IP, consequentemente economizando os endereços IPs que já são escassos.

Entretanto, mesmo usando protocolos criptografados como o HTTPS, o SNI permanece legível pelo fato de que ele é enviado antes do protocolo TLS ser efetuado. Isso pode trazer algumas vulnerabilidades como man-in-the-middle e envenenamento DNS. Por isso, é recomendávelo uso do ESNI para aumentar a segurança no tráfego dos dados.

A criptografia do SNI é configurável na maioria dos servidores e suportado por vários navegadores. Ao criptografar o SNI, ele passa a ser chamado de ESNI.

O ESNI é o suficiente para a segurança?

O ESNI criptografa as informações de URL apenas após a solicitação do cliente obter a chave pública no servidor DNS. Até a solicitação chegar ao servidor DNS, as informações de SNI continuam em texto legível. Por isso, o ESNI não é o suficiente para a segurança e privacidade dos dados.

Felizmente, essa vulnerabilidade do ESNI pode ser coberta com protocolos adicionais, como DNS sobre TLS (DoT) e DNS sobre HTTPS (DoH). Serviços de servidores DNS também oferecem mais recursos para aumentar a segurança e privacidade dos dados.

Conclusão

O ESNI é a versão criptografada do protocolo SNI. O SNI gerencia múltiplos certificados TLS de sites que compartilham um mesmo servidor e endereço IP. O ESNI usa a chave pública do DNS para criptografar informações como URL solicitado pelo cliente. Quando a solicitação de acesso chega ao servidor destino, a chave privada é obtida e o URL solicitado pode ser visualizado.

Apenas o ESNI não oferece segurança suficiente. Por isso, protocolos adicionais de segurança como DoT e DoH são recomendáveis.

Projetos práticos

Criando um jogo de pacman usando javascript e pixi.js (parte 1)

Desenvolvimento dos conceitos mais básicos do clássico pacman, como: mapa, animação, deslocamento e detector de colisões.

Integrando o PHP com Elasticsearch no desenvolvimento de um sistema de busca

Projeto de criação de um sistema de busca usando o framework Symfony e Elasticsearch. A integração com Kibana também é feito de modo remoto com um raspberrypi.

Usando dados fornecidos pelo TSE para simular o gráfico das eleições presidenciais de 2022

Simulação dos gráficos do segundo turno das eleições presidenciais, utilizando python e ferramentas de análise de dados, pandas e jupyter.

Implementando um algoritmo de pathfinding

Implementando um programa que encontra a menor distância entre dois pontos dentro de um labirinto usando o algoritmo A* (a-estrela).

Caixa eletrônico usando arquitetura limpa

Usando JavaFX e arquitetura limpa para criar um aplicativo de caixa eletrônico extremamente simples.

Veja também

Qual é o papel das grandes empresas além de fornecer seu serviços?

Poluição do ar, solo e água ainda é um grande problema para ser resolvido ainda em vários países. Há estudos que comprovam que os países mais poluentes podem causar câncer...

O usuário malicioso joga a isca e espera a vítima pacientemente

Phishing tem esse nome pois a vítima se torna só mais um peixe na rede. Ter conhecimento de phishing é o melhor jeito de evitar ser um desses peixes

Protocolos de e-mail

Ao todo, temos três protocolos que usados para o envio e o recebimento de e-mails. Esses protocolos são SMTP, POP3 e IMAP.

IaaS (Infrastructure as a Service)

Computador virtual. Fornece infraestrutura de computação básica distribuída em vários locais, oferecendo mais flexibilidade e escalabilidade.

WiFi Wireless Fidelity

Realiza a transmissão de dados entre o roteador e os dispositivos da LAN usando ondas de rádio. As bandas de frequência utilizadas podem ser 2,4GHz e 5Ghz.

Algoritmo de chave simétrica

O algoritmo de criptografia simétrica utiliza a mesma chave para encriptar e desincriptar dados enviados através da internet.