Testes de segurança em smart meters Rafael Cividanes*, Celso Saraiva, Bruno Botelho, Rafael de Biasi, Nelson Uto, Jefferson Capovilla, Sergio Ribeiro, Christiane Cuculo, Emílio Nakamura, Danilo Suiama, José Francisco Resende Os avanços tecnológicos na área de energia elétrica permitiram a implantação de diversas tecnologias relacionadas às arquiteturas de smart grid em diferentes países. Essas novas tecnologias representam um novo desafio para os respectivos governos e empresas do setor de energia elétrica. No cenário brasileiro, estabeleceu-se uma meta de renovação de todo o parque de medição, com a substituição de medidores eletromecânicos por modernos smart meters (medidores inteligentes). As modalidades de fraudes associadas a medidores eletromecânicos são bastante conhecidas e geralmente se restringem à violação física desses dispositivos. Com a chegada dos smart meters, que agregam um conjunto de características tecnológicas, a variedade de ataques torna-se mais ampla, incluindo ataques remotos a seus programas de firmware. Esse novo cenário exige a abordagem do tema segurança da informação, no escopo de medição inteligente, tanto pelas concessionárias de energia no Brasil como pelos fabricantes de smart meters e fornecedores de tecnologias AMI. Nesse contexto, foi concebido, por meio de uma parceria entre o CPqD e a Elektro, o projeto de P&D Aneel intitulado "Avaliação de segurança para medidores eletrônicos e de smart metering". Resultados importantes foram obtidos, de acordo com os direcionamentos da concessionária Elektro, que culminaram na implantação de dois laboratórios preparados para a execução de testes de intrusão e avaliação de segurança/confiabilidade desses novos medidores. Decorreram importantes contribuições no que tange à segurança e à robustez dos smart meters, à identificação de vulnerabilidades e de requisitos mínimos, à elaboração da Metodologia de Avaliação de Segurança em Smart Meters e ao contato com fabricantes para aprimoramento da segurança desses dispositivos. Palavras-chave: Cibersegurança em smart meters. Laboratório de segurança para pentest em smart Engenharia reversa de firmware. Vulnerabilidades em smart meters. meters. Plataforma de treinamento. Abstract Technological advances have enabled the deployment of several technologies related to smart grid architectures in different countries, representing a new challenge for their governments and utilities in the energy sector. In the Brazilian scenario, a goal has been set for renewing the entire metering structure and replacing old electromechanical meters with modern smart meters. Frauds related to electromechanical meters are well known and generally restricted to attacks or physical violation of these devices. With the introduction of smart meters, which offer a set of technological features, the variety of attacks becomes even wider, including remote attacks on smart meters' embedded firmware. This new scenario requires investments in information security related to smart metering by the electric power utilities in Brazil as well as by manufacturers and providers of smart meters and AMI technology. In this context, CPqD in a partnership with Elektro designed the Aneel R&D project, entitled "Electronic and Smart Meters Security Assessment." Key words: Smart meter cyber-security. Vulnerabilities in smart Security laboratory for smart meter pentest. Trainning Platform. Firmware reverse engineering. * Autor a quem a correspondência deve ser dirigida: [email protected]. Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 meters. Testes de segurança em smart meters 1 Introdução As tecnologias de smart grid proporcionam um conjunto de benefícios tanto para os consumidores como para as concessionárias de energia elétrica e o meio ambiente. No caso dos consumidores, possibilita a cobrança de tarifa diferenciada por horário (tarifa branca), melhor gestão do consumo residencial (ou comercial) e maior disponibilidade no fornecimento ininterrupto de energia elétrica. Para as concessionárias, entre seus inúmeros benefícios, destacam-se capacidade de gerenciamento remoto, automatização e balanceamento de carga, monitoramento contínuo e melhoramento da eficiência operacional. Já para o meio ambiente, as tecnologias de smart grid oferecem benefícios como redução significativa nos impactos ambientais, resultante da conservação de energia e da maior integração de geração renovável de energia. Todos esses benefícios são resultado de avanços e inovações tecnológicas que possibilitaram e continuam possibilitando a implantação de arquiteturas de smart grid no Brasil. Contudo, um aspecto da implantação de novas tecnologias merece sempre uma atenção especial: a segurança da informação aplicada ao novo ambiente e às novas tecnologias utilizadas. No caso das tecnologias de smart grid, isso não é diferente. De fato, inúmeras lacunas foram surgindo nos últimos anos e o tema cibersegurança em smart grid despontou como um tópico de alta relevância, sobretudo nas principais conferências hackers realizadas no âmbito internacional. A preocupação com a segurança relacionada ao ambiente de smart grid resultou em diversos investimentos no setor de energia, tanto no robustecimento das tecnologias adjacentes como em projetos de pesquisa e desenvolvimento. No cenário brasileiro de smart grid, outro fator importante para a aplicação de investimentos foi a meta da agência reguladora (Aneel) de renovação em massa dos medidores do parque atual, com a substituição dos medidores eletromecânicos convencionais pelos novos smart meters. Esses smart meters exercem um papel importantíssimo nas redes AMI (Advanced Metering Infrastructure) das concessionárias de energia, sendo que a opção por um medidor menos robusto, sobretudo nas circunstâncias atuais, pode representar impactos significativos para a concessionária e para todo o setor de energia no Brasil. Em vista desse cenário, foi concebido o projeto de P&D "Avaliação de segurança para medidores eletrônicos e de smart metering", executado com recursos financeiros da Aneel e 22 em parceria com a concessionária de energia Elektro. A Seção 2 deste artigo apresenta o escopo geral do projeto de P&D, incluindo atividades e metas. A Seção 3 expõe os resultados obtidos, segundo os tópicos: (3.1) Metodologia de Avaliação de Segurança em Smart Meters; (3.2) Laboratório de Certificação de Segurança de Smart Meters; (3.3) Testes de segurança de hardware; (3.4) Testes de segurança de software; (3.5) Testes de confiabilidade; e (3.6) Plataforma de testes – MeterGoat. Finalmente, a Seção 4 oferece algumas conclusões deste trabalho. 2 Escopo geral do trabalho de P&D A implantação de arquiteturas tecnológicas para medição inteligente exige investimentos em cibersegurança na rede AMI das concessionárias de energia. Em vista disso e com o objetivo de estabelecer um plano de investimentos em P&D no setor elétrico, o CPqD e a Elektro propuseram um projeto de P&D Aneel com foco no principal ativo das redes smart grid: os smart meters. Em face do cenário nacional de mudança do parque de medidores para atender à resolução da Aneel, uma pergunta relevante que as concessionárias de energia no País precisarão estar aptas a responder é: qual o grau de segurança e robustez dos medidores que serão implantados e/ou substituídos? Uma pesquisa preliminar, com a análise de iniciativas internacionais relacionadas ao tema, possibilitou identificar um conjunto de características tecnológicas dos smart meters implantados nos últimos anos em países da Europa, América do Norte e Ásia como parte de seus programas de smart grid. Dentre essas características analisadas, uma que exerce papel importante sobre esse projeto refere-se às necessidades de customizações dos firmwares embarcados nos medidores para cada país, como forma de atender às legislações específicas. Isso resulta em equipes locais com foco em desenvolvimento de firmware para medidores inteligentes, inclusive para fabricantes internacionais. Outras destas características tecnológicas podem ser encontradas nos trabalhos propostos pela ENISA (2012) e por SEARLE (2012). Esse estudo inicial contribuiu para a concepção de um programa nacional, segundo as características e peculiaridades do cenário de medição inteligente no Brasil. Foi feito um levantamento baseado em um cenário de ataques apresentado no âmbito do trabalho de P&D elaborado por Cividanes e autores (2013). De maneira mais ampla, buscou-se definir meios para que a Elektro e todas as Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 Testes de segurança em smart meters concessionárias do setor de energia no País pudessem avaliar, após a conclusão do projeto de P&D, os medidores eletrônicos e smart meters sob a ótica de segurança da informação e tomar decisões mais acertadas sobre os riscos inerentes ao uso de cada modelo oferecido por diferentes fabricantes. Nesse sentido, foram identificados três objetivos principais a serem alcançados na presente pesquisa: a) analisar e identificar vulnerabilidades de segurança aplicáveis aos medidores eletrônicos e de smart metering; b) conceber uma metodologia para a avaliação do grau de segurança e confiabilidade desses medidores, incluindo requisitos mínimos; c) estabelecer dois laboratórios para certificação de segurança em medidores de energia, um com foco em pesquisa de segurança (CPqD) e outro com foco em testes de segurança (Elektro). O projeto de P&D compreende três metas principais que englobam, no total, nove etapas de trabalho. A Figura 1 ilustra essas metas e etapas. É possível constatar que existe uma total sinergia entre os três objetivos acima expostos: o laboratório construído oferece o ambiente e os artefatos técnicos necessários para a realização das avaliações de segurança, que resultam na identificação de vulnerabilidades, e a metodologia implantada oferece uma forma padronizada de realizar as avaliações e os testes de segurança mencionados. As etapas da Meta 1 e as etapas da Meta 2 foram executadas em paralelo, uma com o objetivo de realizar a contextualização no âmbito de testes de segurança e confiabilidade, culminando com o estabelecimento da metodologia adotada, e a outra com o objetivo de estabelecer um laboratório pioneiro para a condução dos testes de intrusão realizados com os smart meters. A Meta 3 aborda o cerne deste trabalho de P&D, incluindo as etapas de testes (segurança e confiabilidade de hardware e software), de desenvolvimento do protótipo (MeterGoat e ferramentas relacionadas) e de transferência do conhecimento. A Seção 3 apresenta os principais resultados alcançados de acordo com cada uma das metas do trabalho de P&D. 3 Resultados Este projeto de pesquisa encontra-se na fase de finalização das etapas de testes de segurança, testes de confiabilidade e desenvolvimento do protótipo. Houve avanços significativos no que se refere à segurança de software e hardware dos dispositivos de smart metering. Entre esses avanços, podem ser citados os procedimentos de testes práticos desenvolvidos no âmbito do presente P&D para aferir o grau de robustez dos smart meters utilizados no cenário brasileiro. No momento da finalização do projeto, a Aneel e a Elektro poderão fazer a devida divulgação para uso pelas demais concessionárias de energia e fabricantes de medidores. É importante destacar que, no contexto internacional, raramente se divulga a forma como os ataques são efetuados por se tratar de um tema que impacta diretamente os montantes de arrecadação relacionados à distribuição de energia elétrica. Geralmente, as abordagens se referem às possibilidades e aos aspectos de fragilidade existentes. Assim, torna-se extremamente importante e relevante que cada país desenvolva internamente seus programas de P&D nesta área e divulgue organizadamente mecanismos de mitigação dos riscos associados. Figura 1 Escopo geral do projeto de P&D “Avaliação de segurança para medidores eletrônicos e de smart metering” Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 23 Testes de segurança em smart meters Esta seção apresenta os principais resultados alcançados no trabalho de P&D, subdivididos por área de pesquisa nas subseções apresentadas a seguir. 3.1 Metodologia de Avaliação Segurança em Smart Meters de A Meta 1 do projeto compreendeu o levantamento do estado da arte, a especificação do ambiente de testes e o desenvolvimento da Metodologia de Avaliação de Segurança em Smart Meters (MASME). Inicialmente, foi realizada uma ampla busca por projetos ou iniciativas semelhantes em outros países em fases mais avançadas de implantação das tecnologias de smart grid. A condensação dessas informações em um relatório técnico foi de suma importância para o desenvolvimento das atividades subsequentes. Nesse levantamento inicial, foram identificadas inúmeras ferramentas de software e hardware que pudessem ser úteis na realização de testes de intrusão nos smart meters. Dentre as ferramentas de hardware, estão inclusas desde elementos para realizar escuta de barramento até itens para realizar o dump físico das memórias não voláteis dos smart meters. No caso das ferramentas de software, o foco foi o uso de ferramentas de disassembly para diversos processadores utilizados pelos smart meters (INGUARDIANS, 2011). As informações desse levantamento foram utilizadas para a elaboração de uma especificação do ambiente de testes, que pode ser utilizada por outros institutos de pesquisa e universidades para a implantação de laboratórios aptos a fornecer os principais artefatos para a execução de testes de segurança em medidores de energia em geral. Essas especificações serão divulgadas pela Aneel e/ou Elektro tão logo seja finalizado este projeto. Por último, a Meta 1 abrangeu o desenvolvimento da MASME, que representa um resultado importante do projeto de P&D e gerou um pedido de patente depositado no INPI (Instituto Nacional da Propriedade Industrial). A MASME aborda a necessidade de medição do nível de segurança de cada tipo de medidor de energia para que seja possível traçar comparações com outros tipos de medidor. Os resultados dessas comparações são considerados parâmetros isolados da avaliação relacionada aos requisitos metrologicamente relevantes. O nível de segurança é um indicador que mede a propensão de materialização de ataques intrusivos que possam comprometer a integridade, confidencialidade e disponibilidade dos smart meters. A MASME discute também a necessidade de reduzir, ao máximo, o grau de subjetividade desses resultados para que seja possível afirmar, com certeza, que um medidor X é mais ou menos seguro do que um medidor Y. Além disso, outro parâmetro importante abordado na metodologia é a determinação do grau de risco de segurança no uso de determinado medidor em um contexto específico, com o objetivo de nortear e direcionar as decisões estratégicas da concessionária. O cálculo deste parâmetro considera, além dos aspectos relacionados às vulnerabilidades de segurança, os aspectos de uso específico realizado pela concessionária de energia com o medidor-alvo da análise. O macrofluxo da MASME é apresentado na Figura 2. Figura 2 Macrofluxo da MASME – Metodologia de Avaliação de Segurança em Smart Meters 24 Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 Testes de segurança em smart meters A MASME aplicação: compreende dois escopos de a) Homologação RTM de segurança (fluxo à direita na Figura 2); e b) Avaliação de Segurança esquerda na Figura 2). (fluxo à A Homologação RTM de segurança inclui um conjunto de testes intimamente relacionados ao Regulamento Técnico Metrológico 586 (INMETRO, 2012) do Inmetro, com o objetivo de garantir a segurança e a integridade do software legalmente relevante. Trata-se de testes voltados para a exatidão da medição, oriunda do funcionamento do software embarcado, para evitar que ultrapasse o número máximo de erros estabelecido na norma. A Avaliação de Segurança compreende a execução de testes de intrusão nos medidores, ou seja, procedimentos para deixar o medidor-alvo em um estado não previsto pelo fabricante, com um comportamento não previsto ou não planejado. Os escopos têm aplicações bastante diferenciadas. O primeiro tem como objetivo tratar o uso legal dos dispositivos, em conformidade com a regulamentação brasileira, e os aspectos de segurança do software embarcado nos smart meters. No segundo escopo, o objetivo é estabelecer o grau de robustez dos medidores, quanto à segurança do software e do hardware. Essa vertente é mais útil nas decisões relativas à aquisição de determinado tipo de medidor. Além disso, a MASME oferece um arcabouço geral para viabilizar avaliações padronizadas da robustez da segurança da informação que possibilitem traçar comparações entre diversos tipos de medidor. 3.2 Laboratório de Certificação Segurança de Smart Meters de De maneira geral, a questão da confiabilidade do software embarcado em sistemas de medições vem sendo discutida em inúmeras recomendações e normas, entre elas, a norma ISO/IEC TR 13233 (1995). Além disso, o National Physical Laboratory (WICHMANN, 2000) no Reino Unido e o National Institute of Standards and Technology (NIST, 2012) nos EUA têm publicado documentos sobre o tema. Em Saraiva e autores (2013) é apresentada uma análise dos principais aspectos de segurança metrológica e cibernética para medidores eletrônicos de energia. No âmbito da metrologia legal, o marco regulatório internacional ocorreu com o advento do documento OIML D31 (2008), cujo principal objetivo é oferecer orientação na definição de requisitos apropriados para o software relacionado a funcionalidades em instrumentos de medição incluídos nas recomendações da OIML (instrumentos objeto de regulamentação metrológica). O OIML D31 também tem como objetivo oferecer orientações aos Estadosmembros da OIML na aplicação das recomendações em suas leis nacionais, além de especificar os requisitos gerais aplicáveis às funcionalidades relacionadas ao software embarcado em instrumentos de medição, e fornecer orientações para a verificação do cumprimento desses requisitos. Entretanto, este trabalho não abrange todos os requisitos técnicos específicos a instrumentos de medição controlados por software e deve ser complementado com requisitos específicos ao medidor em questão, sendo também aplicável o documento que estabelece os requisitos gerais para instrumentos de medição eletrônica (OIML, 2011). Para medidores eletrônicos de energia, o Inmetro estabeleceu o RTM 586, em vigor desde janeiro de 2013 e em estreita sintonia com a recomendação OIML D31, cujos principais objetivos são: a) estabelecer os requisitos técnicos de software necessários ao processo de aprovação de modelo de sistemas/instrumentos de medição de energia elétrica controlados por software; b) garantir que o software legalmente relevante proporcione medidas corretas e dentro dos erros máximos admissíveis estabelecidos para os sistemas/instrumentos de medição de energia elétrica nas condições previstas no Regulamento Técnico Metrológico específico; c) garantir que o software legalmente relevante não seja afetado por outros softwares ou partes não legalmente relevantes. (INMETRO, 2012). O estabelecimento de laboratórios e o desenvolvimento de protocolos de teste e emulação de software embarcado em medidores para verificação de conformidade com requisitos metrológicos preconizados no RTM 586 não são atividades triviais e atualmente são objeto de estudo de inúmeros pesquisadores do Inmetro. A Elektro e a Fundação CPqD, através deste projeto de P&D, estão implantando laboratórios que serão utilizados para verificar não apenas as condições de adequação aos requisitos metrológicos preconizados no RTM 586 como também questões relacionadas à interoperabilidade sistêmica e à susceptibilidade a ataques cibernéticos em medidores de energia eletrônicos no cenário brasileiro. Os procedimentos em desenvolvimento preveem a emulação dos medidores em uma plataforma LabVIEW, cujo software aplicativo Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 25 Testes de segurança em smart meters está em fase final de desenvolvimento. Com base nesses protocolos de teste, será possível avaliar o desempenho do software segundo duas linhas: a) confronto de requisitos com a documentação técnica apresentada; e b) evidências operacionais com base em métricas obtidas pela emulação do medidor por vetores de teste. Em suporte aos procedimentos de testes laboratoriais, foi adquirido um conjunto de artefatos de hardware e software especializados, com o objetivo de proporcionar avaliações de confiabilidade e segurança segundo os regulamentos acima expostos. 3.3 Testes de segurança de hardware Os testes de segurança de hardware englobam todo e qualquer tipo de teste relacionado à camada física dos smart meters, geralmente executados com a abertura do medidor (quebra do lacre). Em medidores eletromecânicos convencionais, inúmeras fraudes de características físicas foram identificadas e registradas. Na verdade, era praticamente a única possibilidade para fraudar esse tipo de medidor. No caso de medidores eletrônicos, os testes de hardware geralmente são executados para extrair informações diretamente das placas e dos circuitos eletrônicos dos smart meters. Um dos principais objetivos desse tipo de teste é obter acesso ao firmware, software ou ferramentas residentes e a informações confidenciais armazenadas, como chaves criptográficas utilizadas na comunicação, senhas de configuração avançada, dados de medição, etc. Como a MASME aplica-se à execução de testes do tipo caixa-preta, os testes de hardware utilizam como informações de entrada somente o próprio dispositivo smart meter e informações de manuais, esquemáticos de hardware e PCBs (Printed Circuit Boards) disponíveis para acesso geral (não confidencial). Essas informações são importantes para auxiliar no entendimento geral do hardware do medidor-alvo e viabilizar acessos com a adulteração de componentes eletrônicos e o sniffing de circuitos. A execução dos testes de hardware antecede a execução dos testes de software, uma vez que testes de hardware geram insumo para testes de software. Um resultado bastante relevante obtido foi a constatação de que os smart meters, em grande parte, não são desenvolvidos com base no conceito de segurança por padrão (security by design), sobretudo no que se refere à segurança de hardware. Nesse sentido, com a utilização de modernas técnicas de hardware 26 hacking, é possível acessar informações importantes para a concretização de um ataque mais complexo. O acesso aos dados do firmware por extração direta das memórias é o primeiro passo para a execução de ataques lógicos de amplo espectro. Na execução dos testes de segurança de hardware são necessários alguns equipamentos e artefatos específicos. A maioria desses itens pode ser facilmente identificada e encomendada em sites especializados em adulteração e engenharia reversa de hardware. A composição dos equipamentos do Laboratório de Certificação de Segurança de Smart Meters incluiu a aquisição de todas essas ferramentas, de modo que os resultados obtidos foram plenamente satisfatórios, possibilitando identificar fragilidades nos medidores-alvo e acessar informações que, em princípio, não poderiam ou deveriam ser acessadas por um hacker. É importante mencionar que muitos desses mecanismos de ataque de hardware são efetivos, inclusive, em casos de controles na camada de software, que são mais comumente encontrados nos smart meters. 3.4 Testes de segurança de software Os testes de software incluem todos os testes direcionados para firmware, ferramentas, artefatos e informações lógicas dos smart meters. Ataques na camada de software podem atingir grandes proporções e ampla proliferação. No caso dos ataques físicos perpetrados em medidores, a fraude ocorre por meio de sua adulteração. No caso de um ataque na camada de software, a inserção de um nó (smart meter) vulnerável na rede AMI pode comprometer uma quantidade muito maior de nós (como, por exemplo, vírus de computadores). Dessa forma, os resultados obtidos nos testes de hardware são utilizados como insumo para a execução dos testes de segurança de software. Para obter acesso lógico ao medidor-alvo, é necessária a adoção do protocolo de autenticação para acesso administrativo ao medidor. Esse mecanismo, embora presente na maioria dos medidores analisados, muitas vezes não é utilizado pela concessionária de energia, ou seja, não é habilitado o controle, facilitando bastante o trabalho de um eventual hacker. Outro problema identificado é a implantação incorreta (vulnerável) do protocolo de autenticação utilizado em um medidor específico. Nesse caso, houve a redução do universo de senhas possíveis, o que possibilitou a descoberta da senha de acesso em aproximadamente três horas, enquanto o mesmo protocolo adequadamente implantado levaria, pelo menos, três anos para ser Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 Testes de segurança em smart meters quebrado. Esse trabalho foi publicado no âmbito deste projeto de P&D (UTO et al., 2014). Outro resultado relevante obtido na etapa de testes de software foi a realização de ataques contra os arquivos de gestão dos smart meters. Esses testes são executados no programa de configuração utilizado pelos técnicos de campo para a viabilização de algumas configurações avançadas, no caso de ocorrência de problemas. Esses programas de configuração precisam ser desenvolvidos com controles robustos para impedir seu uso indevido por parte de um hacker. Alguns desses programas de configuração chegam, inclusive, a utilizar chaves de hardware para aumentar o grau de segurança dessas configurações avançadas. Foi justamente nesse escopo (uso de chave de hardware) que foram executados testes de engenharia reversa em um programa de configuração específico, o que resultou na impersonalização do programa autêntico por outro, malicioso, desenvolvido com o propósito de ataque. Trata-se de outro resultado significativo obtido neste trabalho de P&D. Outros ataques de software também foram explorados como parte dos testes, como, por exemplo, acesso a dados desprotegidos armazenados, verificação de ausência de criptografia através de testes de entropia, testes de negação de serviço e comportamento não planejado do dispositivo, atualização maliciosa de firmware, captura de comunicação sem fio (wireless), engenharia reversa de firmware e software residentes no medidor, fuzzing via interface local de configuração, fuzzing de protocolo de rede, quebra de integridade de software, entre outros. Foram obtidos resultados variados nos testes, como: a) alguns medidores não apresentam mecanismo criptográfico para proteção de software armazenado, sendo empregada apenas codificação proprietária que facilita bastante a execução de ataques; b) as atividades de engenharia reversa de firmware, por padrão, envolvem custos bastante elevados e, caso a ferramenta de disassembly utilizada nos testes não ofereça suporte à arquitetura de processadores utilizada pelo medidor-alvo, esse tipo de teste torna-se ainda mais oneroso; c) os testes de entropia para detecção de uso de chaves criptográficas indicaram a não utilização desse recurso na maioria dos medidores analisados, o que leva à conclusão de que mecanismos criptográficos para transmissão de dados de medição baseiam-se estritamente em outros módulos, geralmente utilizando tecnologia GPRS. 3.5 Testes de confiabilidade A vertente de testes de confiabilidade foi concebida para a avaliação dos requisitos metrologicamente relevantes derivados do RTM 586 do Inmetro. Para a elaboração do roteiro de testes com uma amplitude mais adequada, também foi considerado, além do RTM 586, o Guia 7.2 do grupo de trabalho europeu WELMEC (2012), e o Guia D31, da OIML (2008). Há duas formas de levantar evidências de que o software embarcado em medidores eletrônicos de energia elétrica seja confiável: a análise da documentação do software embarcado no medidor, fornecida pelo fabricante, e a condução de testes funcionais. O foco dos testes de confiabilidade foi a criação de um roteiro de testes funcionais que permitisse avaliar a confiabilidade do medidor sem que fosse necessário analisar detalhadamente a documentação do software e abrir o medidor eletrônico de energia elétrica. Medidores de energia elétrica utilizam as medições de tensão e corrente como entradas, com base nas quais é derivada a potência elétrica e ao longo do tempo é calculada a energia elétrica. Os medidores eletrônicos, especificamente, apresentam muitos parâmetros que são usados como constantes em cálculos, como parâmetros de configuração, para estabelecer a funcionalidade do equipamento, entre outros. Assim, os testes de confiabilidade foram direcionados para manipulação dessas entradas e dos parâmetros dos medidores com o objetivo de encontrar algum ponto vulnerável que permitisse a alteração, intencional ou não, dos resultados da medição de energia elétrica. Uma forma de testar a confiabilidade da medição de energia elétrica é a inserção de ondas harmônicas nos terminais de entrada, verificando se há erros de medições decorrentes do uso de harmônicas pelo método de comparação com um medidor padrão calibrado. Dados corrompidos podem alterar os dados de medição ou prejudicar o funcionamento correto do medidor eletrônico. Esse comportamento foi verificado em laboratório de várias maneiras, como, por exemplo, na simulação de problemas durante a atualização do firmware do medidor, na geração de tráfego de informações na porta óptica do medidor e no monitoramento de seu comportamento simultaneamente. O principal resultado encontrado foi o erro da medição de energia elétrica quando inserida onda harmônica de 3a ordem nos terminais de entrada (fases A, B e C) do medidor. Alguns modelos apresentaram erros superiores aos 2% especificados pelo fabricante para energia Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 27 Testes de segurança em smart meters elétrica ativa, chegando a mais de 15% na leitura da medição de energia elétrica reativa. Também foram verificadas falhas: a) durante a atualização do firmware, que tornou o medidor inoperante até a reinstalação de nova imagem de firmware; e b) na proteção de parâmetros por senha, permitindo a alteração dos parâmetros de configuração do medidor. Como apoio aos testes de confiabilidade, está sendo desenvolvida uma ferramenta em LabVIEW que permitirá a comunicação entre o medidor eletrônico de energia elétrica e o computador (via porta óptica), bem como o envio e o recebimento de dados oriundos de comandos do protocolo de comunicação da norma ABNT NBR 14522 (2008). A ferramenta foi dividida em duas partes principais. A primeira parte refere-se à implantação dos comandos descritos na referida norma e à visualização da resposta do medidor aos comandos enviados. A segunda parte, que tornará a ferramenta inovadora em comparação a outras ferramentas existentes, refere-se à criação de funções para o suporte aos testes de confiabilidade. Essa segunda parte inclui funções como: a) quebra de senha por força bruta; b) envio de comandos sequenciais, limitados por tempo ou por número de comandos; c) script de teste; e d) cadastro de um novo comando. O desenvolvimento dessa ferramenta de apoio está em sua fase final. 3.6 Plataforma de testes – MeterGoat A execução de testes de intrusão em smart meters é uma tarefa que envolve diferentes tipos de conhecimento, incluindo tanto conceitos de segurança em hardware como também conceitos de segurança de software e sistemas embarcados. Essa tarefa envolve também o uso de ferramentas e equipamentos específicos para a identificação de vulnerabilidades que possam ser exploradas por eventuais hackers. Ainda, as tecnologias utilizadas em cada smart meter podem variar bastante, incluindo arquitetura de processadores, memórias, PCB, interfaces de comunicação externa, 28 barramentos, etc. Todos esses elementos conferem maior complexidade às avaliações de segurança desses novos medidores de energia. Com base nesses aspectos, julgou-se relevante o desenvolvimento de uma plataforma de testes para capacitação e exercícios práticos (hands on) de treinamento em segurança aplicada aos smart meters. Dessa forma, foi concebido o MeterGoat, uma plataforma open source composta por hardware de prateleira e baixo custo, e artefatos de software para a finalidade de ensino na área de smart meter pentesting. Esse trabalho foi publicado no âmbito deste projeto de P&D, conforme abordado por Capovilla e colaboradores (2014). O objetivo geral foi a implantação, de maneira vulnerável, das funcionalidades básicas de um medidor de energia, incluindo suas interfaces de comunicação externa (porta óptica), software embarcado (não necessariamente para medição de energia), protocolos de autenticação e demais mecanismos de controle. Assim, foi possível reunir, em uma única plataforma, um grande número de vulnerabilidades de hardware e software, facilitando o exercício prático de ataques para aplicação na capacitação de analistas de segurança. A arquitetura do MeterGoat, conforme Figura 3, baseia-se na arquitetura geral dos smart meters. Foram realizadas algumas simplificações, com o objetivo de reduzir o custo final e obter uma melhor modularização da plataforma, mas foram mantidas as principais vulnerabilidades identificadas nos dispositivos reais. O projeto de hardware inclui: a) microcontrolador MSP430F5438; b) kit de desenvolvimento, com display LCD e interface JTAG; c) gerador de pulsos programáveis para emular o sinal do sensor de voltagem/corrente, responsável pela medição do consumo de energia; d) mecanismos anti-tampering; e) memórias flash externas/EEPROM; f) interface óptica para comunicação; g) interface de rede; e h) interfaces de comunicação, como UART, USB, I2C, CAN, SPI, etc., que não fornecem proteção anti-tampering. Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 Testes de segurança em smart meters Figura 3 Arquitetura de alto nível do MeterGoat Além do arcabouço de hardware, que oferece um conjunto de vulnerabilidades (permitindo o acesso às informações armazenadas interna e diretamente nos dispositivos eletrônicos), também está sendo inserido um conjunto de vulnerabilidades na camada de software. Entre essas vulnerabilidades, destacam-se: a) interfaces desprotegidas, que permitem o dump de informações; b) uso de inseguros; algoritmos criptográficos 4 c) uso incorreto de criptografia; d) chaves criptográficas fracas; e) armazenamento inseguro de chaves criptográficas; f) dados desprotegidos em repouso; g) comunicação insegura; h) mecanismo de autenticação inseguro; i) falhas de autorização; j) implantação de falhas no nível do firmware; e k) mecanismo ineficiente. anti-tampering emprega um conjunto de ferramentas de software e de hardware adquiridas e implantadas no Laboratório de Certificação de Segurança de Smart Meters. É importante destacar que a finalidade desse protótipo não é a criação de um medidor de energia, mas tão somente a emulação das características principais, implantadas de maneira insegura, conforme mencionado anteriormente. Essa atividade encontra-se em fase final de desenvolvimento. fraco ou O treinamento, com a plataforma MeterGoat para capacitação de analistas de segurança, Conclusão O presente trabalho de pesquisa, realizado pelo CPqD em parceria com a concessionária de energia elétrica Elektro e financiado com recursos da Aneel, encontra-se em fase final de execução. Até o momento, foram publicados quatro artigos em eventos internacionais e foram realizadas duas apresentações em workshops nacionais para divulgação da pesquisa no contexto de segurança em smart meters. Destaca-se ainda que os resultados obtidos no trabalho de P&D aplicam-se não somente à Elektro, mas também a todas as concessionárias do setor elétrico no País. Dessa forma, a metodologia, os artefatos de software e hardware e os mecanismos para testes de intrusão desenvolvidos podem ser reaproveitados para aumentar o nível de Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014 29 Testes de segurança em smart meters segurança de todo o sistema de medição nacional. Este artigo apresentou, de maneira resumida, as metas, as atividades e os objetivos principais do projeto de P&D, abordando os resultados obtidos até o momento em cada frente de trabalho. As vulnerabilidades ou fragilidades identificadas nos diferentes medidores analisados serão condensadas em um relatório final, que será encaminhado à Aneel para divulgação coordenada e apropriada das informações, conforme estratégia do setor de energia. O protótipo desenvolvido para capacitação poderá ser utilizado, ao término do projeto, em atividades relacionadas a outras entidades e concessionárias, para difundir e ampliar os conhecimentos nessa área e aprimorar ainda mais a segurança na medição inteligente. NATIONAL INSTITUTE OF STANDARDS AND TECHNOLOGY (NIST). NISTIR 7823: Advanced Metering Infrastructure Smart Meter Upgradeability Test Framework, 2012. ORGANISATION INTERNATIONALE DE METROLOGIE LÉGALE (OIML). D31: General Requirements of Software Controlled Measuring Instruments. Paris, 2008. ______. D11: General requirements for measuring instruments – Environmental conditions. The Netherlands, 2011. SARAIVA, C. et al. A segurança metrológica e cibernética de medidores eletrônicos de energia: cenários e perspectivas. In: X SEMETRO: INTERNATIONAL CONGRESS ON ELECTRICAL METROLOGY, 10., 2013, Buenos Aires. Proceedings... SEARLE, J. UtiliSec. Dissecting Smart Meters. Trabalho apresentado no evento BLACK HAT EUROPE 2012. Referências ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS (ABNT). NBR 14522: Intercâmbio de informações para sistemas de medição de energia elétrica. Rio de Janeiro, 2008. CAPOVILLA, J. et al. MeterGoat: A Low Cost Hardware Platform for Teaching Smart Meter Security. In: INTERNATIONAL MULTICONFERENCE ON COMPUTING IN THE GLOBAL INFORMATION TECHNOLOGY, 9., 2014, Sevilha. Proceedings... Sevilha: IARIA 2014. p.180-184. CIVIDANES, R. et al. Smart Meters Security Assessment in the Brazilian Scenario. In: ENERGY 2013: THE THIRD INTERNATIONAL CONFERENCE ON SMART GRIDS, GREEN COMMUNICATIONS AND IT ENERGY-AWARE TECHNOLOGIES, 3., 2013, Lisboa. Proceedings... Lisboa: IARIA 2013. p.167-170. UTO, N. et al. A Fast Attack against a Smart Meter Authentication Protocol. In: IEEA 2014, INTERNATIONAL CONFERENCE ON INFORMATICS, ENVIRONMENT, ENERGY AND APPLICATIONS, 3., 2014, Shangai. Proceedings... Shangai: IACSIT Press, 2014, p.46-50. WELMEC. Guide 7.2: Software Guide (Measuring Instruments Directive 2004/22/EC), March 2012, Issue 5. WICHMANN, B. Software Support for Metrology – Best Practice Guide No. 1. Measurement System Validation: Validation of Measurement Software, April 2000. EUROPEAN NETWORK AND INFORMATION SECURITY AGENCY (ENISA). Smart Grid Security Recommendations, July 2012. INGUARDIANS, Inc. Advanced Metering Infrastructure Attack Methodology, March 2011. INSTITUTO NACIONAL DE METROLOGIA, QUALIDADE E TECNOLOGIA (INMETRO). Regulamento Técnico Metrológico, Portaria número 586, de 01 de novembro de 2012. INTERNATIONAL ORGANIZATION FOR STANDARDIZATION (ISO). ISO/IEC TR 13233: Information technology – Interpretation of accreditation requirements in ISO/IEC Guide 25 – Accreditation of Information Technology and Telecommunications testing laboratories for software and protocol testing services, 1995. 30 Cad. CPqD Tecnologia, Campinas, v. 10, n. 1, p. 21-30, jan./jun. 2014