Kaspersky descobriu uma vulnerabilidade que afeta o Google Chrome

Recentemente, Kaspersky descobriu um novo exploit que se aproveitou de uma falha desconhecida no Chrome, que o Google confirmou que existe uma vulnerabilidade de dia zero em seu navegador e que já está catalogado como CVE-2019-13720.

Esta vulnerabilidade pode ser explorado usando um ataque usando uma injeção semelhante a um ataque de "Buraco de Rega". Esse tipo de ataque se refere a um predador que, ao invés de procurar a presa, prefere esperar em um local de onde tenha certeza que ela virá (neste caso, em um ponto de água para beber).

Já que o ataque foi descoberto em um portal de informações em coreano, em que o código JavaScript malicioso foi inserido na página principal, que por sua vez carrega um script de criação de perfil de um site remoto.

Uma pequena inserção de código JavaScript foi alojada no índice da página da web que carregou um script remoto de code.jquery.cdn.behindcrown

O script carrega outro script. Este script verifica se o sistema da vítima pode ser infectado, fazendo uma comparação com o agente do usuário do navegador, que deve estar em execução em uma versão de 64 bits do Windows e não em um processo WOW64.

também tente obter o nome e a versão do navegador. A vulnerabilidade tenta explorar o bug no navegador Google Chrome e o script verifica se a versão é maior ou igual a 65 (a versão atual do Chrome é 78).

A versão do Chrome verifica o script de criação de perfil. Se a versão do navegador for validada, o script começa a executar uma série de solicitações AJAX no servidor controlado do invasor, onde o nome de um caminho aponta para o argumento passado para o script.

O primeiro pedido é necessário para obter informações importantes para uso posterior. Essas informações incluem várias strings codificadas em hexadecimal que informam ao script quantos pedaços do código de exploração real baixar do servidor, bem como um URL para o arquivo de imagem que incorpora uma chave para o upload final e uma chave RC4 para descriptografar pedaços de código do exploit.

A maior parte do código usa várias classes relacionadas a um determinado componente vulnerável do navegador. Como esse bug ainda não havia sido corrigido no momento da escrita, a Kaspersky decidiu não incluir detalhes sobre o componente vulnerável específico.

Existem algumas tabelas grandes com números que representam um bloco de código de shell e uma imagem PE incorporada.

A façanha usou um erro de condição de corrida entre dois threads devido à falta de tempo adequado entre eles. Isso dá ao invasor uma condição muito perigosa de uso após o lançamento (UaF) porque pode levar a cenários de execução de código, que é exatamente o que acontece neste caso.

O exploit primeiro tenta fazer UaF perder informações importantes Endereço de 64 bits (como um ponteiro). Isso resulta em várias coisas:

  1.  se um endereço for divulgado com sucesso, significa que a exploração está funcionando corretamente
  2.  um endereço revelado é usado para descobrir onde a pilha / pilha está localizada e que substitui a técnica de Randomização de Formato de Espaço de Endereço (ASLR)
  3. alguns outros indicadores úteis para exploração posterior podem ser localizados olhando próximo a esta direção.

Depois disso, você tenta criar um grande grupo de objetos usando uma função recursiva. Isso é feito para criar um layout de heap determinístico, que é importante para uma exploração bem-sucedida.

Ao mesmo tempo, você está tentando usar uma técnica de heap spray que visa reutilizar o mesmo ponteiro que foi lançado anteriormente na parte UaF.

Esse truque pode ser usado para confundir e dar ao invasor a capacidade de operar em dois objetos diferentes (do ponto de vista do JavaScript), mesmo que eles estejam de fato na mesma região da memória.

O Google lançou uma atualização do Chrome que corrige a falha no Windows, macOS e Linux, e os usuários são incentivados a atualizar para o Chrome versão 78.0.3904.87.


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.