Criando uma simples política de grupo que evita execuções de payloads maliciosos na máquina de usuários.
SocGholish e Gootloader. Duas famílias de malware que, além de aparecerem nas top10 ameaças emergentes de 2024, também são conhecidas pelos mesmos TTPs: Utilização de scripts maliciosos em JavaScript sendo executados ao abrir um arquivo.
Execução do usuário
Na maioria das vezes, em segurança, falamos muito sobre as ameaças detectadas, que causaram impacto e causaram estragos em um ambiente de cliente. O que não falamos com a devida frequência são as tentativas falhas, que foram evitadas e passaram despercebidas com a implementação de um simples controle de segurança.
No caso do SocGholish e Gootloader, a simples alteração em uma política de grupo pode ser o suficiente para evitar diversos ataques que vêm sendo explorados amplamente por famílias de malware similares.
SocGholish, para aqueles que não são familiares, induz o usuário a realizar downloads em sites maliciosos, então executáveis disfarçados de atualizações do sistema inicializam pacotes de malware na máquina de usuários, que ao iniciados, executam scripts em JavaScript que comunicam com o servidor de comando e controle (C2) do atacante.
Esses TTPs são particularmente traiçoeiros, pois exploram a confiança do usuário que está tentando realizar ações legítimas e instalar softwares que julgam confiáveis. Para casos como esse, treinar colaboradores e usuários a não realizar determinadas ações que podem levar à essa cadeia de execução pode ser uma tarefa difícil para as empresas.
Quais outros controles impedem que o usuário seja alvo dessa exploração?
Para responder essa questão, devemos considerar como a interação do usuário leva à execução do script malicioso. SocGholish, Gootloader e outras famílias de malware similares, necessitam não somente que o usuário baixe o payload, mas também que o execute. Muitas vezes o usuário clicará no arquivo JS e o mesmo executará automaticamente, sem que qualquer interface sequer se abra.
Mas como o sistema operacional sabe como executar um JS assim que o usuário clica?
Se você já tentou executar um arquivo do tipo na sua máquina, provavelmente já observou uma janela similar a essa:
Se o arquivo possuir uma extensão comum, o Windows utilizará uma lista de softwares padrão que corresponde para cada tipo de extensão de arquivo. Para arquivos .js (e algumas outras linguagens de scripting), esse serviço padrão é o Windows Script Host (wscript.exe).
Uma vez que o usuário clica no JS malicioso, imediatamente é iniciado um processo do wscript que executa automaticamente o conteúdo do arquivo.
Medida preventiva
A lista que o Windows utilizará para correlacionar uma extensão a um programa que será aberto, é armazenada no registro do windows, e pode ser alterada via política de grupo (GPO). Para prevenir a execução instantânea de um script malicioso no windows, uma simples solução é alterar o programa default no Windows Script Host para algum software que não irá abrir e/ou executar o código instantaneamente. Como por exemplo o Notepad, ou outra ferramenta de edição de texto.
Então o que acontece se uma organização aplicar essa medida via GPO e somente abrir scripts executáveis no bloco de notas em primeira instância? A ameaça vai desaparecer? Não completamente, mas será detectada e sua execução direta interrompida.
Para explorar um exemplo dessa ameaça, a telemetria abaixo foi retirada de uma atividade de Threat Hunting onde foi encontrada uma atividade real do SocGholish
Os aqruivos “Update – 35129.zip” e “Update_123.0.6312.111.js”, ao serem extraídos e abertos, executam payloads maliciosos em JavaScript que realizam comunicações com servidores de comando e controle.
Se caso a máquina do usuário que executou o arquivo .js estivesse configurada para direcionar a execução para o “notepad.exe”, simplesmente seria aberta uma janela do bloco de notas com linhas de código malicioso ofuscadas. O usuário então fecharia a janela, apagaria o arquivo e continuaria com suas atividades normais, o que livraria a organização de maiores danos primeiramente.
Conclusão
Dada a possibildade destas ameaças entre os nossos clientes e a dificuldade de monitoramento, esta demonstra ser uma medida preventiva de sucesso. Embora muitas vezes seja difícil alterar o comportamento padrão do usuário (que no caso é abrir executáveis sem pensar duas vezes), alterar o comportamento padrão do computador é muito mais fácil. Às vezes, mitigar uma ameaça predominante está a apenas um clique de distância.