Chaves de registro maliciosas: injeção reflexiva

Chaves de registro maliciosas: injeção reflexiva

A injeção reflexiva é uma metodologia empregada pelos atacantes para burlar qualquer tipo de solução de segurança que possa ser encontrada na máquina da vítima.

A injeção reflexiva é uma metodologia empregada pelos atacantes para burlar qualquer tipo de solução de segurança que possa ser encontrada na máquina da vítima.

Ao longo dos anos temos visto como os cibercriminosos têm desenvolvido e utilizado novas técnicas sofisticadas para tirar algum tipo de vantagem sobre os usuários, mas há algo que não mudou e continua sendo um desafio constante: conseguir persistência e evitar ser detectado, tanto pelas soluções de segurança como pelo olho humano.

Nos últimos meses começamos a receber vários relatórios que envolvem chaves de registro suspeitas, criadas nas máquinas dos usuários. Por essa razão, decidimos nos aprofundar mais sobre o tema e coletamos alguns dados interessantes que detalharemos ao decorrer desta publicação.

Países como Peru, México, Equador e Guatemala, junto com outros da América Latina, estão sendo vítimas de um ataque em comum. Como pode ser observado no seguinte mapa, é possível notar a porcentagem de detecção em todo o mundo que temos analisado por meio de nossos sistemas. Da mesma forma, fica em evidência que os usuários latino-americanos são um importante alvo dos cibercriminosos na hora de realizar ataques.

Análises

O ataque começa com a propagação massiva de emails com arquivos JavaScript maliciosos anexos. Depois de serem executados, escrevem no registro do Windows com um nome aleatório, atribuindo código criptografado com base 64 como valor, como pode ser visto na seguinte imagem:

Depois de extrair e decodificar o conteúdo do registro obtivemos o código PowerShell. Essa linguagem de scripting apenas pode ser executada e interpretada nas plataformas Windows, já que foi pensanda para a administração do sistema.

Na imagem que se encontra a seguir temos uma parte desse código, que terá como objetivo carregar na memória um novo script e injetar um executável:

Na seguinte captura, do lado esquerdo, temos o outro script mencionado previamente, que será usado em tempo real de execução. Isso quer dizer que em nenhum momento será criado um arquivo em disco.

A função Invoke-ReflectivePEInjection realiza uma requisição junto aos argumentos e parâmetros correspondentes para injetar os bytes de um executável no processo de PowerShell.

Nesse caso particular, os atacantes fazem uso de uma metodologia chamada injeção reflexiva, que consiste em realizar uma injeção de uma DLL ou um EXE em algum processo, de forma que, em seguida, não será possível encontrá-los com uma ferramenta de monitoramento. Então, a atividade maliciosa será invisível para o usuário, que apenas poderá ver processos aparentemente legítimos executando em seu sistema:

Para finalizar, destacamos o código malicioso que os cibercriminosos tentam injetar na memória (na imagem abaixo):

Esse arquivo é uma variante do Win32/TrojanDownloader.Wauchos, que tem como objetivo baixar outro arquivo malicioso, como por exemplo um ransomware. Se verificarmos a porcentagem de detecções do Wauchos nos países que mencionamos no início do texto, veremos que são bastante semelhantes:

Em resumo, os cibercriminosos criam campanhas de spam com JavaScript maliciosos, que criam chaves de registro contendo scripts no PowerShell. Por sua vez, esses carregam na memória um novo script na mesma linguagem e injetam um trojan em um processo que esteja ocorrendo no sistema, para baixar outro código malicioso.

Essa é uma metodologia empregada pelos atacantes para burlar soluções de segurança que possam ser encontradas na máquina da vítima.

Por essas razões, é importante estar informado e consciente sobre os riscos que existem ao receber um simples email ou navegar pela Internet.

Discussão