Eles lançaram um ataque que permite a detecção remota de fragmentos de memória

Um grupo de pesquisadores da Graz University of Technology (Áustria), anteriormente conhecido por desenvolver ataques MDS, NetSpectre, Throwhammer e ZombieLoad, tornado conhecido Alguns dias atrás um novo método de ataque (CVE-2021-3714) que, por meio de canais laterais para o mecanismo de desduplicação da página de memória, pode determinar a presença de certos dados na memória, organizar um vazamento de bytes de conteúdo de memória ou determinar o layout da memória para contornar a proteção com base na randomização de endereço (ASLR).

O novo método difere de variantes de ataques ao mecanismo de desduplicação demonstrado anteriormente ao realizar um ataque de um host externo usando como critério a alteração do tempo de resposta às solicitações enviadas pelo invasor através dos protocolos HTTP / 1 e HTTP / 2. O ataque foi demonstrado para servidores Linux e Windows.

Os ataques de desduplicação de memória exploram a diferença no tempo de processamento de uma operação de gravação como um canal para vazamento de informações em situações em que as alterações de dados levam à clonagem de uma página de memória desduplicada usando o mecanismo de cópia na gravação (COW).

No processo, o kernel determina as mesmas páginas de memória de diferentes processos e os combina, mapeando páginas de memória idênticas em uma área da memória física para armazenar apenas uma cópia. Quando um dos processos tenta alterar os dados associados às páginas desduplicadas, uma exceção é lançada (falha de página) e, usando o mecanismo de cópia na gravação, uma cópia separada da página de memória é criada automaticamente, a qual é alocada para o processo que está gastando mais tempo copiando, o que pode ser um sinal de que os dados mudam sobrepõe-se a outro processo.

Os pesquisadores mostraram que os atrasos resultantes do mecanismo COW podem ser capturados não apenas localmente, mas também analisando a mudança no tempo de entrega das respostas pela rede.

Com essas informações, os pesquisadores propuseram vários métodos para determinar o conteúdo da memória de um host remoto analisando o tempo de execução das solicitações por meio dos protocolos HTTP / 1 e HTTP / 2. Para salvar os modelos selecionados, são utilizadas aplicações web típicas que armazenam na memória as informações recebidas nas solicitações.

O princípio geral do ataque se resume a preencher uma página de memória no servidor com dados que potencialmente duplicam o conteúdo de uma página de memória já no servidor. Mais tarde, o invasor espera o tempo que leva para o kernel desduplicar e mesclar a página de memória, em seguida, modifique os dados duplicados controlados e estima o tempo de resposta para determinar se o sucesso foi bem-sucedido.

No decorrer dos experimentos realizados, a taxa máxima de vazamento de informações foi de 34,41 bytes por hora para um ataque à WAN e 302,16 bytes por hora para um ataque a uma rede local, que é mais rápido do que outros métodos de extração de dados de canal lateral. (Por exemplo, no ataque NetSpectre, a taxa de transferência de dados é de 7,5 bytes por hora).

Três variantes de trabalho de ataque são propostas:

  1. A primeira opção permite que você defina dados na memória do servidor web no qual o Memcached é usado. O ataque se resume a carregar certos conjuntos de dados no armazenamento Memcached, excluir um bloco desduplicado, reescrever o mesmo elemento e criar uma condição para que uma cópia COW ocorra quando o conteúdo do bloco for alterado.
  2. A segunda opção permitida conhecer o conteúdo dos registros no DBMS MariaDB, ao usar o armazenamento InnoDB, recriando o conteúdo byte por byte. O ataque é realizado enviando solicitações especialmente modificadas, gerando incompatibilidades de um byte nas páginas de memória e analisando o tempo de resposta para determinar se a suposição sobre o conteúdo do byte estava correta. A taxa de vazamento é baixa e atinge 1,5 bytes por hora ao atacar de uma rede local.
  3. A terceira opção permitida ignorar completamente o mecanismo de proteção KASLR em 4 minutos e obter informações sobre o deslocamento na memória da imagem do kernel da máquina virtual, numa situação em que o endereço do deslocamento está em uma página de memória, outros dados nos quais ele não muda.

Por fim, se você tiver interesse em saber mais sobre o assunto, pode consultar o detalhes no link a seguir.


Seja o primeiro a comentar

Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.