Perguntas freqüentes sobre segurança do protocolo LoRaWAN

Segurança LoRaWAN


O LoRaWAN é um protocolo de rede de longo alcance e baixa potência (Low Power, Wide Area - LPWA) projetado para conectar sem fio dispositivos alimentados por bateria à Internet local ou global e fornecer os principais requisitos da Internet das Coisas (IoT - Internet of Things), como comunicação bidirecional, segurança de conexão, mobilidade, etc.

A segurança é uma prioridade para qualquer desenvolvimento de IoT. A especificação LoRaWAN define dois níveis de proteção criptográfica:

  • uma chave de sessão de rede exclusiva de 128 bits compartilhada entre o dispositivo terminal e o servidor de rede;
  • chave de sessão de aplicativo exclusiva de 128 bits (AppSKey - Application Session Key) comum de ponta a ponta no nível do aplicativo.

Os algoritmos AES são usados ​​para fornecer autenticação e integridade de pacotes em um servidor de rede e para criptografia de ponta a ponta no nível do servidor de aplicativos. O fornecimento desses dois níveis permite implementar redes compartilhadas com vários locatários, nas quais a operadora de rede não tem a capacidade de visualizar dados de carga útil do usuário.

As chaves podem ser ativadas através da personalização (ABP - Ativado por personalização) na linha de produção ou durante o comissionamento, ou podem ser ativadas através da rede (OTAA - Ativado pelo ar) no campo. O método de ativação OTAA permite que o dispositivo altere as chaves conforme necessário.

Perguntas frequentes sobre segurança


Onde estão descritos os mecanismos de segurança do protocolo LoRaWAN?


Todos os mecanismos de proteção estão descritos nas especificações da LoRa Alliance, que podem ser baixadas em seu site. No momento, você pode fazer o download da versão 1.0.xe essas respostas são baseadas nela. Em desenvolvimento está o lançamento 1.1.

Como a especificação LoRa Alliance protege redes LoRaWAN?


O LoRaWAN suporta autenticação original, integridade e proteção de reprodução em todo o quadro MAC (Media Access Control). Ele também permite a criptografia de ponta a ponta da carga útil do aplicativo entre o terminal e sua resposta no lado da rede (chamado servidor de aplicativos na versão 1.1). O LoRaWAN suporta um modo de operação que permite criptografar comandos MAC.

Todos esses procedimentos dependem do AES Advanced Encryption Standard e usam chaves criptográficas e algoritmos de 128 bits.

Existem diferenças entre os modos ABP e OTAA em termos de segurança da informação?


LoRaWAN usa chaves raiz estáticas e chaves de sessão geradas dinamicamente.
As chaves raiz são fornecidas apenas nos dispositivos OTAA. Eles são usados ​​para obter chaves de sessão quando o terminal OTAA executa o procedimento de junção. Um dispositivo de terminal no modo OTAA, quando instalado no campo, pode se conectar a qualquer rede que tenha uma saída para um servidor principal (na Versão 1.1, ingressar em um servidor) à qual o dispositivo de terminal está conectado. As chaves de sessão obtidas dessa maneira já são usadas pelos dispositivos terminais para proteger o tráfego aéreo.

Os dispositivos ABP não usam chaves raiz. Em vez disso, eles são fornecidos com um conjunto de chaves de sessão para uma rede pré-selecionada. As chaves da sessão permanecem inalteradas durante toda a vida útil do dispositivo ABP.

A capacidade de alterar as chaves da sessão torna os dispositivos OTAA mais adequados para aplicativos que exigem um nível mais alto de segurança.

Qual é a identidade do LoRaWAN?


Cada dispositivo terminal é identificado por um número exclusivo global de 64 bits (EUI - Extended Unique Identifier), atribuído pelo fabricante ou pelo proprietário do dispositivo terminal. A atribuição de números EUI exige que o cedente tenha um OUI (Identificador Único Organizacional) exclusivo da autoridade de registro IEEE.

Cada servidor de ingresso que usa autenticação de terminal também é identificado por uma EUI global de 64 bits, atribuída pelo proprietário ou pelo operador deste servidor.

As redes LoRaWAN abertas e as redes privadas que “se comunicam” com LoRaWANs abertas são identificadas por um identificador exclusivo de 24 bits atribuído pela LoRa Alliance.

Quando o dispositivo do terminal é conectado à rede com sucesso, ele recebe o endereço temporário de 32 bits atribuído pela rede.

Posso atribuir números aos meus dispositivos ou redes aleatoriamente?


Não. A pergunta anterior descreveu regras de atribuição para cada tipo de identificador. Se você não seguir essas regras, poderá haver uma coincidência de números e comportamento imprevisível durante a implantação da sua rede (semelhante ao que pode acontecer se você usar os mesmos endereços Ethernet Ethernet em dispositivos diferentes conectados à mesma LAN).

