Organização de ataques de temporização eficazes usando HTTP / 2 e WPA3

Nova técnica de hacking supera o problema de "jitter de rede" que pode afetar o sucesso de ataques de canal lateral







Uma nova técnica desenvolvida por pesquisadores da Universidade de Leuven (Bélgica) e da Universidade de Nova York em Abu Dhabi mostrou que os invasores podem usar os recursos dos protocolos de rede para organizar vazamentos de informações confidenciais.



Essa técnica, denominada Timeless Timing Attacks , demonstrada na conferência Usenix deste ano, aproveita o processamento do protocolo de rede de solicitações simultâneas para resolver um dos problemas de ataques de canal lateral de temporização remota.



Problemas de ataques remotos por tempo



Em ataques de temporização, os invasores medem as diferenças no tempo de execução de diferentes comandos, tentando contornar a proteção fornecida pela criptografia e obter informações sobre informações confidenciais, como chaves de criptografia, correspondência privada e comportamento de navegação do usuário.



No entanto, para implementar ataques temporizados com sucesso, um invasor precisa saber exatamente quanto tempo leva para o aplicativo atacado processar uma solicitação.



Isso se torna um problema ao atacar sistemas remotos, como servidores web, porque a latência da rede (jitter) leva a variações nos tempos de resposta, o que complica o cálculo do tempo de processamento.



Em ataques de temporização remota, os invasores geralmente enviam cada comando várias vezes e realizam análises estatísticas dos tempos de resposta para reduzir o impacto do jitter da rede. Mas esse método só é útil até certo ponto.



“Quanto menor a diferença de tempo, mais solicitações são necessárias e, em certo estágio, o cálculo se torna impossível”, diz Tom Van Götham, pesquisador de segurança de dados e principal autor de um artigo sobre o novo tipo de ataque.



Time Attack atemporal



A técnica desenvolvida por Goethem e seus colegas executa ataques de temporização remota de forma que eles neguem os efeitos do jitter da rede.



O princípio por trás de um ataque atemporal a tempo é simples: você precisa garantir que as solicitações cheguem ao servidor exatamente ao mesmo tempo e não sejam transmitidas sequencialmente.



A simultaneidade garante que todas as solicitações estejam nas mesmas condições de rede e que seu processamento não seja afetado pelo caminho entre o invasor e o servidor. A ordem em que as respostas são recebidas fornecerá ao invasor todas as informações necessárias para comparar os tempos de execução.



“A principal vantagem dos ataques atemporais no momento é que eles são muito mais precisos, portanto, menos solicitações são necessárias. Isso permite que o invasor reconheça as diferenças no tempo de execução até 100 ns ”, diz Van Götham.



A diferença de tempo mínima observada pelos pesquisadores em um ataque de tempo tradicional na Internet foi de 10 μs, ou seja, 100 vezes mais do que em um ataque de solicitação simultâneo.



Como a simultaneidade é garantida



“Fornecemos simultaneidade colocando ambas as solicitações no mesmo pacote de rede”, explica Van Götham. "Na prática, a implementação depende principalmente do protocolo de rede."



Os pesquisadores usam os recursos de diferentes protocolos de rede para enviar solicitações simultâneas.



Por exemplo, o HTTP / 2, que está se tornando rapidamente o padrão de fato para servidores da web, oferece suporte à "multiplexação de solicitações", um recurso que permite a um cliente enviar várias solicitações em paralelo em uma única conexão TCP.



"No caso do HTTP / 2, só precisamos colocar as duas solicitações no mesmo pacote (por exemplo, gravando ambas no soquete ao mesmo tempo)." No entanto, essa técnica tem suas próprias sutilezas. Por exemplo, na maioria das redes de entrega de conteúdo, como Cloudflare, que fornece conteúdo para a maior parte da web, a conexão entre os servidores de borda e o site é sobre HTTP / 1.1, que não oferece suporte a solicitações de multiplexação.



Embora isso reduza a eficácia de um ataque atemporal, eles ainda permanecem mais precisos do que os ataques clássicos de temporização remota porque eliminam a instabilidade entre o invasor e o servidor de borda CDN.



