Uma falha crítica avaliada em 9,9 no CVSS afeta o OpenPLC v3, ambiente open-source de automação industrial, permitindo que atacantes autenticados escrevam arquivos arbitrários e executem código nativo no sistema. A CISA divulgou o alerta em 9 de julho de 2026; a correção exige migração para o OpenPLC v4, pois a versão 3 chegou ao fim do suporte.
Como o ataque acontece
O atacante precisa de credenciais válidas para acessar a interface web legada do OpenPLC Runtime v3. A partir daí, ele usa o fluxo de upload de programas para enviar um arquivo cujo nome é controlado manualmente. O problema está no campo prog_file: a aplicação grava esse nome diretamente no banco de dados, no campo Programs.File, e depois o reutiliza como caminho de destino do arquivo enviado — sem nenhuma validação ou restrição.
Como a função os.path.join() do Python obedece caminhos absolutos controlados pelo invasor, qualquer local gravável pelo processo do servidor web pode receber o arquivo malicioso.
Detalhes técnicos do CVE
A vulnerabilidade, registrada como CVE-2026-14480, classifica-se como “controle externo de nome de caminho ou arquivo” (CWE-73). O salto de gravar um arquivo para executar código acontece por causa do pipeline padrão de compilação: todos os arquivos .cpp dentro do diretório central do runtime são compilados automaticamente no binário executável.
Ao depositar um arquivo .cpp malicioso nesse diretório, o invasor transforma a gravação arbitrária em execução de código nativo assim que o operador aciona uma compilação e inicialização normais do programa. O código passa a rodar com os privilégios do usuário do runtime do OpenPLC.
Produtos afetados e correção
O OpenPLC v3 é a única versão afetada e, segundo o fabricante, está em fim de vida (end-of-life), sem mais patches ou atualizações de segurança. A recomendação oficial é migrar para o OpenPLC v4. A tabela resume o panorama:
| Versão | Status | CVSS | Ação recomendada |
|---|---|---|---|
| OpenPLC v3 | Afetada (fim de vida) | 9,9 (Crítica) | Migrar para v4 |
| OpenPLC v4 | Não afetada | — | Manter atualizada |
A falha foi reportada à CISA pelo pesquisador Grady DeRosa e afeta setores de infraestrutura crítica como manufatura, energia, transporte e tratamento de água, onde o OpenPLC aparece em ambientes de automação e laboratórios.
Como reduzir o risco
- Restrinja credenciais: como o ataque exige autenticação, audite quem tem acesso à interface web e aplique princípio do menor privilégio.
- Isole a rede OT: mantenha o runtime atrás de firewall, sem exposição direta à internet, e separe a rede de controle da rede corporativa.
- Migre para o v4: a v3 não receberá correção; planeje a atualização com avaliação de impacto prévia.
- Monitore compilações: registre e alerte sobre uploads de programas e inicializações de runtime incomuns, pois é nesse momento que o código malicioso injetado é compilado e executado.
- Backups e recuperação: mantenha snapshots do ambiente de automação para permitir restauração rápida caso o runtime seja comprometido.