Uma falha de troca de chaves sem autenticação de entidade no módulo ssl permite que um peer que responda a uma conexão de cliente TLS 1.3 se passe pelo servidor pretendido. Isso ocorre quando uma extensão `pre shared key` está presente no `ServerHello` que o cliente não ofereceu, fazendo com que o cliente complete o handshake sem validar o certificado do servidor. Especificamente, `tls client connection 1 3:handle server hello/2` passa a extensão para `tls gen connection 1 3:handle resumption/2`, que define `resumption = true` sem verificar se o cliente ofereceu um PSK. Subsequentemente, `tls handshake 1 3:get pre shared key/4` retorna para um valor composto apenas por zeros, e a função `maybe resumption/1` é direcionada diretamente para `wait finished`. Isso ignora verificações de segurança críticas, incluindo a validação do caminho do certificado, `verify fun`, verificação de hostname, `partial chain`, verificação de CRL e OCSP stapling. Um invasor pode interceptar o tráfego, ler dados sensíveis, como credenciais e tokens, e forjar respostas. Isso afeta qualquer consumidor de `ssl:connect` que utilize TLS 1.3, incluindo `httpc` via HTTPS e diversas bibliotecas de clientes de banco de dados ou mensageria.