Vulnerabilidades em software de programação poderiam permitir ataques remotos a PLCs e HMIs
Pesquisadores da Kaspersky ICS Cert descobriram várias vulnerabilidades em uma estrutura popular usada para o desenvolvimento de dispositivos industriais, como controladores PLCs (Programmable Logic Controller, em inglês) e interfaces homem-máquina (HMIs, em inglês). Esses dispositivos estão no centro de quase todas as instalações industriais automatizadas, da infraestrutura crítica à produção. As vulnerabilidades descobertas poderiam permitir que um invasor conduzisse ataques remotos e locais destrutivos à organização em que são usados PLCs desenvolvidos com essa estrutura vulnerável. A estrutura foi desenvolvida pela Codesys e as vulnerabilidades foram corrigidas pelo fornecedor após notificação da Kaspersky.
Os PLCs são dispositivos que automatizam processos que antes tinham de ser realizados manualmente ou com a ajuda de dispositivos eletromecânicos complexos. Para que um PLC funcione corretamente, é necessário programar esses dispositivos. Essa programação é realizada por meio de uma estrutura de software especial que ajuda os engenheiros a codificar e carregar as instruções do programa de automação de processos no PLC. Ela também fornece um ambiente de execução para o código do programa do PLC. Esse software é usado em vários ambientes, como em produção, geração de energia, infraestruturas de cidades inteligentes e muitos outros.
Os pesquisadores da Kaspersky analisaram este programa e descobriram que ele estava vulnerável e poderia ser manipulado. Como resultado, foram identificados mais de uma dúzia de problemas de segurança no protocolo de rede principal da estrutura e no tempo de execução, sendo que quatro deles foram reconhecidos como especialmente graves e tiveram IDs separados atribuídos a eles: CVE-2018-10612, CVE-2018-20026, CVE-2019-9013 e CVE-2018-20025.
Dependendo de qual falha é explorada, um atacante seria capaz de interceptar e produzir falhas de dados de telemetria e comandos de rede, roubar e reutilizar senhas e outras informações de autenticação, injetar código malicioso no tempo de execução e elevar os privilégios do invasor no sistema, além de outras ações não autorizadas. Tudo isso ocultando sua presença na rede atacada. Isso quer dizer que um atacante seria capaz de corromper a funcionalidade dos PLCs em uma instalação específica ou obter controle total sobre ela e, ao mesmo tempo, passar desapercebido pela equipe de tecnologia operacional (TO) da instalação atacada. Depois, poderiam perturbar as operações ou roubar dados sigilosos, como propriedade intelectual e outras informações confidenciais – por exemplo, funcionalidades de produção da fábrica ou novos produtos que estão em andamento. Além disso, seria possível observar as operações na instalação e coletar outras informações que podem ser consideradas sigilosas.
Logo após a descoberta, a Kaspersky reportou os problemas imediatamente ao fornecedor do software. Todas as vulnerabilidades relatadas foram corrigidas e as correções já estão disponíveis para os usuários.
“As vulnerabilidades que descobrimos ofereciam uma superfície de ataque extremamente ampla para comportamentos possivelmente maliciosos e, considerando como o software em questão é difundido, estamos agradecidos pela rápida resposta do fornecedor e por sua capacidade de corrigir esses problemas com agilidade. Queremos acreditar que, como resultado dessa pesquisa, pudemos dificultar significativamente o trabalho dos cibercriminosos. No entanto, muitas dessas vulnerabilidades teriam sido descobertas antes, se a comunidade de segurança estivesse envolvida nos estágios iniciais de desenvolvimento do protocolo de comunicação de rede”, comenta Alexander Nochvay, pesquisador de segurança da ICS Cert da Kaspersky.
“Acreditamos que a colaboração com a comunidade de segurança deve tornar-se uma prática recorrente para desenvolvedores de componentes importantes de sistemas industriais, incluindo hardware e software. Principalmente porque a chamada Indústria 4.0, que em grande parte é baseada nas tecnologias automatizadas modernas, está se aproximando”, analisa o pesquisador.
“A segurança de produtos é da maior importância para o Grupo Codesys. Portanto, nós valorizamos os resultados da pesquisa fornecidos pela Kaspersky, pois eles nos ajudaram a tornar o Codesys ainda mais seguro. Há muitos anos, investimos em iniciativas técnicas e administrativas para melhorar os recursos de segurança do Codesys. Todas as vulnerabilidades detectadas são imediatamente investigadas, avaliadas, priorizadas e publicadas em um informe de segurança. Correções na forma de atualizações de software são desenvolvidas rapidamente e disponibilizadas imediatamente para todos os usuários do Codesys na Codesys Store”, destaca Roland Wagner, chefe de Marketing de Produtos do Grupo Codesys
Para lidar com os possíveis riscos gerados pela exploração dos problemas relatados, os especialistas da Kaspersky recomendam:
– Os desenvolvedores que usam este programa devem solicitar a versão mais recente e atualizar o firmware dos dispositivos criados com a ajuda deste software;
– Os engenheiros industriais devem considerar a atualização do firmware em seus dispositivos com respeito aos procedimentos de gerenciamento de correções da empresa, caso o dispositivo tenha sido criado com a ajuda desta estrutura e o desenvolvedor do dispositivo lançou a atualização relevante para seu produto;
– Quando há ambientes de desenvolvimento e/ou SCADA implementados, os dispositivos devem ser equipados com uma proteção de segurança;
– Os dispositivos usados em ambientes industriais devem funcionar em uma rede limitada e isolada;
– Até que as correções no firmware sejam aplicadas, as equipes de segurança que protegem redes industriais devem considerar a implementação de medidas específicas, como soluções de detecção de ataques direcionados, monitoramento das redes industriais, disponibilização de treinamentos regulares em segurança para as equipes de TI e TO e outras medidas de segurança necessárias para a proteção contra ameaças sofisticadas.