Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation

Detalhes bibliográficos
Autor(a) principal: Mendes, Henrique Califórnia
Data de Publicação: 2018
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/10451/33928
Resumo: Tese de mestrado, Engenharia Informática (Arquitectura, Sistemas e Redes de Computadores) Universidade de Lisboa, Faculdade de Ciências, 2018
id RCAP_c8e23191aeff47d99d2a4c2bae556809
oai_identifier_str oai:repositorio.ul.pt:10451/33928
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Security auditing of a DLMS/COSEM Smart Grid communication protocol implementationProtocolo DLMS/COSEMSegurança da rede eléctrica inteligenteSegurança e privacidadeVulnerabilidadesInfraestruturas críticasTeses de mestrado - 2018Departamento de InformáticaTese de mestrado, Engenharia Informática (Arquitectura, Sistemas e Redes de Computadores) Universidade de Lisboa, Faculdade de Ciências, 2018Em anos recentes, empresas de utilidade pública e governos de diversos países têm vindo a promover a renovação e melhoria das infrastruturas de energia, de modo a aumentar a eficiência e funcionalidade da rede. As primeiras iterações da rede elétrica contavam apenas com contadores de electricidade locais que precisavam de ser lidos por um profissional no local. Os custos e falta de eficiência deste sistema foram as motivações principais para a evolução da tecnologia presente na rede. Com o avançar da tecnologia, tornou-se possível efectuar a leitura dos valores dos medidores remotamente, aumentando a eficiência da rede. A rede elétrica inteligente está prevista ser instalada num futuro próximo em muitos países existindo já países com regulações pertinentes que estipulam o tratamento, armazenamento, acesso e transporte dos dados. Esta rede será possível mediante a instalação de medidores inteligentes, capazes de comunicar com a rede e com outros dispositivos inteligentes presentes em habitações. Há contudo um receio justificado relativamente à introdução de problemas de segurança e privacidade, quer nos novos equipamentos que estarão fisicamente acessíveis em muitos casos, quer na rede em si, e da comunicação que nela irá ocorrer. O protocolo DLMS/COSEM é um protocolo especificamente desenvolvido para a smart grid, e é, de entre outras opções, o que tem vindo a ganhar mais popularidade devido principalmente a poder ser usado para a medição de energia, gás natural, ou água. A sua especificação separa os meios e tecnologias de comunicação da modelação dos medidores, dos seus dados e sua representação, o que permite que estas sejam desenvolvidas independentemente, permitindo assim que o protocolo se adapte à evolução assíncrona destas duas partes. Isto permite que o suporte seja extendido para suportar mais meios tecnológicos e pilhas de protocolos de comunicação que surgirão no futuro. Um dos meios que está a ser bastante considerado pela indústria eléctrica é o de power-line communication, devido à possibilidade de usar os próprios meios de distribuição de energia para comunicar com os equipamentos da rede. Este protocolo goza também da disponibilidade de variados mecanismos de segurança, nomeadamente cifra autenticada de modo a permitir confidencialidade e autenticidade nas comunicações, assinatura digital para garantir a integridade de dados, autenticação por chave pública de forma a permitir aos nós da rede definirem chaves criptográficas entre si, transporte de chaves criptográficas de forma segura, e compressão. Devido à natureza de necessidade crítica que representa para a sociedade, e em semelhança com a rede atual, o seu correcto funcionamento deve ser assegurado com elevada confiabilidade. Para este fim, é necessário aferir se os protocolos usados para comunicação na rede são seguros na sua especificação, e posteriormente comprovar que a implementação do protocolo usada cumpre essa especificação. Se a rede eléctrica inteligente for implementada de forma insegura, pode dar azo a uma panóplia de catástrofes, desde ataques à privacidade e espionagem, até à paralização de serviços críticos como hospitais e prejuízo económico elevado. A presente dissertação tem o intuito principal de avaliar a segurança do protocolo DLMS/COSEM, e de uma implementação do protocolo disponibilizada por um parceiro importante da indústria de energia eléctrica portuguesa. Para levar a cabo o objetivo da tese, numa primeira fase, foi analisada a especificação do protocolo, com ênfase na segurança. Foram analisados com rigor especial as secções pertinentes aos mecanismos de encriptação autenticada e de autenticação utilizados na comunicação DLMS/COSEM. Também, foi realizado um levantamento das vulnerabilidades e fraquezas do protocolo já descritas na literatura existente e foi verificado que algumas delas ainda não tinham sido corrigidas ou colmatadas na versão mais recente da especificação do protocolo. Por exemplo, a especificação ainda permite o uso de algoritmos criptográficos atualmente considerados inseguros ou fracos, o que pode levar a ataques de downgrade mesmo havendo opções de algoritmos criptográficos melhores na especificação. Verificou-se também que existia pouco trabalho científico em torno do assunto, perante a iminente chegada desta tecnologia aos mercados de energia eléctrica de muitos países. Para atingir esse objectivo foi desenhada a framework ValiDLMS, a qual é estratificada para a integração de ferramentas que permitem validar implementações quanto ao seu cumprimento da especificação do protocolo e testar a segurança das mesmas. Um protótipo da framework foi desenvolvido e avaliado usando tráfego DLMS/COSEM do referido parceiro. Numa segunda fase, e para atingir o objetivo de testar a implementação do protocolo segundo uma especificação, foi desenhada a plataforma arquitectural ValiDLMS, a qual é estratificada para a integração de ferramentas que permitem validar implementações do protocolo segundo a especificação e testar a segurança destas. Tal arquitectura foi desenhada com base no conhecimento adquirido da literatura relevante existente, nos conhecimentos adquiridos na observação da implementação que nos foi disponibilizada, e do processo de desenvolvimento de uma ferramenta usando a nossa arquitectura. A arquitectura funciona escutando a rede e analisando o tráfego capturado à procura de anomalias, podendo também gerar tráfego de modo a causar a ocorrência de anomalias que não seriam detectadas apenas por observação. Isto permite que ferramentas que sigam a arquitectura sejam usadas de modo passivo e activo, e também em ambientes reais para monitorização de uma rede de energia. A arquitectura ValiDLMS é composta por três camadas, nomeadamente, ambiente DLMS/COSEM, interacção, e teste. Esta estratificação permite maior facilidade de integração de ferramentas, sendo que estas posicionam-se de acordo com as funcionalidades das camadas. A camada de ambiente DLMS/COSEM representa o ambiente onde se encontra a implementação DLMS/COSEM a ser testada pela ferramenta, ou seja, onde estão incluídos os meios físicos de comunicação, medidores de energia eléctrica inteligente, e concentradores de dados. A camada de interação inclui dois componentes essenciais à interação da ferramenta com o ambiente DLMS/COSEM, um componente sniffer que consegue capturar todo o tráfego DLMS/COSEM que ocorre no ambiente a ser testado, e um componente DLMS client capaz de estabelecer ligações e interagir completamente com os equipamentos presentes no ambiente, executando as ordens que recebe da camada de teste. A camada de teste usa uma base de dados para gerar interacções pseudo-aleatórias de modo a causar um comportamento errado do sistema e expor vulnerabilidades que não poderiam ser encontradas através da mera observação e adicionalmente investiga a fundo todo o tráfego capturado.Tendo por base a arquitetura, foi construída uma ferramenta que comporta um add-on para o programa de análise de tráfego Wireshark, um dissecador de tráfego do protocolo DLMS/COSEM, e um validador da implementação do protocolo programado, validando-o quer em especificação, quer em segurança. Em execução a ferramenta analisa os pacotes capturados pelo Wireshark e são criados registos dos problemas de segurança e dos problemas de não cumprimento da especificação do protocolo detectados, de forma visível no Wireshark, permitindo assim uma análise eficiente. A ferramenta foi testada numa rede de teste do nosso parceiro da indústria de energia, constituída por dois concentradores de dados e seis medidores inteligentes. A ferramenta encontrou dois problemas nas mensagens DLMS/COSEM. Em mensagens de criação de ligações foi detectado um byte adicional entre campos da mensagem que não constava na especificação e que inicialmente dificultou a correcta interpretação da ferramenta. Adicionalmente, foi detectada uma palavra-chave de autenticação a ser transmitida em claro no tráfego capturado. A intercepção dessa chave por parte de um atacante permitiria a impersonificação do emissor, o que poderia ser usado para obter informações do uso de energia, ou mesmo enviar comandos para o equipamento da rede, dependendo das permissões do emissor original. Perante os resultados, a arquitectura desenvolvida apresenta o potencial desejado para ser utilizada na indústria, e para preencher o vácuo de investigação académica notado, quer em relação à segurança da rede eléctrica inteligente, quer em relação à segurança do protocolo DLMS/COSEM.The electrical grid is a critical infrastructure for modern society. It has been evolving into a smart(er) grid, allowing infrastructure aware decisions based on data collected in real-time from smart meters and other devices. This enables better monitoring and management solutions which would result in higher efficiency in matching generation and consumption. Smart meters and their uplinks have, however, limited physical security due to their location within customer premises. Many of the proposed smart grid communication protocols are also being evaluated because of other security and privacy concerns, which were raised mainly due to the high probability for misuse of the extended capabilities of smart meters. DLMS/COSEM is one of the emerging communication protocols designed for use in the smart grid, mainly for its energy-type-agnostic interface model, and the separation from the communication media which allows future expandability. The protocol allows remote interactions with smart meters, often being deployed above power-line communication links. The present dissertation aims to contribute to validity and security assessments of the DLMS/COSEM protocol and its implementations. In a first instance, an overview of the protocol is presented, followed by a compilation of information about the relevant vulnerabilities and attacks exposed in the existing literature. Then, we explain the design of our ValiDLMS framework, the first open source solution for validation and security auditing of DLMS/COSEM implementations using this communication profile. The framework was developed as an extension to Wireshark and was used to analyse an industry partner’s DLMS/COSEM implementation. The results show that ValiDLMS can effectively support the discovery of bugs and/or other non-conformance problems.Neves, Nuno Fuentecilla Maia Ferreira, 1969-Medeiros, Ibéria Vitória de Sousa, 1971-Repositório da Universidade de LisboaMendes, Henrique Califórnia2018-06-15T13:28:38Z201820182018-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10451/33928TID:201923017enginfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-11-08T16:28:54Zoai:repositorio.ul.pt:10451/33928Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T21:48:45.358342Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
title Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
spellingShingle Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
Mendes, Henrique Califórnia
Protocolo DLMS/COSEM
Segurança da rede eléctrica inteligente
Segurança e privacidade
Vulnerabilidades
Infraestruturas críticas
Teses de mestrado - 2018
Departamento de Informática
title_short Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
title_full Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
title_fullStr Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
title_full_unstemmed Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
title_sort Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
author Mendes, Henrique Califórnia
author_facet Mendes, Henrique Califórnia
author_role author
dc.contributor.none.fl_str_mv Neves, Nuno Fuentecilla Maia Ferreira, 1969-
Medeiros, Ibéria Vitória de Sousa, 1971-
Repositório da Universidade de Lisboa
dc.contributor.author.fl_str_mv Mendes, Henrique Califórnia
dc.subject.por.fl_str_mv Protocolo DLMS/COSEM
Segurança da rede eléctrica inteligente
Segurança e privacidade
Vulnerabilidades
Infraestruturas críticas
Teses de mestrado - 2018
Departamento de Informática
topic Protocolo DLMS/COSEM
Segurança da rede eléctrica inteligente
Segurança e privacidade
Vulnerabilidades
Infraestruturas críticas
Teses de mestrado - 2018
Departamento de Informática
description Tese de mestrado, Engenharia Informática (Arquitectura, Sistemas e Redes de Computadores) Universidade de Lisboa, Faculdade de Ciências, 2018
publishDate 2018
dc.date.none.fl_str_mv 2018-06-15T13:28:38Z
2018
2018
2018-01-01T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/10451/33928
TID:201923017
url http://hdl.handle.net/10451/33928
identifier_str_mv TID:201923017
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799134417782833152