Arquitetura de segurança para soluções de IoT

Ao projetar e arquitetar uma solução de IoT, é importante entender as ameaças potenciais e incluir as defesas apropriadas. Entender como um invasor pode comprometer um sistema ajuda você a garantir que as mitigações apropriadas estejam em vigor desde o início.

Modelagem de ameaças

A Microsoft recomenda o uso de um processo de modelagem de ameaças como parte do design da solução de IoT. Se você não estiver familiarizado com a modelagem de ameaças e o ciclo de vida de desenvolvimento seguro, consulte:

Segurança na IoT

É útil dividir sua arquitetura de IoT em várias zonas como parte do exercício de modelagem de ameaças:

  • Dispositivo
  • Gateway de campo
  • Gateway de nuvem
  • Serviço

Cada zona geralmente tem seus próprios dados e requisitos de autenticação e autorização. Você também pode usar zonas para isolar danos e restringir o impacto de zonas de baixa confiança em zonas de confiança mais altas.

Cada zona é separada por um limite de confiança, mostrado como a linha vermelha pontilhada no diagrama a seguir. Ele representa uma transição de dados de uma fonte para outra. Durante essa transição, os dados podem estar sujeitos às seguintes ameaças:

  • Falsificação
  • Adulteração
  • Repúdio
  • Divulgação de informações confidenciais
  • Negação de serviço
  • Elevação de privilégio

Para saber mais, consulte o modelo STRIDE.

A diagram that shows the zones and trust boundaries in a typical IoT solution architecture.

Você pode usar o STRIDE para modelar as ameaças a cada componente dentro de cada zona. As seções a seguir trazem mais detalhes sobre cada um dos componentes, assim como informações sobre problemas de segurança específicos e as soluções correspondentes.

O restante deste artigo discute as ameaças e atenuações para essas zonas e componentes com mais detalhes.

Zona do dispositivo

O ambiente do dispositivo é o espaço ao redor do dispositivo onde o acesso físico e o acesso digital à rede local ao dispositivo são viáveis. Assume-se que uma rede local é distinta e isolada – mas potencialmente conectada – à internet pública. O ambiente do dispositivo inclui qualquer tecnologia de rádio sem fio de curto alcance que permite a comunicação ponto a ponto dos dispositivos. Ele não inclui nenhuma tecnologia de virtualização de rede criando a ilusão de tal rede local. Ele não inclui redes de operadoras públicas que exigem que dois dispositivos se comuniquem através do espaço de rede pública se eles entrarem em uma relação de comunicação ponto a ponto.

Zona do gateway de campo

Um gateway de campo é um dispositivo, dispositivo ou software de computador servidor de uso geral que atua como ativador de comunicação e, potencialmente, como um sistema de controle de dispositivo e hub de processamento de dados de dispositivo. A zona do gateway de campo inclui o próprio gateway de campo e todos os dispositivos conectados a ele. Os gateways de campo atuam fora de instalações de processamento de dados dedicadas, geralmente estão vinculados à localização, estão potencialmente sujeitos a intrusão física e têm redundância operacional limitada. Um gateway de campo é normalmente uma coisa que um invasor poderia sabotar fisicamente se obtivesse acesso físico.

Um gateway de campo difere de um roteador de tráfego por ter tido uma função ativa no gerenciamento do acesso e do fluxo de informações. O gateway de campo tem duas áreas de superfície distintas. Um está voltado para os dispositivos conectados a ele e representa o interior da zona. O outro enfrenta todas as partes externas e é a borda da zona.

Zona de gateway de nuvem

Um gateway de nuvem é um sistema que permite a comunicação remota de e para dispositivos ou gateways de campo implantados em vários sites. O gateway de nuvem normalmente habilita um sistema de controle e análise de dados baseado em nuvem ou uma federação desses sistemas. Em alguns casos, um gateway de nuvem pode imediatamente facilitar o acesso a dispositivos de finalidade especial de terminais, como telefones ou tablets. Na zona de gateway de nuvem, as medidas operacionais impedem o acesso físico direcionado e não são necessariamente expostas a uma infraestrutura de nuvem pública.

Um gateway de nuvem pode ser mapeado em uma sobreposição de virtualização de rede para isolar o gateway de nuvem e todos os seus dispositivos conectados ou gateways de campo de qualquer outro tráfego de rede. O gateway de nuvem em si não é um sistema de controle de dispositivo ou uma instalação de processamento ou armazenamento de dados de dispositivo; Essas instalações fazem interface com o Cloud Gateway. A zona de gateway de nuvem inclui o próprio gateway de nuvem juntamente com todos os gateways de campo e dispositivos conectados diretamente ou indiretamente a ele. A borda da zona é uma área de superfície distinta através da qual todas as partes externas se comunicam.

Zona de serviços

Um serviço nesse contexto é qualquer componente ou módulo de software que faz interface com dispositivos por meio de um gateway de campo ou nuvem. Um serviço pode coletar dados dos dispositivos e comandar e controlar esses dispositivos. Um serviço é um mediador que atua sob sua identidade em relação a gateways e outros subsistemas para:

  • Armazenar e analisar dados
  • Emitir comandos para dispositivos com base em insights de dados ou agendamentos
  • Expor informações e recursos de controle para usuários finais autorizados

Dispositivos IoT

Os dispositivos IoT geralmente são dispositivos especiais que variam de simples sensores de temperatura a linhas de produção de fábrica complexas com milhares de componentes dentro deles. Exemplos de recursos de dispositivos IoT incluem:

  • Medição e comunicação das condições ambientais
  • Válvulas de torneamento
  • Controlando servos
  • Soar alarmes
  • Acender ou apagar luzes

A finalidade desses dispositivos dita seu projeto técnico e o orçamento disponível para sua produção e operação de vida útil programada. A combinação desses fatores restringe o orçamento de energia operacional disponível, o espaço ocupado físico e os recursos de armazenamento, computação e segurança disponíveis.

As coisas que podem dar errado com um dispositivo IoT automatizado ou controlado remotamente incluem:

  • Defeitos físicos
  • Defeitos lógicos de controle
  • Intrusão e manipulação intencionalmente não autorizadas.

As consequências dessas falhas podem ser graves, como lotes de produção destruídos, edifícios incendiados ou ferimentos e morte. Portanto, há uma barra de alta segurança para dispositivos que fazem as coisas se moverem ou que relatam dados do sensor que resultam em comandos que fazem com que as coisas se movam.

Controle de dispositivos e interações de dados do dispositivo

Dispositivos de finalidade especial conectados têm um número significativo de áreas de superfície de interação potencial e padrões de interação, que devem ser considerados para fornecer uma estrutura para proteger o acesso digital a esses dispositivos. O acesso digital refere-se a operações que são realizadas por meio de software e hardware e não por meio de acesso físico direto ao dispositivo. Por exemplo, o acesso físico poderia ser controlado colocando o dispositivo em uma sala com uma fechadura na porta. Embora o acesso físico não possa ser negado por meio de hardware e software, é possível adotar medidas para impedir que o acesso físico resulte na interferência do sistema.

Ao explorar os padrões de interação, dê ao controle de dispositivo e os dados de dispositivo a mesma atenção. Controle de dispositivo refere-se a qualquer informação fornecida a um dispositivo com a intenção de modificar seu comportamento. Dados do dispositivo referem-se às informações que um dispositivo emite para qualquer outra parte sobre seu estado e o estado observado de seu ambiente.

Modelagem de ameaças para a arquitetura de referência do Azure IoT

Esta seção usa a arquitetura de referência do Azure IoT para demonstrar como pensar na modelagem de ameaças para IoT e como lidar com as ameaças identificadas:

Diagram that shows the Azure IoT reference architecture.

O diagrama a seguir fornece uma exibição simplificada da arquitetura de referência usando um modelo de diagrama de fluxo de dados:

A data flow diagram derived from the Azure IoT reference architecture.

A arquitetura separa os recursos do dispositivo e do gateway de campo. Essa abordagem permite que você use dispositivos de gateway de campo mais seguros. Os dispositivos de gateway de campo podem se comunicar com o gateway de nuvem usando protocolos seguros, que normalmente exigem maior poder de processamento do que um dispositivo simples, como um termostato, poderia fornecer por conta própria. Na Zona de Serviços do Azure no diagrama, o serviço Hub IoT do Azure é o gateway de nuvem.

Com base na arquitetura descrita anteriormente, as seções a seguir mostram alguns exemplos de modelagem de ameaças. Os exemplos se concentram nos elementos principais de um modelo de ameaça:

  • Processos
  • Comunicação
  • Armazenamento

Processos

Aqui estão alguns exemplos de ameaças na categoria processos. As ameaças são categorizadas com base no modelo STRIDE:

Falsificação: um invasor pode extrair chaves criptográficas de um dispositivo, seja no nível de software ou hardware. O atacado usa essas chaves para acessar o sistema de um dispositivo físico ou virtual diferente, usando a identidade do dispositivo original.

Negação de Serviço: um dispositivo pode ficar incapaz de funcionar ou de se comunicar interferindo em frequências de rádio ou cortando fios. Por exemplo, uma câmera de vigilância que teve sua energia ou conexão de rede intencionalmente derrubada não pode relatar dados, de forma alguma.

Violação: um invasor pode substituir parcial ou totalmente o software no dispositivo. Se as chaves criptográficas do dispositivo estiverem disponíveis para o código dos invasores, ele poderá usar a identidade do dispositivo.

