# T1608.001 - Upload Malware
## Técnica Pai
Esta é uma sub-técnica de [[t1608-stage-capabilities|T1608 - T1608 - Stage Capabilities]].
## Descrição
O upload de malware em infraestrutura controlada pelo adversário é uma das fases mais críticas do ciclo de preparação de um ataque cibernético. Antes de qualquer interação com a vítima, grupos de ameaça posicionam payloads - como droppers, backdoors, implantes de pós-comprometimento e ferramentas de acesso remoto - em servidores web acessíveis pela internet, repositórios públicos de código ou plataformas de armazenamento descentralizado. Esse posicionamento antecipado garante que, no momento do ataque, a entrega do malware sejá rápida e difícil de rastrear até o operador real.
A escolha da plataforma de hospedagem varia conforme o perfil do adversário e a resiliência desejada. Grupos patrocinados por estado frequentemente abusam de infraestrutura previamente comprometida - o que dificulta o atribuição - enquanto grupos criminosos tendem a usar plataformas legítimas como GitHub, Pastebin ou PyPI por meio de técnicas como typosquatting para imitar pacotes populares. Uma tendência crescente é o uso do IPFS (InterPlanetary File System) e de smart contracts em blockchains para hospedar payloads em ambientes onde a remoção de conteúdo é técnicamente inviável para as autoridades ou provedores de hospedagem.
Essa técnica está diretamente relacionada a [[t1583-acquire-infrastructure|Acquire Infrastructure]] e [[t1584-compromise-infrastructure|Compromise Infrastructure]], que representam as fases anteriores de obtenção de servidores. O malware hospedado é então entregue via [[t1105-ingress-tool-transfer|Ingress Tool Transfer]], [[t1204-user-execution|User Execution]] ou campanhas de [[t1566-001-spearphishing-attachment|Spearphishing Attachment]]. No contexto do setor de [[_sectors|setores críticos]], a cadeia de preparação pode durar semanas antes de qualquer comprometimento ativo.
**Contexto Brasil/LATAM:** No Brasil e em toda a América Latina, grupos como [[g0139-teamtnt|TeamTNT]] e [[g0140-lazyscripter|LazyScripter]] têm explorado ativamente repositórios públicos e CDNs comprometidas para hospedar scripts maliciosos voltados a ambientes em nuvem e infraestruturas expostas. O abuso de plataformas legítimas de hospedagem de código - populares no ecossistema de desenvolvimento local - torna a detecção particularmente difícil para equipes de segurança com recursos limitados. Organizações financeiras e de governo no Brasil devem monitorar ativamente domínios e repositórios que imitam ferramentas legítimas usadas por seus times de desenvolvimento.
## Attack Flow
```mermaid
graph TB
A([Preparação de Payload]) --> B([Seleção de Infraestrutura])
B --> C{Upload Malware}:::highlight
C --> D([Distribuição via C2 / Phishing])
D --> E([Comprometimento da Vítima])
classDef highlight fill:#e74c3c,color:#fff
```
## Como Funciona
### 1. Preparação
O adversário desenvolve ou adapta o payload - um dropper, backdoor ou ferramenta de pós-comprometimento - para o alvo específico. Em paralelo, obtém ou compromete infraestrutura de hospedagem: servidores dedicados via [[t1583-acquire-infrastructure|Acquire Infrastructure]], sites legítimos comprometidos via [[t1584-compromise-infrastructure|Compromise Infrastructure]], ou plataformas públicas como GitHub e PyPI. O objetivo é garantir que o malware sejá acessível externamente no momento exato do ataque.
### 2. Execução
O malware é carregado para a infraestrutura escolhida. Quando hospedado em repositórios públicos, técnicas de typosquatting ou nomes de pacotes que imitam bibliotecas populares aumentam a probabilidade de instalação involuntária via [[t1204-user-execution|User Execution]]. Para hospedagem em IPFS ou blockchain, o adversário pública o conteúdo e distribui o hash ou endereço do contrato para os implantes já ativos nas vítimas, que fazem o download via [[t1105-ingress-tool-transfer|Ingress Tool Transfer]].
### 3. Pós-execução
Com o malware hospedado e entregue, o adversário pode atualizar o payload remotamente sem necessitar de novo acesso físico à infraestrutura - especialmente no caso de IPFS, onde novos arquivos podem ser referênciados por implantes via beacon. O servidor de hospedagem torna-se parte da infraestrutura de [[t1583-acquire-infrastructure|C2]], e o rastreamento da origem fica prejudicado pela intermediação de múltiplas plataformas legítimas.
## Detecção
A detecção desta técnica é desafiadora pois ocorre antes do comprometimento. As principais fontes de detecção são inteligência de ameaças externa e monitoramento de repositórios públicos.
**Event IDs relevantes (Windows):**
| Event ID | Canal | Descrição |
|----------|-------|-----------|
| 4688 | Security | Criação de processo - detectar ferramentas de upload (curl, wget, git push) |
| 7045 | System | Instalação de serviço - payload baixado e registrado |
| 1 | Sysmon | Criação de processo com linha de comando suspeita |
| 3 | Sysmon | Conexão de rede para repositórios externos |
**Regra Sigma - Upload para repositórios públicos:**
```yaml
title: Suspicious Payload Upload to Public Repository
id: a3f1e2d4-5b6c-7890-abcd-ef1234567890
status: experimental
description: Detecta upload de arquivos executáveis para repositórios públicos via linha de comando
logsource:
category: process_creation
product: windows
detection:
selection_tools:
CommandLine|contains:
- 'git push'
- 'curl -X PUT'
- 'curl -F'
- 'wget --post-file'
selection_suspicious_ext:
CommandLine|contains:
- '.exe'
- '.dll'
- '.ps1'
- '.sh'
- '.py'
condition: selection_tools and selection_suspicious_ext
falsepositives:
- Desenvolvedores legítimos publicando código
- Pipelines de CI/CD automatizados
level: medium
tags:
- attack.resource_development
- attack.t1608.001
```
## Mitigação
| Controle | Mitigação | Aplicação Prática para Organizações Brasileiras |
|----------|-----------|------------------------------------------------|
| [[m1056-pre-compromise\|M1056 - Pre-compromise]] | Inteligência de ameaças proativa | Monitorar feeds como CISA KEV, abuse.ch e URLhaus em busca de domínios e hashes associados a infraestrutura de staging; integrar alertas ao SIEM |
| Monitoramento de repositórios | Rastreamento de pacotes suspeitos | Usar ferramentas como Socket.dev ou Snyk para monitorar dependências PyPI e NPM em busca de typosquatting contra pacotes usados internamente |
| Controle de acesso à internet | Restrição de destinos | Bloquear acesso direto a IPFS gateways (ipfs.io, cloudflare-ipfs.com) em ambientes corporativos onde não há necessidade de negócio |
| Inventário de dependências | SBOM (Software Bill of Materials) | Manter inventário atualizado de todos os pacotes de terceiros; alertar quando novas versões forem públicadas fora do ciclo esperado |
| Inteligência de domínios | Threat hunting externo | Monitorar registros de domínios que imitam a marca ou produtos da organização - indício precoce de preparação de campanha de typosquatting |
## Threat Actors
- [[g0034-sandworm|Sandworm Team]] - grupo russo vinculado ao GRU que hospedou payloads destrutivos (NotPetya, Industroyer2) em infraestrutura comprometida antes de ataques a infraestrutura crítica
- [[g1018-ta2541|TA2541]] - grupo criminoso que mantém infraestrutura de hospedagem rotativa para distribuição de RATs a setores de aviação, manufatura e transporte
- [[g1006-earth-lusca|Earth Lusca]] - APT chinês que abusa de servidores web legítimos comprometidos como staging para campanhas de espionagem na Ásia e LATAM
- [[g0129-mustang-panda|Mustang Panda]] - usa repositórios de documentos legítimos para hospedar carregadores PlugX, especialmente em campanhas contra governo e ONGs
- [[g1014-luminousmoth|LuminousMoth]] - hospeda implantes em plataformas de nuvem legítimas para contornar listas de bloqueio de domínio em países do Sudeste Asiático
- [[g0094-kimsuky|Kimsuky]] - APT norte-coreano que hospeda scripts de coleta de credenciais em servidores comprometidos de organizações acadêmicas e de saúde
- [[g1020-mustard-tempest|Mustard Tempest]] - distribui carregadores SocGholish via redes de sites WordPress comprometidos, hospedando atualizações falsas de navegador
- [[g0049-oilrig|OilRig]] - APT iraniano que usa infraestrutura de staging para hospedar implantes RoboAdmin e DNSExfiltrator em campanhas no Oriente Médio e LATAM
- [[g0139-teamtnt|TeamTNT]] - especializado em upload de scripts maliciosos para DockerHub e repositórios de contêiner para mineração de criptomoedas em nuvem
- [[g0140-lazyscripter|LazyScripter]] - hospeda scripts PowerShell e Python em repositórios públicos GitHub para comprometimento de alvos de transportes e aviação
---
*Fonte: [MITRE ATT&CK - T1608.001](https://attack.mitre.org/techniques/T1608/001)*