# T1176.002 - IDE Extensions
## Técnica Pai
Esta é uma sub-técnica de [[t1176-browser-extensions|T1176 - Extensões de Navegador]].
## Descrição
Adversários exploram extensões de ambientes de desenvolvimento integrado (IDEs) para estabelecer persistência em sistemas comprometidos. Ferramentas como Visual Studio Code, IntelliJ IDEA e Eclipse suportam um ecossistema robusto de extensões - componentes de software que adicionam funcionalidades como linting de código, autocompletar, automação de tarefas e integração com plataformas como Git e Docker.
Uma extensão maliciosa pode ser instalada de duas formas principais: por meio de um marketplace oficial de extensões (exploração de cadeia de suprimentos, relacionada a [[t1195-001-compromise-software-dependencies-and-development-tools|Compromisso de Dependências de Software]]) ou carregada diretamente no IDE sem passar pelos canais oficiais (*side-loading*). Em ambos os casos, a extensão maliciosa é executada automaticamente toda vez que o IDE é iniciado, garantindo persistência sem necessidade de técnicas adicionais de inicialização.
Além de extensões criadas específicamente para fins maliciosos, adversários também podem abusar de extensões legítimas. Um exemplo notório é o uso do **VSCode Remote SSH**, que permite estabelecer túneis SSH persistentes para o ambiente da vítima - padrão conhecido como [[t1219-001-ide-tunneling|IDE Tunneling]].
Após a instalação, a extensão maliciosa pode ser usada para:
- Executar código arbitrário no contexto do desenvolvedor
- Estabelecer backdoors e canais de comando e controle (C2)
- Minerar criptomoedas aproveitando a capacidade computacional da estação de trabalho
- Exfiltrar código-fonte, credenciais e segredos armazenados no ambiente de desenvolvimento
O vetor é especialmente perigoso em ambientes corporativos onde desenvolvedores possuem acesso privilegiado a repositórios, pipelines de CI/CD e infraestrutura de produção - tornando o comprometimento de uma estação de desenvolvimento um ponto de entrada de alto valor para adversários.
## Attack Flow
```mermaid
graph TB
A([Adversário]) --> B{Vetor de instalação}
B --> C[Marketplace oficial<br/>Extensão maliciosa publicada]
B --> D[Side-loading<br/>Instalação direta no IDE]
C --> E[Extensão instalada no IDE]
D --> E
E --> F[Persistência automática<br/>Executa ao iniciar o IDE]
F --> G{Objetivos}
G --> H[Execução de código<br/>arbitrário]
G --> I[Túnel SSH persistente<br/>VSCode Remote SSH]
G --> J[Exfiltração de<br/>código-fonte e segredos]
G --> K[Mineração de<br/>criptomoeda]
H --> L([Comprometimento confirmado])
I --> L
J --> L
K --> L
```
## Técnicas Relacionadas
| Técnica | Relação |
|---------|---------|
| [[t1176-browser-extensions\|T1176 - Browser Extensions]] | Técnica pai - extensões maliciosas em geral |
| [[t1195-001-compromise-software-dependencies-and-development-tools\|T1195.001 - Supply Chain: Dev Tools]] | Vetor de distribuição via marketplace comprometido |
| [[t1219-001-ide-tunneling\|T1219.001 - IDE Tunneling]] | Abuso de extensões legítimas para tunelamento SSH |
| [[t1059-command-scripting-interpreter\|T1059 - Command and Scripting Interpreter]] | Execução de código via extensão comprometida |
## Detecção
> [!warning] Fontes de dados recomendadas
> - Monitorar instalação de extensões em IDEs corporativos (VSCode, IntelliJ, Eclipse)
> - Alertar sobre side-loading de extensões não aprovadas pela lista de permissões corporativa
> - Detectar conexões SSH originadas de processos filhos de IDEs (padrão de IDE Tunneling)
> - Auditar permissões solicitadas por extensões instaladas no ambiente de desenvolvimento
## Mitigação
| ID | Mitigação | Aplicação |
|---|-----------|-----------|
| M1038 | [[m1038-execution-prevention\|M1038 - Execution Prevention]] | Bloquear execução de extensões não assinadas ou não aprovadas |
| M1051 | [[m1051-update-software\|M1051 - Updaté Software]] | Manter IDEs e extensões atualizados para versões verificadas |
| M1047 | [[m1047-audit\|M1047 - Audit]] | Auditar regularmente extensões instaladas no ambiente corporativo |
| M1033 | [[m1033-limit-software-installation\|M1033 - Limit Software Installation]] | Restringir instalação de extensões a uma lista de permissões aprovada |
| M1017 | [[m1017-user-training\|M1017 - User Training]] | Treinar desenvolvedores para identificar extensões suspeitas ou de origem desconhecida |
## Threat Actors que Usam
| Ator | Contexto |
|------|----------|
| [[g0129-mustang-panda\|Mustang Panda]] | Grupo APT de origem chinesa documentado usando extensões maliciosas de IDE para persistência em ambientes de desenvolvimento |
## Contexto LATAM
> [!info] Relevância para o Brasil e América Latina
> O crescimento do setor de tecnologia no Brasil e na região LATAM aumenta a superfície de ataque para esta técnica. Ambientes de desenvolvimento com acesso a código-fonte de sistemas financeiros, infraestrutura de governo e plataformas de e-commerce são alvos de alto valor. Grupos como [[g0129-mustang-panda|Mustang Panda]], com histórico de espionagem industrial, representam ameaça relevante para empresas de tecnologia da região.
---
*Fonte: MITRE ATT&CK - T1176.002 (v16.2)*