# T1542.001 - Firmware do Sistema
## Técnica Pai
Esta é uma sub-técnica de [[t1542-pre-os-boot|T1542 - Boot Pré-OS]].
## Descrição
Adversários sofisticados podem modificar o firmware do sistema - como BIOS (Basic Input/Output System) ou UEFI (Unified Extensible Firmware Interface) - para obter persistência em um nível abaixo do sistema operacional, tornando a detecção e remoção extremamente difíceis. O firmware é o primeiro código executado ao ligar um computador, inicializando o hardware antes de carregar o sistema operacional. Por operar nesse estrato pré-OS, um implante de firmware sobrevive à reinstalação do sistema operacional, substituição de disco rígido e até a algumas trocas de hardware.
A técnica requer que o adversário já possua privilégios elevados no sistema alvo - geralmente acesso de kernel ou equivalente - para poder invocar APIs de escrita de firmware (como as interfaces SMM - System Management Mode). Ferramentas como `flashrom` no Linux ou acesso direto via drivers de kernel no Windows são usadas para ler e reescrever o chip de flash que armazena o firmware. O código malicioso é injetado em uma região do firmware que persiste entre reinicializações, como módulos DXE (Driver Execution Environment) no caso do UEFI.
Uma vez que o implante está ativo, ele pode realizar diversas ações maliciosas antes mesmo do carregamento do SO: desabilitar mecanismos de segurança (como o Secure Boot), carregar drivers maliciosos, injetar código nos processos de inicialização, ou estabelecer um canal de comunicação encoberto. Casos documentados incluem o [[s0397-lojx|LoJáx]], atribuído ao [[g0007-apt28|APT28]], que foi o primeiro rootkit UEFI descoberto em atividade maliciosa real, e os implantes de firmware do [[g0020-equation-group|Equation Group]] descritos pela Kaspersky, capazes de persistir em firmwares de HDs de múltiplos fabricantes.
**Contexto Brasil/LATAM:** Embora ataques de firmware sejam associados a atores com recursos de estado-nação, o Brasil abriga infraestruturas críticas de governo, energia e financeiro que são alvos de interesse para grupos como [[g0007-apt28|APT28]] e atores vinculados ao espionagem geopolítica. Fornecedores governamentais e empresas do setor de defesa na região devem considerar verificações de integridade de firmware como parte de sua estratégia de hardening - especialmente em dispositivos de rede e servidores de borda.
## Attack Flow
```mermaid
graph TB
A[Acesso Inicial<br/>Exploração ou Acesso Físico] --> B[Escalação de Privilégios<br/>Nível Kernel / Ring-0]
B --> C[Leitura do Firmware Atual<br/>via Driver ou flashrom]
C --> D{{"T1542.001<br/>Modificação de Firmware BIOS/UEFI"}}
D --> E[Implante Injetado<br/>em Módulo DXE ou Volume SMM]
E --> F[Reinicialização do Sistema]
F --> G[Código Malicioso Carregado<br/>Antes do Sistema Operacional]
G --> H[Persistência Resistente<br/>a Reinstalação e Troca de Disco]
H --> I[Carregamento de Payload<br/>Comúnicação Encoberta / Sabotagem]
```
## Como Funciona
1. **Preparação** - O adversário compromete o sistema com privilégios de kernel (Ring-0), necessários para acessar as interfaces de gerenciamento de firmware. Em alguns casos, o acesso físico ao hardware é utilizado, especialmente para dispositivos de rede ou sistemas air-gapped.
2. **Execução** - O firmware atual é lido do chip de flash e analisado. O adversário modifica um módulo UEFI existente ou adiciona um novo, contendo o implante. O firmware modificado é então regravado no chip. No Linux, ferramentas como `flashrom` com suporte a chipsets Intel ME/AMT são usadas; no Windows, drivers proprietários de fabricante ou exploits de SMM são necessários.
3. **Pós-execução** - A cada boot, o implante é carregado antes do sistema operacional. Ele pode desabilitar o Secure Boot retroativamente, injetar drivers maliciosos no carregamento do SO, ou simplesmente aguardar a inicialização do sistema para executar payloads adicionais de forma encoberta.
**Exemplo - verificação de integridade de firmware (perspectiva defensiva):**
```bash
# Comparar hash do firmware atual com baseline confiável
# (executar em ambiente de análise offline, não em produção)
sudo flashrom -p internal -r firmware_dump.bin
sha256sum firmware_dump.bin
# Verificar assinatura do firmware via chectl (UEFI DBX check)
mokutil --sb-state
# Resultado esperado: "SecureBoot enabled"
```
## Detecção
**Fontes de dados:** eventos de modificação de firmware via EDR com visibilidade de baixo nível (ex: CrowdStrike Falcon com suporte UEFI), logs de plataformas de gerenciamento de firmware (Dell BIOS Connect, HP Sure Start), Trusted Platform Module (TPM) attestation logs, comparação periódica de hashes de firmware contra baselines confiáveis.
```yaml
title: Escrita Suspeita em Região de Firmware UEFI
id: b7c3d4e5-f6a7-8901-bcde-f23456789012
status: experimental
logsource:
product: windows
service: system
detection:
selection:
EventID: 4657
ObjectName|contains:
- "\\REGISTRY\\MACHINE\\HARDWARE\\DESCRIPTION\\System\\BIOS"
- "EFI"
AccessMask: "0x2"
filter_legit_updates:
ProcessName|contains:
- "Windows\\System32\\services.exe"
condition: selection and not filter_legit_updates
falsepositives:
- Atualizações legítimas de firmware pelo fabricante (Dell Command Updaté, Lenovo System Updaté)
- Ferramentas de diagnóstico de hardware homologadas
level: high
tags:
- attack.persistence
- attack.defense-evasion
- attack.t1542.001
```
## Mitigação
| Mitigação | Orientação Prática |
|-----------|-------------------|
| [[m1046-boot-integrity\|M1046 - Boot Integrity]] | Habilitar Secure Boot e verificar que a cadeia de confiança (db, dbx, KEK, PK) está íntegra; usar TPM para attestation de integridade de boot |
| [[m1051-update-software\|M1051 - Updaté Software]] | Manter firmware atualizado com patches de segurança do fabricante; assinar e verificar atualizações de firmware (UEFI Capsule Updaté com verificação criptográfica) |
| [[m1026-privileged-account-management\|M1026 - Privileged Account Management]] | Restringir acesso físico e lógico a interfaces de administração de firmware; desabilitar portas de debug (JTAG) em hardware de produção |
## Software Associado
- [[s0397-lojx|LoJáx]] - primeiro rootkit UEFI em uso real, atribuído ao [[g0007-apt28|APT28]]; persiste em módulos DXE do firmware
- [[s0047-hacking-team-uefi-rootkit|Hacking Team UEFI Rootkit]] - implante descoberto em 2015 após vazamento de dados da Hacking Team
- [[mebromi|Trojan.Mebromi]] - malware que infectava BIOS Award, um dos primeiros exemplos documentados de persistência em firmware
## Referências
*Fonte: [MITRE ATT&CK - T1542.001](https://attack.mitre.org/techniques/T1542/001)*