No caso de protocolos que não oferecem suporte à multiplexação de solicitações, os invasores podem usar um protocolo de rede intermediário que encapsula as solicitações.



Os pesquisadores mostraram como um ataque de tempo atemporal funciona na rede Tor. Nesse caso, o invasor encapsula várias solicitações em uma célula Tor, um pacote criptografado transmitido entre nós Tor em pacotes TCP únicos.



“Como a cadeia Tor para serviços onion vai até o servidor, podemos garantir que as solicitações cheguem ao mesmo tempo”, diz Van Götham.



Ataques atemporais na prática



Em seu artigo, os pesquisadores examinaram ataques atemporais em três situações diferentes.



Em ataques de temporização direta, o invasor se conecta diretamente ao servidor e tenta vazar informações confidenciais associadas ao aplicativo.



"Uma vez que a maioria dos aplicativos da web não leva em consideração o fato de que os ataques temporizados podem ser muito práticos e precisos, acreditamos que muitos sites são vulneráveis ​​a esses ataques", disse Van Gothen.



Em ataques de sincronização entre sites, o invasor faz solicitações a outros sites a partir do navegador da vítima e faz suposições sobre o conteúdo de informações confidenciais, observando a sequência de respostas.



Os invasores usaram esse esquema para explorar uma vulnerabilidade no programa de recompensa de bug HackerOne e extrair informações como palavras-chave usadas em relatórios confidenciais de vulnerabilidades não resolvidas.



“Procurei casos em que o contra-ataque foi registrado anteriormente, mas não foi considerado eficaz. O bug do HackerOne já foi relatado pelo menos três vezes (IDs dos bugs: 350432 , 348168 e 4701 ), mas não foi corrigido porque se acreditava que o ataque não poderia ser usado. Então criei um projeto de pesquisa interna simples com ataques temporais atemporais.



Na época, ainda não estava otimizado porque continuamos a descobrir os detalhes do ataque, mas mesmo assim acabou sendo bastante preciso (na minha conexão WiFi doméstica, consegui obter resultados muito precisos).



Os pesquisadores também tentaram ataques atemporais no protocolo WPA3 WiFi .



Um dos coautores do artigo, Mati Vanhof, já havia descoberto um possível vazamento de tempo no protocolo de handshake WPA3 . Mas o tempo era muito curto para ser usado em dispositivos de última geração ou não podia ser usado em servidores.



“Com um novo tipo de ataque de temporização atemporal, demonstramos que é realmente possível usar handshake de autenticação (EAP-pwd) contra servidores, mesmo se eles estiverem executando um hardware poderoso”, explica Van Goethem.



Momento perfeito



Em seu artigo, os pesquisadores forneceram recomendações para proteger os servidores de ataques atemporais, como limitar a execução a um tempo constante e adicionar latência aleatória. Mais pesquisas são necessárias para implementar defesas práticas contra ataques de temporização direta que teriam pouco impacto no desempenho da rede.



“Acreditamos que esta área de pesquisa está em um estágio muito inicial de desenvolvimento e requer um estudo muito mais aprofundado”, disse Van Götham.



Pesquisas futuras podem explorar outras técnicas que os invasores podem usar para executar ataques simultâneos ao longo do tempo, outros protocolos e camadas de rede que podem ser atacadas e avaliar a vulnerabilidade de sites populares que permitem que essas pesquisas sejam realizadas sob condições de programa. procure por bugs.



O nome “atemporal” foi escolhido “porque não usamos nenhuma informação de tempo (absoluta) nesses ataques”, explica Van Goethem.



"Além disso, eles podem ser considerados 'atemporais' porque os ataques de temporização (remotos) já existem há muito tempo e, a julgar por nossa pesquisa, a situação só vai piorar."





O relatório completo da Usenix está aqui .






Publicidade



VDS poderoso com proteção DDoS e o hardware mais recente. Tudo isso é sobre nossos servidores épicos . A configuração máxima é de 128 núcleos de CPU, 512 GB de RAM, 4000 GB NVMe.






All Articles