Uma equipe internacional de pesquisadores de segurança cibernética desenvolveu um padrão de ataque que pode hackear o RADIUS (Remote Authentication Dial-In User Service), um protocolo de autenticação usado em aplicativos de rede em todo o mundo. Seu ponto fraco acabou sendo a própria implementação da função hash MD5.

Fonte da imagem: Pete Linforth / pixabay.com

O protocolo RADIUS foi desenvolvido em 1991 pela Livingston Enterprises e aprovado como padrão oficial pela Internet Engineering Task Force (IETF) em 1997. Desde 1994, o RADIUS utiliza sua própria implementação da função hash MD5. Essa função, criada em 1991 e aprovada pela IETF em 1992, tornou-se popular na criação de resumos de mensagens – mecanismos que aceitam um conjunto arbitrário de dados (número, texto ou arquivo) e geram um hash – uma sequência de 16 bytes.

Inicialmente, presumia-se que um invasor em potencial não seria capaz de encontrar dois conjuntos de dados de origem que produzissem um hash como saída. Mas a segurança do MD5 provou ser insuficiente e a função é mais suscetível a colisões do que se pensava anteriormente. Em 2004, isto foi confirmado oficialmente (PDF) pelos cientistas da Universidade de Shandong (China) Xiaoyun Wang e Hongbo Yu; e três anos depois, a sua teoria foi desenvolvida (PDF) no seu trabalho por investigadores da Holanda e da Suíça.

Para demonstrar as consequências potencialmente devastadoras do ataque proposto, os especialistas europeus utilizaram o seu esquema para criar dois certificados criptográficos X.509 com a mesma assinatura MD5, mas diferentes chaves públicas e o conteúdo dos campos de Nome Distinto. Como resultado de tal colisão, uma autoridade de certificação pode, pretendendo assinar um certificado para um domínio, assiná-lo inadvertidamente para outro domínio malicioso. Em 2008, esses mesmos cientistas, como parte de uma demonstração, criaram uma autoridade de certificação fraudulenta – ela gerou certificados TLS nos quais todos os principais navegadores confiavam. Um componente-chave do ataque foi o aplicativo Hashclash desenvolvido pelos pesquisadores, que agora está disponível publicamente.

Fonte da imagem: Cloudflare

O novo padrão de ataque Blast-RADIUS (PDF) afeta todos os sistemas que utilizam este protocolo. É baseado em um padrão de ataque man-in-the-middle (MITM), permitindo que um invasor obtenha acesso administrativo a dispositivos que usam autenticação RADIUS no servidor. Desenvolvido em 2008, o esquema de ataque requer 2.800 núcleos-dias de capacidade computacional, o equivalente à execução de um núcleo de processador por 2.800 dias; e para Blast-RADIUS apenas 39 horas de núcleo são suficientes. Ao distribuir a carga em um cluster de 2.000 núcleos de processador com idades entre 7 e 10 anos e quatro placas de vídeo de baixo desempenho, os pesquisadores reduziram o tempo real de ataque para cinco minutos. Depois de analisar o preço do serviço Amazon EC2, eles descobriram que os recursos alugados por US$ 50 por hora eram suficientes para exceder essa capacidade, e esses recursos poderiam ser ainda mais escalonados – levando em consideração o fato de que em sistemas no RADIUS, o login expira em apenas 30-60 segundos, a ameaça parece bastante realista.

A única maneira de resolver a vulnerabilidade RADIUS é enviar dados através de protocolos seguros TLS ou DTLS, e um grupo de trabalho da IETF está atualmente trabalhando na atualização da especificação para incluir este método de segurança. Mas uma grande atualização desse tipo levará muito tempo – meses ou até anos. Algumas implementações RADIUS, incluindo as da Microsoft, ainda não suportam TLS. Portanto, como solução temporária para ambientes onde é necessário transmitir dados RADIUS através do protocolo UDP aberto, propõe-se implementar atributos Message-Authenticator baseados no mecanismo de autenticação de pacotes HMAC-MD5 – atualizações correspondentes já foram propostas pelo FreeRADIUS, Radiador, Cisco, Microsoft e Nokia.

«Esta medida quebra a compatibilidade com implementações mais antigas que podem não incluir Message-Authenticators em solicitações ou respostas. No entanto, ao contrário de outras opções, esta não é uma mudança fundamental de protocolo e pode ser implementada como uma simples atualização para clientes e servidores”, alertam os pesquisadores. Além disso, se o remetente incluir o Message-Authenticator ao enviar dados, e a parte receptora não exigir esses atributos, a vulnerabilidade permanece – os cientistas indicaram dois cenários de ataque adicionais para este esquema.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *