Network Softwarization for IACS Security Applications

Notícias Opinião

por MIGUEL ROSADO BORGES DE FREITAS, Departamento de Engenharia Informática, Faculdade de Ciências e Tecnologia da Universidade de Coimbra

Este trabalho teve por principal objetivo explorar os paradigmas emergentes de redes definidas por software (Software-Defined Networks, SDN) e virtualização de funções de rede (Network Function Virtualization, NFV) para a criação de serviços de segurança avançados passíveis de serem aplicados a sistemas de automação e controlo industrial (Industrial and Automation Control Systems, IACS). Nesse âmbito, foi desenhada e desenvolvida uma plataforma SDN/NFV para aprovisionamento e gestão de versões virtualizadas das ferramentas de segurança usadas em IACS – respeitando os requisitos bastante especializados que estes cenários apresentam, ao nível de segurança, resiliência, latência, facilidade de gestão e proteção dos processos físicos sob controlo.

Para demonstrar as vantagens da abordagem proposta, foram também desenvolvidas quatro ferramentas de segurança virtualizadas: honeypots; data diodes; sistemas de deteção de intrusões; e segmentação lógica de redes – para além de mecanismos de gestão dos eventos gerados pelo controlador SDN. O trabalho foi desenvolvido na Universidade de Coimbra, sendo a validação experimental da solução efetuada nos testbeds de segurança da Israel Electric Corporation.

  1. CONTEXTO E OBJETIVOS
  2. OS DESAFIOS NA MONITORIZAÇÃO DOS IACS

Os IACS que monitorizam e controlam processos críticos como a produção e distribuição de energia (e.g. eletricidade, gás), ferrovias e linhas de produção fabril são, atualmente, amplamente implantados. Sendo originalmente concebidos como sistemas isolados, a introdução nos anos 90 dos Manufacturing Execution Systems forçou a sua integração com as redes corporativas, com o objetivo de otimizar a produção.



Esta interconetividade aumentou drasticamente a superfície de ataque disponível, conduzindo nos últimos anos ao aparecimento de vulnerabilidades e ciberataques de certa forma semelhantes aos que ocorrem no domínio geral. Porém, a consequências de ciberataques nestes sistemas podem ser muito mais severas, dadas as suas potenciais implicações físicas em serviços essenciais como energia e transportes. Com o desenvolvimento da Internet das Coisas, os IACS estão a tornar-se gradualmente mais descentralizados, geograficamente dispersos e com um número crescente de dispositivos conectados – frequentemente em contexto multi-tenancy.

Nos IACS, contrariamente ao que sucede nos Sistemas de Informação, a confidencialidade e a integridade são sacrificadas em prol da disponibilidade, sendo habitual encontrar dispositivos de controlo com décadas de operação (alguns obsoletos no que concerne aos updates de segurança) e protocolos SCADA sem qualquer mecanismo de encriptação

ou autenticação. Em geral, a rede destes IACS encontra-se segmentada em vários níveis com recurso a VLANs, firewalls e, nalguns casos, gateways unidirecionais (data diodes). Adicionalmente, estas redes usam mecanismos preventivos tais como Intrusion Dectection Systems (IDS) e honeypots, como forma de alertar o operador e evitar o uso de mecanismos automáticos de bloqueio – indesejáveis nestes cenários.

Dada a elevada capilaridade da presente geração de IACS, a monitorização da infraestrutura através do aprovisionamento de sondas de segurança torna-se extremamente complexa nas arquiteturas de rede tradicionais. Também o isolamento físico do equipamento de controlo, concomitantemente com o acesso a dados de telemetria – através da data diodes – representa custos bastante elevados.

  1. A IMPERATIVA MUDANÇA DE PARADIGMA

Nas redes IACS os planos de dados e de controlo estão fortemente acoplados em cada dispositivo de rede, sendo necessário o aprovisionamento físico de múltiplos equipamentos dedicados para monitorização. Os dispositivos são desenvolvidos por diferentes fabricantes, com protocolos proprietários e diferentes interfaces de configuração. A longo prazo, requerem treino especializado e são suscetíveis a erros de configuração que, em última instância, se traduzem em vulnerabilidades. A situação inversa (soluções “chave-na-mão”) força a infraestrutura a depender de um único fabricante, limitando o potencial de integração e inovação.

É também habitual a utilização de dispositivos de monitorização em-linha com o restante equipamento de rede. Como dispositivos ativos, levantam o problema do posicionamento físico na topologia de rede e introduzem latência na comunicação, violando os seus principais requisitos. As soluções de monitorização passiva (e.g. mirror ports), ainda que também úteis neste domínio, revelam pouca flexibilidade e escalabilidade: é comum que apenas uma única porta física possa ser definida como mirror sendo cada switch configurado a nível individual. É assim essencial explorar arquiteturas de rede alternativas, considerando a natureza distribuída dos sistemas IACS atuais e as suas necessidades de monitorização.

  1. OBJETIVOS DO TRABALHO

Neste trabalho propõe-se um novo paradigma para as redes IACS, aplicando valências de SDN e NFV a este domínio. O SDN define uma arquitetura de rede inovadora, na qual os planos de dados e de controlo se encontram desacoplados. Os switches de rede tornam-se simples dispositivos de encaminhamento, sendo as suas tabelas de fluxo populadas através de uma entidade (logicamente) centralizada – o controlador de rede. As redes SDN são programáveis na medidaem que as aplicações desenvolvidas no controlador podem instalar regras de fluxo nos switches da rede (quer de forma reativa ou proativa) recorrendo ao protocolo OpenFlow, através de um canal seguro de comunicação com o switch.



O NFV complementa o SDN por garantir a virtualização das funções de rede, permitindo que a monitorização de rede seja conseguida em ambientes virtualizados, consolidados em hypervisors de um edge datacenter localizado nas proximidades da infraestrutura de controlo.

 

  1. METODOLOGIA

Foi realizada uma análise exaustiva do estado da arte atual no que concerne à utilização de SDN e NFV para aplicações de segurança, tanto em IACS como noutros domínios. Esta análise teve como objetivo determinar até que ponto seria possível reutilizar alguma framework já existente considerando o âmbito do trabalho – concluindo-se que os trabalhos disponíveis são geralmente apenas conceptuais e/ou não preenchem na totalidade os requisitos de cenários IACS. Optou-se assim por propor e desenvolver uma plataforma própria, com recurso a um controlador SDN em cluster. Realizou-se uma comparação entre os principais controladores distribuídos (ONOS e OpenDayLight) focada em métricas de desempenho e disponibilidade, bem como na sua arquitetura interna e nos modelos de desenvolvimento de aplicações.

Foi realizado um levantamento formal de requisitos (use cases) junto de vários stakeholders desta área, bem como a documentação completa da arquitetura. A implementação da Prova-de-Conceito (PoC) da plataforma adotou boas práticas de desenvolvimento de software – e.g. execução automática de scanners de vulnerabilidades (OWASP) como parte integrante das pipelines de continuous integration and delivery.

Esta PoC incluiu o desenvolvimento de 7 aplicações SDN, implementadas diretamente na camada aplicacional de um controlador distribuído (ONOS). Ao usar um controlador em cluster, este trabalho apresenta inovações face ao estado da arte por utilizar a redundância entre nós e por evitar que o plano de controlo represente um ponto único de falha na infraestrutura – um aspecto imprescindível em IACS.

Usou-se uma abordagem proativa relativamente à instalação de regras, para minimizar a latência e a possibilidade de ataques Denial-of-Service ao controlador. Os vários dispositivos têm a sua mastership atribuída a diferentes nós do controlador, de modo a balancear ao máximo a carga de controlo na rede. Os serviços virtuais de segurança desenvolvidos foram pensados como aplicações abstratas que visam unicamente a programabilidade da rede independentemente da imagem em execução. É usada uma infraestrutura de virtualização (cluster) externa ao controlador e automaticamente orquestrada por este, para o deploy de serviços virtualizados. Esta virtualização recorre a containers, sendo as suas imagens armazenadas num registo seguro, acessível a partir da interface web da plataforma, podendo o operador escolher que fluxos monitorizar (e que imagem escolher), independentemente da localização dos hosts na rede. Foram virtualizadas três das aplicações mais utilizadas em IACS: Snort, Conpot e HoneyD. Este trabalho apresenta ainda outras inovações face ao estado da arte tais como o facto de recorrer a intent-based networking para criação de redes lógicas (multitenancy), utilizar o próprio controlador como ferramenta de segurança (reportando todos os eventos recebidos assincronamente na camada aplicacional), a utilização de Intel DPDK como userspace driver nos switches OpenFlow, bem como o próprio conceito de data diode virtual e a inerente conversão de protocolos bidirecionais (tais como o Modbus).

III. RESULTADOS E CONCLUSÕES

Numa primeira fase a validação da plataforma decorreu numa bancada experimental circunscrita, focada nos requisitos previamente definidos. A PoC apresentou um comportamento adequado aos exigentes requisitos impostos pelos cenários

de IACS, por exemplo em termos de tempo de deployment de novas ferramentas virtualizadas na rede (4 s), criação de novas redes lógicas (100 hosts em 91 ms), em termos de adaptação à perda de um nó do controlador SDN (2 s), em tempo de ativação de links redundantes (30 ms) e em tempo e ativação de um data diode virtual (500 ms). O data plane assegurou débitos de 943.6 Mbps em TCP e 769.7 Mbps em UDP (para um máximo teórico de 1 Gbps), não se notando diferenças significativas entre a capacidade obtida entre hosts e o tráfego replicado nas probes virtuais. Isto indica que, além das vantagens de flexibilidade e gestão, a virtualização dos serviços de segurança potenciada neste trabalho é comparável com as alternativas tradicionais, mantendo a equivalência funcional com os respetivos dispositivos físicos.

Posteriormente procedeu-se à validação da PoC no testbed alargado da Israel Eletric Corporation – com uma vasta lista de equipamentos físicos de IACS que reproduzem vários cenários de produção e distribuição de energia – num contexto continuado de gestão de segurança. A PoC encontra-se em funcionamento contínuo desde Setembro de 2018, dando suporte à monitorização da rede e à resposta a ciberataques efetuados pelas equipas de Penetration Testing.

Além da dissertação, este trabalho produziu um artigo focado no conceito de virtual data diode,1 contribuições para vários deliverables do projeto ATENA,2 e contribuições Open Source para o ONOS, 3 o Conpot4 e o OpenXENManager.5 Mais recentemente, a PoC serviu de base a uma análise da segurança do protocolo PCOM.6

 

Referências

1 M. Freitas, L. Rosa, T. Cruz, P. Simões. “SDN-Enabled Virtual Data-Diode”, CyberICPS’2018. Springer LNCS 11387, doi:10.1007/978-3-030-12786-2_7.

2 Deliverables D4.1, D4.2, D4.3, D4.4, D4.5, D4.6, D5.4, D6.3, D5.9, D4.7, D4.8, D7.4 do projeto ATENA (https://atena-h2020.eu)

3 https://gerrit.onosproject.org/#/c/18996/

4 https://github.com/mushorg/conpot/pull/415

5 https://github.com/OpenXenManager/openxenmanager/pull/132

6 L.Rosa, M.Freitas, S.Mazo, E.Monteiro, T.Cruz, P.Simões, A Comprehensive Security Analysis of a SCADA Protocol: from OSINT to Mitigation, accepted in IEEE Access (2019). doi:10.1109/ACCESS.2019.2906926

 

 

Trabalho vencedor da terceira edição do Prémio de Mérito AP2SI