# T1195.002 - Supply Chain Compromise: Compromise Software Supply Chain
## Técnica Pai
Esta é uma sub-técnica de [[t1195-supply-chain-compromise|T1195 - T1195 - Supply Chain Compromise]].
## Descrição
O comprometimento da cadeia de suprimentos de software é uma das técnicas de acesso inicial mais devastadoras do arsenal ofensivo moderno. O adversário não ataca a vítima diretamente - ele invade o fornecedor de software confiável e injeta código malicioso no produto antes que ele chegue ao cliente final. Quando a organização instala a atualização "legítima", o malware já vem embutido e assinado digitalmente pelo próprio fabricante, contornando controles de segurança tradicionais como verificação de assinatura e listas de permissões.
O caso mais emblemático é o [[solarwinds-supply-chain-attack|SolarWinds Supply Chain Attack]], onde o grupo [[g0016-apt29|Cozy Bear]] comprometeu o pipeline de build da plataforma Orion e inseriu o backdoor [[s0559-sunburst]] em atualizações distribuídas a aproximadamente 18.000 organizações ao redor do mundo - incluindo agências do governo norte-americano, empresas Fortune 500 e prestadores de serviços gerenciados. O [[s0559-sunburst]] ficou dormente por semanas antes de ativar comunicação C2, dificultando ainda mais a detecção.
Além do acesso inicial, esta técnica estabelece persistência automática em larga escala: cada novo cliente que instala a versão trojanizada torna-se automaticamente comprometido sem qualquer interação adicional do atacante. A confiança implícita depositada em software legítimo e atualizado é o vetor de exploração - não uma vulnerabilidade técnica tradicional.
**Contexto Brasil/LATAM:** No contexto brasileiro, integradores de tecnologia, provedores de software fiscal (como soluções SPED e NF-e), ERPs nacionais amplamente adotados e sistemas de automação bancária representam alvos de alto valor para ataques de supply chain. Um comprometimento em um fornecedor de software contábil utilizado por milhares de empresas poderia propagar acesso inicial de forma silenciosa a toda a cadeia. O [[sources|cert-br]] e o setor financeiro brasileiro monitoram esta ameaça de perto, especialmente após incidentes envolvendo fornecedores de software tributário na América Latina.
## Attack Flow
```mermaid
graph TB
A[Comprometimento<br/>do Fornecedor]:::attack --> B[Injeção no<br/>Pipeline de Build]:::technique
B --> C[Distribuição da<br/>Atualização Trojanizada]:::attack
C --> D[Instalação pelo<br/>Cliente Final]:::victim
D --> E[Backdoor Ativo<br/>na Rede Alvo]:::impact
classDef attack fill:#c0392b,color:#fff,stroke:#922b21
classDef technique fill:#e74c3c,color:#fff,stroke:#c0392b
classDef victim fill:#7f8c8d,color:#fff,stroke:#626567
classDef impact fill:#2c3e50,color:#fff,stroke:#1a252f
```
## Como Funciona
**1. Preparação - Comprometimento do Fornecedor**
O adversário primeiro invade os sistemas internos do fornecedor de software: repositórios de código-fonte (Git, SVN), servidores de build (Jenkins, TeamCity, GitHub Actions), ou plataformas de distribuição de pacotes (npm, PyPI, NuGet). Credenciais roubadas via [[t1078-valid-accounts|Valid Accounts]], exploração de vulnerabilidades em ferramentas de CI/CD, ou engenharia social contra desenvolvedores são vetores comuns de entrada. Uma vez dentro, o atacante persiste discretamente aguardando o momento ideal para introduzir a modificação maliciosa.
**2. Execução - Injeção e Distribuição**
O código malicioso é inserido no processo de compilação de forma cirúrgica - muitas vezes como uma modificação mínima que passa despercebida em revisões de código. O binário resultante é compilado e assinado pelo certificado legítimo do fornecedor, obtendo assim confiança automática dos sistemas de segurança dos clientes. A atualização é então distribuída pelos canais normais (CDN do fornecedor, repositórios de pacotes, sistemas de atualização automática), chegando a centenas ou milhares de clientes simultaneamente.
**3. Pós-execução - Ativação e Exploração**
Após a instalação silenciosa, o implante frequentemente entra em período de dormência para evitar correlação com a atualização. Em seguida, inicia comunicação com infraestrutura C2 - muitas vezes usando domínios que imitam serviços legítimos do fornecedor comprometido. A partir daí, o adversário realiza reconhecimento interno, movimento lateral via [[t1021-remote-services|Remote Services]], exfiltração de credenciais e dados sensíveis, e pode manter acesso persistente por meses antes de ser detectado.
## Detecção
**Event IDs relevantes (Windows):**
| Event ID | Fonte | Descrição |
|----------|-------|-----------|
| 4688 | Security | Process Creation - detectar binários de atualização gerando processos filhos incomuns |
| 7045 | System | Novo serviço instalado - atualizações trojanizadas frequentemente instalam serviços |
| 4657 | Security | Modificação de registro - chaves de persistência criadas pós-instalação |
| 4698 | Security | Task agendada criada - mecanismo de persistência comum pós-supply chain |
| 1102 | Security | Log de auditoria limpo - adversários podem tentar cobrir rastros |
**Sigma Rule - Detecção de Processo Filho Anômalo em Atualização de Software:**
```yaml
title: Suspicious Child Process from Software Updater
id: a3f1c2e4-8b7d-4f3a-9c1e-2d5f8a0b3c6e
status: experimental
description: >
Detecta processos filhos incomuns gerados por processos de atualização de software legítimos,
possível indicador de supply chain compromise (T1195.002).
author: RunkIntel
daté: 2026-03-22
references:
- https://attack.mitre.org/techniques/T1195/002/
logsource:
category: process_creation
product: windows
detection:
selection:
ParentImage|endswith:
- '\SolarWinds.BusinessLayerHost.exe'
- '\MsiExec.exe'
- '\setup.exe'
- '\updaté.exe'
- '\updater.exe'
Image|endswith:
- '\cmd.exe'
- '\powershell.exe'
- '\wscript.exe'
- '\cscript.exe'
- '\mshta.exe'
- '\rundll32.exe'
- '\regsvr32.exe'
filter_legitimate:
CommandLine|contains:
- 'SolarWinds'
- 'uninstall'
- 'cleanup'
condition: selection and not filter_legitimate
falsepositives:
- Processos de atualização legítimos que geram scripts temporariamente
- Instaladores complexos com scripts de configuração pós-instalação
level: high
tags:
- attack.initial_access
- attack.t1195.002
```
## Mitigação
| Controle | Descrição | Prioridade para Orgs Brasileiras |
|----------|-----------|----------------------------------|
| **Verificação de integridade de build** | Implementar assinatura de artefatos de build com chaves separadas do ambiente de produção; usar ferramentas como SLSA ou Sigstore | Alta - especialmente para softwares fiscais e bancários |
| **Auditoria de dependências de terceiros** | Inventariar e monitorar todas as dependências de software; usar SCA (Software Composition Analysis) em pipelines CI/CD | Alta - cadeias de dependência npm/PyPI são vetores frequentes |
| **Controle de acesso ao pipeline CI/CD** | Aplicar princípio do menor privilégio em sistemas de build; MFA obrigatório para todos os desenvolvedores com acesso a prod | Alta - comprometimento de credenciais de dev é o vetor inicial mais comum |
| **Monitoramento comportamental pós-atualização** | Implantar EDR capaz de detectar anomalias comportamentais após atualizações de software; alertar para novos processos, conexões de rede e chaves de registro | Alta - detecção tardia é melhor que nenhuma detecção |
| **Lista de permissões de aplicativos** | Usar AppLocker ou WDAC para permitir apenas executáveis conhecidos e assinados; revisar exceções após cada ciclo de atualização | Média - operacionalmente complexo em ambientes heterogêneos |
| **Plano de resposta para fornecedores** | Ter procedimentos documentados para isolar sistemas afetados por supply chain incidents; manter contato com fornecedores críticos sobre seus controles de segurança | Alta - o plano precisa existir antes do incidente |
## Threat Actors
- [[g0016-apt29|Cozy Bear]] - grupo de espionagem russo responsável pelo ataque à SolarWinds, reconhecido pelo alto nível de sofisticação operacional e paciência na permanência dentro de ambientes comprometidos por meses sem detecção
- [[g0032-lazarus-group]] - grupo norte-coreano que utilizou comprometimento de supply chain de software para distribuir versões trojanizadas de aplicativos legítimos, especialmente no contexto de espionagem industrial
- [[brazen-bamboo]] - ator ligado à China que explorou cadeias de suprimentos de software para acesso inicial em campanhas de espionagem de longo prazo
- [[flax-typhoon]] - grupo chinês que abusou de ferramentas legítimas de administração remota com foco em infraestrutura crítica de Taiwan e aliados
## Software Associado
- [[s0559-sunburst]] - backdoor inserido no Orion da SolarWinds pelo [[g0016-apt29|APT29]], dormiu por duas semanas antes de ativar comunicação C2 via DNS e HTTPS para domínios que imitavam a própria SolarWinds
- [[s0562-sunspot]] - implante de segundo estágio usado pelo APT29 específicamente para injetar o SUNBURST no processo de build da SolarWinds, demonstrando preparação antecipada e precisão cirúrgica
---
## Grupos que Utilizam Esta Técnica
%%
```dataview
TABLE WITHOUT ID
link(file.link, title) AS "Ator", origin AS "Origem"
FROM "cti/groups"
WHERE contains(techniques, this.file.link)
```
%%
<!-- QueryToSerialize: TABLE WITHOUT ID link(file.link, title) AS "Nota", title AS "Ator", origin AS "Origem" FROM "cti/groups" WHERE contains(techniques, this.file.link) -->
<!-- SerializedQuery: TABLE WITHOUT ID link(file.link, title) AS "Nota", title AS "Ator", origin AS "Origem" FROM "cti/groups" WHERE contains(techniques, this.file.link) -->
| Nota | Ator | Origem |
| ---------------------------------------------- | ------------- | --------------- |
| [[citrine-sleet\|Citrine Sleet]] | Citrine Sleet | Coreia do Norte |
| [[g0025-apt17\|APT17]] | APT17 | China |
| [[g1049-applejeus\|AppleJeus]] | AppleJeus | Coreia do Norte |
| [[teampcp\|TeamPCP]] | TeamPCP | Desconhecido |
<!-- SerializedQuery END -->
## Campanhas Relacionadas
%%
```dataview
TABLE WITHOUT ID
link(file.link, title) AS "Campanha"
FROM "cti/campaigns"
WHERE contains(techniques, this.file.link)
```
%%
<!-- QueryToSerialize: TABLE WITHOUT ID link(file.link, title) AS "Nota", title AS "Campanha" FROM "cti/campaigns" WHERE contains(techniques, this.file.link) -->
<!-- SerializedQuery: TABLE WITHOUT ID link(file.link, title) AS "Nota", title AS "Campanha" FROM "cti/campaigns" WHERE contains(techniques, this.file.link) -->
| Nota | Campanha |
| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------- |
| [[3cx-supply-chain\|3CX Supply Chain Attack]] | 3CX Supply Chain Attack |
| [[btg-pactual-pix-attack-2026\|Ataque BTG Pactual - Fraude PIX 2026]] | Ataque BTG Pactual - Fraude PIX 2026 |
| [[cyberlink-supply-chain-2023\|CyberLink Supply Chain Attack 2023 - Diamond Sleet]] | CyberLink Supply Chain Attack 2023 - Diamond Sleet |
| [[kaseya-supply-chain-revil-2021\|Kaseya VSA - Ataque à Cadeia de Fornecedores REvil 2021]] | Kaseya VSA - Ataque à Cadeia de Fornecedores REvil 2021 |
| [[notpetya-2017\|NotPetya 2017]] | NotPetya 2017 |
| [[operation-applejeus\|Operation AppleJeus]] | Operation AppleJeus |
| [[solarwinds-compromise\|SolarWinds Compromise]] | SolarWinds Compromise |
| [[solarwinds-supply-chain-attack\|SolarWinds Supply Chain Attack]] | SolarWinds Supply Chain Attack |
| [[solarwinds-supply-chain\|SolarWinds Supply Chain]] | SolarWinds Supply Chain |
| [[tradertraitor-campaign\|TraderTraitor Campaign]] | TraderTraitor Campaign |
| [[trivy-supply-chain-2026\|TeamPCP Supply Chain Campaign 2026]] | TeamPCP Supply Chain Campaign 2026 |
<!-- SerializedQuery END -->
---
*Fonte: [MITRE ATT&CK - T1195.002](https://attack.mitre.org/techniques/T1195/002/)*