Todos os dispositivos terminais que estão fora de produção têm a mesma chave criptográfica "padrão"?


Não. LoRaWAN não tem o conceito de uma “chave padrão” ou uma “senha padrão”. Todos os dispositivos terminais possuem chaves exclusivas, mesmo na saída da produção. Portanto, uma única chave comprometida de um dispositivo terminal não afetará outros dispositivos de forma alguma.

Que tipo de chaves criptográficas são usadas?


Os pontos de extremidade do OTAA têm chaves raiz chamadas AppKeys (Chaves Raiz do Aplicativo). No lado da rede, as chaves da AppKey estão localizadas no servidor Ingressar, que pode ou não ser um servidor de rede ao mesmo tempo.

Os terminais ABP possuem duas chaves de sessão AppSKey e NwkSKey (Chave de sessão de rede). No lado da rede, o NwkSKey está localizado no servidor de rede e o AppSKey no servidor de aplicativos.

Os procedimentos usados ​​para fornecer às chaves listadas todos os elementos de rede necessários (dispositivo terminal, servidor Join, servidor de rede, servidor de aplicativos) estão fora do escopo da especificação LoRaWAN.

Quais algoritmos de criptografia são usados?


O algoritmo AES-CMAC descrito em RFC4493 é usado para autenticação original e proteção de integridade. O algoritmo AES-CCM descrito em IEEE 802.15.4-2011 é usado para criptografia.

Como o LoRaWAN impede você de ouvir?


Os dados MAC são criptografados entre o dispositivo terminal e a rede no momento da transmissão pelo ar. Além disso, a carga útil é criptografada entre o dispositivo terminal e o servidor de aplicativos (a chamada criptografia de ponta a ponta). Isso garante que apenas objetos autorizados que contenham chaves de criptografia possam acessar o conteúdo do pacote.

Como o LoRaWAN impede a falsificação de dados?


A integridade e a autenticação dos dados MAC são protegidas pelo campo do pacote, que contém o código MIC (Message Integrity Code) conhecido pelo dispositivo e pela rede do terminal. Isso garante que apenas objetos autorizados que contenham chaves de integridade (ou seja, dispositivo terminal e servidor de rede) possam gerar mensagens válidas.

Como o LoRaWAN desencoraja retransmissões?


A proteção de integridade de dados MAC usa contadores de mensagens para garantir que o destinatário não aceite uma mensagem já recebida (ou seja, potencialmente retransmitida).

O LoRaWAN suporta a proteção da carga útil de aplicativos?


O LoRaWAN fornece criptografia de carga útil de aplicativo de ponta a ponta entre o dispositivo terminal e o servidor de aplicativos. A proteção de integridade é fornecida em sua estrutura de salto a salto: um salto no ar através da proteção de integridade LoRaWAN e outro salto entre o servidor de rede e o servidor de aplicativos usando tecnologias de transmissão segura, como HTTPS e VPN. Os aplicativos que exigem proteção de integridade de ponta a ponta são incentivados a fazer o mesmo com sua carga útil.

Como as interfaces de back-end são protegidas?


As interfaces de back-end estão envolvidas no gerenciamento e na troca de dados entre servidores de rede, servidores Join e servidores de aplicativos. As tecnologias HTTPS e VPN são recomendadas para proteger a troca de dados entre esses elementos críticos da infraestrutura, na mesma medida em que são implementados em outros sistemas de telecomunicações. As interfaces de back-end estão fora do escopo da especificação LoRaWAN.

O LoRaWAN suporta proteção de hardware?


Melhorar a segurança dos dispositivos terminais e plataformas de servidor em termos de hardware (elementos de segurança ou módulos de segurança) está relacionado a questões de implementação de equipamentos e não está relacionado à interoperabilidade de protocolos visando à qualidade da comunicação, incluindo o LoRaWAN. No entanto, o uso de tais soluções técnicas é compatível com a especificação LoRaWAN e pode ser implementado pelo desenvolvedor de acordo com os requisitos do aplicativo.

O que devo fazer se encontrar um risco de segurança?


Em geral, um risco à segurança pode surgir por um dos três motivos ou combinações:

  • especificação (por exemplo, falta de proteção contra repetições),
  • implementação (por exemplo, extrair uma chave de um dispositivo),
  • Implantação (por exemplo, a falta de telas protetoras).

O primeiro passo é estabelecer a causa. Se o motivo estiver na especificação, escreva ajuda na LoRa Alliance para enviar por correio. Para perguntas sobre a venda de equipamentos, entre em contato com o fabricante.
E os problemas de implantação são decididos pelos operadores de rede LoRaWAN.

Fonte

Source: https://habr.com/ru/post/pt462353/


All Articles