Adulteração: Uma câmera de vigilância que está mostrando uma imagem de espectro visível de um corredor vazio pode ser apontada para uma fotografia de tal corredor. Um sensor de fumaça ou incêndio pode relatar alguém segurando um isqueiro sob ele. Em ambos os casos, o dispositivo pode ser tecnicamente totalmente confiável para o sistema, mas ele relata informações manipuladas.

Adulteração: um invasor pode usar chaves criptográficas extraídas para interceptar e suprimir dados enviados do dispositivo e substituí-los por dados falsos autenticados com as chaves roubadas.

Divulgação não autorizada de informação: se o dispositivo estivesse executando software manipulado, tal software manipulado poderia potencialmente vazar dados para partes não autorizadas.

Divulgação de informações: um invasor pode usar chaves criptográficas extraídas para injetar código no caminho de comunicação entre o dispositivo e o gateway de campo ou gateway de nuvem para desviar informações.

Negação de Serviço: O dispositivo pode ser desligado ou transformado em um modo onde a comunicação não é possível (o que é intencional em muitas máquinas industriais).

Violação: o dispositivo pode ser reconfigurado para operar em um estado desconhecido para o sistema de controle (fora de parâmetros de calibragem conhecidos) e, portanto, fornecer dados que podem ser interpretados incorretamente

Elevação de Privilégio: um dispositivo que realiza uma função específica pode ser forçado a fazer algo diferente. Por exemplo, uma válvula é programada para abrir a metade do caminho pode ser levada para abrir completamente.

Violação/falsificação/repúdio: se não protegido (que raramente é o caso com controles remotos do consumidor), um invasor poderá manipular o estado de um dispositivo anonimamente. Uma boa ilustração é um controle remoto que pode desligar qualquer TV.

A tabela a seguir mostra exemplos de mitigações para essas ameaças. Os valores na coluna de ameaça são abreviações:

  • Falsificação (S)
  • Adulteração (T)
  • Repúdio (R)
  • Divulgação de informações (I)
  • Negação de serviço (D)
  • Elevação de privilégio (E)
Componente Ameaça Redução Risco Implementação
Dispositivo S Atribuição de identidade para o dispositivo e autenticação do dispositivo Substituir o dispositivo ou parte dele por outro dispositivo. Como você sabe que está falando com o dispositivo certo? Autenticar o dispositivo, usando o protocolo TLS ou IPsec. A infraestrutura deve oferecer suporte ao uso de chave pré-compartilhada (PSK) nos dispositivos que não podem lidar com criptografia assimétrica total. Use o Microsoft Entra ID, OAuth.
TRID Aplicar mecanismos de prevenção de adulteração aos dispositivos, por exemplo, tornando difícil ou impossível extrair chaves e outros materiais criptográficos do dispositivo. O risco é se alguém está violando o dispositivo (interferência física). Como você tem certeza, esse dispositivo não foi adulterado. A mitigação mais eficaz é um TPM (Trusted Platform Module, módulo de plataforma confiável). Um TPM armazena chaves em circuitos especiais no chip a partir dos quais as chaves não podem ser lidas, mas só podem ser usadas para operações criptográficas que usam a chave. Criptografia de memória do dispositivo. Gerenciamento de chaves para o dispositivo. Assinar o código.
E Ter controle de acesso do dispositivo. Esquema de autorização. Se o dispositivo permitir que ações individuais sejam executadas com base em comandos de uma fonte externa, ou até mesmo sensores comprometidos, isso permite que o ataque execute operações não acessíveis de outra forma. Ter um esquema de autorização para o dispositivo.
Gateway de campo S Autenticação do gateway de campo no gateway de nuvem (por exemplo, baseada em certificado, PSK ou em declarações.) Se alguém pode falsificar o gateway de campo, pode se apresentar como qualquer dispositivo. TLS RSA/PSK, IPSec, RFC 4279. As mesmas preocupações de confirmação e armazenamento de chave dos dispositivos em geral, o melhor caso é usar o TPM. Extensão de 6LowPAN para o IPsec para dar suporte a WSN (Redes de Sensores Sem Fio).
TRID Proteger o gateway de campo contra violação (TPM) Ataques de falsificação que enganam o gateway de nuvem pensando que ele está conversando com o gateway de campo podem resultar em divulgação de informações e adulteração de dados Criptografia da memória, TPM, autenticação.
E Mecanismo de controle de acesso para o gateway de campo

Comunicação

Aqui estão alguns exemplos de ameaças na categoria de comunicação. As ameaças são categorizadas com base no modelo STRIDE:

Negação de Serviço: os dispositivos restritos geralmente estão sob ameaça de DoS quando escutam ativamente conexões de entrada ou datagramas não solicitados em uma rede. Um invasor pode abrir várias conexões em paralelo e não atendê-las ou atendê-las lentamente, ou inundar o dispositivo com tráfego não solicitado. Em ambos os casos, o dispositivo efetivamente pode ficar inoperante na rede.

