Vulnerabilidades do OpenCode em 12/01/2026

O OpenCode recebeu dois avisos sobre execução de comandos no computador durante o uso pelo terminal. Uma falha combina conteúdo malicioso na interface web com acesso ao terminal pela API. A outra permite chamar funções locais sem autenticação. Confira cada faixa separadamente, porque os avisos indicam versões corrigidas diferentes.

AplicativoOpenCode
Data do compilado
Vulnerabilidades2

As versões corrigidas indicam a disponibilidade da correção no projeto. Você precisa conferir qual executável está instalado e reiniciar os processos antigos para usar a atualização.

Gravidade críticaCVSS: 9,4/10Correção disponível

Conteúdo malicioso na interface web permite executar comandos locais

A interface web aceitava o parâmetro ?url= para carregar conversas de outro servidor. Um atacante podia fornecer uma conversa com HTML que o renderizador de Markdown inseria sem sanitização, causando XSS (cross-site scripting). O JavaScript executado na origem http://localhost:4096 conseguia chamar os endpoints /pty/ da API e iniciar comandos no seu computador.

Casos de uso afetados

  • Você mantém uma versão afetada do OpenCode aberta no terminal e acessa um link para a interface local com ?url= apontando para um servidor controlado pelo atacante. A conversa carregada desse servidor fornece o conteúdo necessário à exploração.

Confira na sua instância

Confira a versão do executável que você inicia e compare com <1.1.10. Após atualizar e reiniciar o OpenCode, verifique se o uso normal pelo terminal ainda abre a interface em localhost:4096. No Linux, você pode usar ss -ltnp para identificar o processo que escuta nessa porta. O aviso informa que a versão 1.1.10 desativa a interface web e a API nesse funcionamento.

Versões afetadas e correções

Faixas declaradas no comunicado oficial, por linha de manutenção
LinhaAfetadasCorrigidas
opencode<1.1.101.1.10

CVE-2026-22813, com pontuação CVSS 4.0 de 9,4. O projeto informa que uma alteração nos recursos web servidos remotamente desativou o parâmetro ?url= em 09/01/2026 às 21:36:31 UTC. Essa mitigação interrompeu o caminho descrito, mas a ausência de redirecionamento para outro servidor não comprova que você instalou a versão corrigida.

Gravidade altaCVSS: 8,8/10Correção disponível

Servidor local sem autenticação expõe comandos e arquivos

Ao iniciar, o OpenCode abria automaticamente um servidor HTTP sem autenticação. As rotas /session/:id/shell e /pty permitiam executar comandos com as suas permissões, e /file/content?path= permitia ler arquivos. A configuração permissiva de CORS (compartilhamento de recursos entre origens) também aceitava chamadas de páginas externas, permitindo que um site malicioso alcançasse essas funções pelo navegador.

Casos de uso afetados

  • Durante uma sessão com uma versão afetada, você navega por uma página maliciosa que faz chamadas ao servidor local. O pesquisador confirmou a exploração pelo Firefox.
  • Um script malicioso ou uma dependência npm comprometida no seu computador acessa a API do OpenCode e executa comandos com as permissões do processo.
  • Você inicia o OpenCode com --mdns. O servidor escuta em 0.0.0.0 e anuncia sua presença via Bonjour, permitindo acesso também pela rede local.

Confira na sua instância

Confira a versão instalada do pacote npm opencode-ai e compare com < 1.0.216. Com o OpenCode em execução, identifique a porta efetiva e o endereço de escuta, usando ss -ltnp no Linux. A porta começa em 4096, mas pode variar. Verifique também os argumentos do processo: --mdns amplia o acesso para a rede local. Após atualizar e reiniciar, confira se as funções de shell, terminal e leitura de arquivos continuam acessíveis sem autenticação, sem executar comandos nem consultar arquivos sensíveis para testar.

Versões afetadas e correções

Faixas declaradas no comunicado oficial, por linha de manutenção
LinhaAfetadasCorrigidas
opencode-ai (npm)< 1.0.2161.0.216

CVE-2026-22812, com pontuação CVSS 3.1 de 8,8. Restringir a escuta ao endereço local reduz o acesso pela rede, mas preserva o acesso por processos locais. O aviso também descreve exploração pelo navegador, portanto essa restrição não substitui a atualização.

Voltar aos compilados de vulnerabilidades
Luiz Eduardo Oliveira Fonseca

Luiz Eduardo Oliveira Fonseca

Fundador e Mentor

Programador há mais de 20 anos, fundador da Powertic e da Promovaweb. Embaixador do n8n no Brasil e da Baserow, Chatwoot, Miro e Kestra. Membro do Product Team do Mautic.

Área pública disponível

Participe da comunidade no Discord

Entre pelo convite oficial, apresente-se à comunidade e acompanhe os avisos e projetos compartilhados entre os encontros.