Há festa na sua SCADA! Sim, está convidado(a)!

Não, não perdi a cabeça, mas sei, com certeza, o que poderia ser uma autêntica «festa» para os diversos funcionários de uma fábrica no caso de uma queda repentina (pirataria) das linhas de produção.

Veremos como facilmente poderia chegar a ser um ataque a uma indústria a partir do exterior (ou interior) e fazer «dançar» todos os trabalhadores de uma fábrica.

Vamos estruturar este ciberataque com uma simples metodologia:

Recolha de informação

Trata-se de um ataque premeditado, portanto, o nosso atacante conhece as nossas OT (Tecnologias operativas).

Mas… Como é possível? A minha empresa tem segurança privada, ninguém externo pode aceder sem acreditação.

É muito provável que os seus dispositivos estejam expostos à Internet e sejam indexados por portais de IoT como Shodan.

Não vou maça-los com o que é o Shodan, mas para utilizadores de «base», é como o Facebook, mas em vez que procurar pessoas, procura endereços ligados à Internet, quer seja pela sua marca, modelo, IP/Host, nome da empresa, país, etc.

Voltando ao caso desta fábrica, vamos verificar que informação pôde averiguar o «mal virtual».

Nas instalações, existe pelo menos um PLC ligado à Internet, façamos zoom:

O atacante cibernético revelou um PLC Siemens Simatic S7-300 a funcionar na nossa fábrica e com uma versão vulnerável sem correção (patch).

Imagem de um PLC Siemens Simatic S7-300

Procura de vulnerabilidades

Nesta fase, o atacante irá procurar por falhas de segurança ou exploits que possa utilizar para atacar o nosso PLC.

Como podemos ver, este PLC tem graves vulnerabilidades:

  1. Ataque remoto de Denegação de serviços (DoS): Este ataque deixaria o PLC KO no ato, parando a linha de produção em funcionamento podendo provocar um acidente ou mesmo uma avaria noutras áreas da linha.
  2. Visor remoto de memória: O ataque utiliza uma porta traseira no dispositivo para descarregarmos os dados da memória do PLC.
    Isto é útil para saber mais sobre as ações configuradas que a máquina pirateada possui, poderíamos modificar estas ações e carregá-las de novo no PLC para desconfigurar a linha ou provocar danos maiores (um acidente laboral, rutura mecânica da linha, alterações de aplicações químicas no material, redução da velocidade da produção, etc.).
  3. Arranque e paragem da CPU: Aqui não há muito que explicar, para e arranca da linha com um só comando remoto.

Exploração de vulnerabilidades

Graças aos resultados obtidos nas fases anteriores, o atacante já tem todo o que necessita para poder atacar o nosso dispositivo e fazer «dançar» todo o turno.

Mãos à obra?

Coloquemo-nos na pele do criminoso cibernético, faremos uma simulação da exploração de algumas das vulnerabilidades encontradas:

Nota: As simulações foram realizadas com um PLC Siemens S7-300, em local e ambiente controlados.

INFRMAÇÃO DO DISPOSITIVO

IP do PLC:

Informação do PLC:

Como podemos observar na imagem, o PLC tem a proteção de leitura e escrita protegida com palavra-passe mas não tem a palavra-passe ativada para aceder a este.

Ataque remoto de Denegação de serviços (DoS)

Embora exista um exploit para efetuar a denegação de serviços, não é possível a sua utilização neste caso, já que o exploit funciona através da porta 80 e este PLC tem a porta fechada.

Dito isto, também não podemos usar o exploit do Visor remoto de memória, já que também requer ter a porta 80 levantada.

Assim que utilizando o payload do exploit publicado, tive de improvisar um para deixar o PLC KO.

 

Arranque e paragem da CPU

Conforme referido anteriormente, este ataque permite que um atacante possa arrancar e parar o PLC de modo remoto.

Ao desligar o PLC

Ataque a partir da máquina do atacante

Exemplo de um PLC parado

Ao ligar o PLC

Ataque a partir da máquina do atacante

Exemplo de um PLC a arrancar

 

O que este problema representaria para um setor industrial?

  • Causar acidentes laborais.
  • Perda de dinheiro por falta de disponibilidade das máquinas.
  • Bloqueio nas restantes secções das instalações.
  • Bloqueio na logística por não dispor de material para carregar.
  • Atrasos nos pedidos por falta de stock.
  • Má reputação e imagem da empresa perante o público.
  • Despesa com horas extras com os funcionários para aumentar a disponibilidade com mais linhas de produção em funcionamento.

A culpa é do fabricante?

Não, nem sempre a culpa é do fabricante, neste exemplo utilizamos um dispositivo da Siemens, que é uma das grandes marcas de PLCs do mercado, é uma empresa que se preocupa muito em matéria de segurança, lançamento de correções (patches) quando são encontradas vulnerabilidades e durabilidade dos seus produtos.

Por isso temos de ter maior consciência em proteger os nossos sistemas SCADA, principalmente aplicando as respetivas correções, protegendo os equipamentos, segmentando a rede, realizando auditorias relevantes e dispondo do serviço de SOC que monitorize a nossa rede para detetar e evitar invasões e comportamentos anormais.

Como pôde isto ter acontecido?

Da mesma forma que os nossos equipamentos e sistemas operativos necessitam de correções e atualizações para nos mantermos estáveis e seguros, os nossos dispositivos (PLCs, RTUs, HMIs…) também necessitam dos nossos cuidados.

Compreendemos a dificuldade em manter os sistemas operativos e software de acordo com a última versão no setor industrial, e embora existam tecnologias para muitos casos, não está em nossas mãos realizar uma atualização por incompatibilidade entre sistemas operativos e software, software com PLCs, etc.

Além disso, tal implicaria a detenção das linhas de produção, o que conduziria a custos de paragem, falta de stock e até mesmo perdas temporárias de qualidade.

Alternativamente, existem tecnologias que podem realizar uma correção virtual que protege os sistemas operativos ou componentes de software comuns contra vulnerabilidades que possam ser exploráveis, colocando em risco as instalações.

Na Sothis analisamos e estudamos as necessidades de cada cliente de modo a oferecer-lhe um serviço à medida, que o permite modernizar e assegurar o seu sistema SCADA com o objetivo de evitar problemas de cibersegurança que podem resultar em interrupções de produção, roubo de informação industrial ou até mesmo evitar problemas de segurança laboral nas instalações contra ameaças para continuar a trabalhar de uma forma segura.