# 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)*