PowerShell Base64 Encoded Command Execution

Obs.: Esse foi o único cenário onde executei via Wazuh. Os próximos serão no Elastic Stack. :)

Contexto

Atacantes utilizam a codificação Base64 para explorar o PowerShell principalmente para ofuscação e evasão de detecção. O PowerShell é uma ferramenta poderosa e presente em quase todos os sistemas Windows, tornando-o um alvo atraente para atividades maliciosas. A execução de comandos PowerShell em base64 é muito utilizada para:

  • Evasão de sistemas de segurança: Muitos sistemas de segurança (antivírus, EDRs) são configurados para detectar padrões de comandos PowerShell conhecidos como maliciosos. Ao codificar um comando em Base64, os atacantes podem esconder o conteúdo real da string, tornando-o mais difícil de ser detectado por assinaturas estáticas.

  • Dificultar a análise humana: Um comando codificado em Base64 é ilegível para um humano sem decodificação. Isso pode atrasar a resposta da equipe de segurança durante uma análise forense.

APTs

  • APT19 usava Base64 para ofuscar comandos executados

  • Aquatic Panda codificou comandos do PowerShell em Base64

  • BADHATCH rodou comandos maliciosos em PowerShell codificados com base64

Simulação do ataque

Eventos gerados

Regra de detecção

title: PowerShell Base64-Encoded Command Execution
id: fa18e58e-35b9-45c2-bf07-30c1b4a5235a
status: experimental
description: Detecta a execução de comando PowerShell codificado em Base64
author: Sg0luc
date: 2023-09-06
modified: 2025-05-03
references:
  - https://attack.mitre.org/techniques/T1027/
tags:
  - attack.defense-evasion
  - attack.t1027
logsource:
  product: windows
  category: powershell
detection:
  Event:
    ScriptBlockText|contains:
      - '-Enc' # -Enc ou -EncodedCommand
  condition: Event
falsepositives:
  - Serviços automatizados que executam comandos codificados em Base64 de forma legítima
level: high
fields:
  - SubjectUserName
  - SourceAddress
  - CommandLine

Last updated