ATLANTA – Cibersegurança Notícias 2023 ICS CYBERSECURITY CONFERENCE – Um novo projeto visa tornar mais fácil para os programadores de PLC implementarem práticas de codificação seguras, analisando e catalogando arquivos e funções úteis de cada fornecedor de PLC.

O novo projeto foi apresentado terça-feira às Conferência ICS de segurança cibernética da Cibersegurança Notícias em Atlanta por David Formby, CEO e CTO da Fortiphyd Logic, uma empresa especializada em detecção de terminais para controladores lógicos programáveis ​​(PLCs) e laboratórios de treinamento de segurança de sistemas de controle industrial virtuais (ICS).

O projeto baseia-se no ‘As 20 principais práticas seguras de codificação de PLC‘, cujo objetivo é fornecer aos programadores de PLC diretrizes para melhorar a segurança.

Algumas destas práticas aplicam-se a todos os PLCs, independentemente do fornecedor. Isso inclui modularizar o código, deixar a lógica operacional diretamente no CLP, atribuir registros por função, usar verificações de correlação e plausibilidade de entrada, monitorar o tempo de atividade do CLP, capturar falsos negativos/positivos, restringir interfaces de dados de terceiros, definir um estado de inicialização seguro em caso de uma reinicialização e validação de temporizadores, entrada/saída emparelhada e indireções.

No entanto, algumas práticas seguras de codificação de PLC são diferentes para cada fornecedor e pode ser difícil identificar documentação relevante. O objetivo do projeto Fortiphyd Logic é fornecer as informações necessárias para práticas específicas de fornecedores em um formato fácil de digerir.

As informações são fornecidas em formato de tabela e incluem o nome e modelo do produto, se a funcionalidade necessária é suportada e o arquivo ou função que permite acesso aos dados necessários.

Uma recomendação segura de codificação PLC, cuja implementação é diferente para cada fornecedor, envolve o rastreamento do modo operacional do dispositivo. Os CLPs podem ter vários modos, como ‘executar’, ‘programar’, ‘teste’ e ‘depurar’. É mais fácil para um invasor hackear um PLC que não esteja no modo ‘run’, por isso é importante que os PLCs não sejam deixados nos modos ‘programa’, ‘teste’ e ‘depuração’. Ademais, as alterações de modo devem ser monitoradas para detectar um ataque potencial.

No entanto, as mudanças no modo de monitoramento são feitas de forma diferente para cada PLC, destacou Formby. Por exemplo, no caso dos CLPs da Rockwell Automation, os dados podem ser obtidos através da instrução ‘GSV(ControllerDevice.Status)’ ou de um arquivo de status, enquanto no caso dos CLPs da Siemens isso pode ser obtido usando a função ‘GET_DIAG’ .

Outra prática de codificação segura de PLC específica do fornecedor envolve o monitoramento de sinalizadores que indicam vários erros e falhas, que podem ser desencadeados por ataques maliciosos. No entanto, os PLCs de cada fornecedor apresentam erros e falhas diferentes e existem diferentes formas de lê-los, explicou Formby.

PLC Monitor Flags 1

Os invasores que visam os CLPs podem fazer alterações na lógica do CLP e alguns controladores possuem somas de verificação que permitem aos usuários detectar alterações na lógica. O monitoramento de checksums pode ser útil para detectar ataques, mas diferentes fornecedores têm funções diferentes para conseguir isso e, em alguns casos, o monitoramento de checksum não é suportado.

Outros exemplos de práticas de codificação segura de PLC específicas de fornecedores cobertas pelo novo projeto da Fortiphyd Logic incluem monitoramento de tempos de ciclo, paradas bruscas e uso de memória, bem como a detecção de software não utilizado.

Por enquanto, o novo projeto, hospedado no GitHub, fornece informações apenas para produtos fabricados pela Schneider Electric, Siemens e Rockwell Automation, mas serão adicionadas informações também para outros fornecedores, com o objetivo de abranger todos os fornecedores de PLC. Qualquer pessoa pode contribuir com o projeto.

A Fortiphyd Logic também criou um módulo personalizado para as 20 principais práticas seguras de codificação de PLC para , que fornece uma série de questionários de requisitos para ajudar as organizações a avaliar sua postura de segurança.