Security auditing of a DLMS/COSEM Smart Grid communication protocol implementation
Autor(a) principal: | |
---|---|
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 |