Falsificação, divulgação de informações: dispositivos restritos e dispositivos para fins especiais geralmente têm recursos de segurança um-para-todos, como proteção por senha ou PIN. Às vezes, eles dependem totalmente de confiar na rede e concedem acesso às informações para qualquer dispositivo que esteja na mesma rede. Se a rede estiver protegida por uma chave compartilhada que é divulgada, um invasor pode controlar o dispositivo ou observar os dados que ele transmite.

Spoofing: um invasor pode interceptar ou substituir parcialmente a transmissão e falsificar o originador.

Adulteração: um invasor pode interceptar ou substituir parcialmente a transmissão e enviar informações falsas.

Divulgação de informações: um invasor pode espionar uma transmissão e obter informações sem autorização.

Negação de Serviço: um invasor pode bloquear o sinal de transmissão e negar a distribuição de informações.

A tabela a seguir mostra exemplos de mitigações para essas ameaças:

Componente Ameaça Redução Risco Implementação
Hub IoT de dispositivo TID (D)TLS (PSK/RSA) para criptografar o tráfego Espionagem ou interferência na comunicação entre o dispositivo e o gateway Segurança no nível do protocolo. Com os protocolos personalizados, você precisa descobrir como protegê-los. Na maioria dos casos, a comunicação ocorre do dispositivo para o Hub IoT (o dispositivo inicia a conexão).
Dispositivo para dispositivo TID (D)TLS (PSK/RSA) para criptografar o tráfego. Leitura de dados em trânsito entre os dispositivos. Violação de dados. Sobrecarga do dispositivo com novas conexões Segurança no nível do protocolo (MQTT/AMQP/HTTP/CoAP. Com os protocolos personalizados, você precisa descobrir como protegê-los. A mitigação da ameaça de DoS é para os dispositivos pares por meio de um gateway de campo ou nuvem e fazê-los agir somente como clientes para a rede. Depois que o gateway intermedia o emparelhamento, pode haver uma conexão direta entre os pares.
Dispositivo de entidade externa TID Emparelhamento forte da entidade externa com o dispositivo Espionagem da conexão com o dispositivo. Interferência na comunicação com o dispositivo Emparelhar de forma segura a entidade externa com o dispositivo NFC/Bluetooth LE. Controle do painel operacional do dispositivo (físico).
Gateway de nuvem de Gateway de campo TID TLS (PSK/RSA) para criptografar o tráfego. Espionagem ou interferência na comunicação entre o dispositivo e o gateway Segurança no nível de protocolo (MQTT/AMQP/HTTP/CoAP). Com os protocolos personalizados, você precisa descobrir como protegê-los.
Gateway de nuvem do dispositivo TID TLS (PSK/RSA) para criptografar o tráfego. Espionagem ou interferência na comunicação entre o dispositivo e o gateway Segurança no nível de protocolo (MQTT/AMQP/HTTP/CoAP). Com os protocolos personalizados, você precisa descobrir como protegê-los.

Armazenamento

A tabela a seguir mostra exemplos de mitigações para as ameaças de armazenamento:

Componente Ameaça Redução Risco Implementação
Armazenamento de dispositivo TRID Criptografia de armazenamento, assinar os logs Leitura de dados do armazenamento, adulteração de dados de telemetria. Violação de dados de controle de comando em cache ou enfileirados. Violação de pacotes de atualização de firmware ou configuração enquanto os armazenados em cache ou enfileirados localmente podem levar os componentes de sistema operacional e/ou sistema a serem comprometidos Criptografia, MAC (Message Authentication Code) ou assinatura digital. Onde for possível, controle de acesso forte por meio de permissões ou ACLs (listas de controle de acesso) de recurso.
Imagem do sistema operacional do dispositivo TRID Violação do sistema operacional/substituição de componentes do sistema operacional Partição do sistema operacional somente leitura, imagem do sistema operacional assinada, criptografia
Armazenamento de gateway de campo (enfileirando os dados) TRID Criptografia de armazenamento, assinar os logs Leitura de dados do armazenamento, adulteração de dados de telemetria, adulteração de dados de controle de comando em fila ou armazenados em cache. Violação de pacotes de atualização de firmware ou configuração (destinados a dispositivos ou gateway de campo) enquanto os armazenados em cache ou enfileirados localmente podem levar os componentes de sistema operacional e/ou sistema a serem comprometidos BitLocker
Imagem do sistema operacional do gateway de campo TRID Violação do sistema operacional/substituição de componentes do sistema operacional Partição do sistema operacional somente leitura, imagem do sistema operacional assinada, criptografia

Próximas etapas

Para saber mais sobre segurança IoT, consulte: