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 defesas apropriadas. Compreender como um invasor pode comprometer um sistema ajuda você a garantir que as mitigações apropriadas estejam em vigor desde o início.
Modelação de ameaças
A Microsoft recomenda o uso de um processo de modelagem de ameaças como parte do design da solução IoT. Se você não estiver familiarizado com a modelagem de ameaças e o ciclo de vida de desenvolvimento seguro, consulte:
- Modelação de ameaças
- Proteja as práticas recomendadas de desenvolvimento no Azure
- Guia de introdução
Segurança em 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 cloud
- 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 alta.
Cada zona é separada por um limite de confiança, mostrado como a linha vermelha pontilhada no diagrama a seguir. Representa uma transição de dados de uma fonte para outra. Durante esta transição, os dados podem estar sujeitos às seguintes ameaças:
- Spoofing
- Adulteração
- Rejeição
- Divulgação de informações
- Denial-of-service
- Elevação de privilégios
Para saber mais, consulte o modelo STRIDE.
Você pode usar o STRIDE para modelar as ameaças a cada componente dentro de cada zona. As seções a seguir elaboram cada um dos componentes e as preocupações e soluções de segurança específicas que devem ser colocadas em prática.
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 acesso digital da rede local ao dispositivo é viável. Presume-se que uma rede local é distinta e isolada da Internet pública, mas potencialmente ligada a ela. O ambiente do dispositivo inclui qualquer tecnologia de rádio sem fio de curto alcance que permita a comunicação ponto a ponto de dispositivos. Ele não inclui nenhuma tecnologia de virtualização de rede criando a ilusão de tal rede local. Não inclui redes de operadores públicos que exijam que dois dispositivos comuniquem através do espaço de rede pública se entrarem numa 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 facilitador 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 dedicadas de processamento de dados, 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 pode sabotar fisicamente se obtiver acesso físico.
Um gateway de campo difere de um roteador de tráfego porque tem um papel ativo no gerenciamento do acesso e do fluxo de informações. O gateway de campo tem duas áreas de superfície distintas. Um enfrenta os dispositivos ligados a ele e representa o interior da zona. O outro enfrenta todas as partes externas e é a borda da zona.
Zona de gateway na 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 locais. O gateway de nuvem normalmente permite um sistema de controle e análise de dados baseado em nuvem, ou uma federação desses sistemas. Em alguns casos, um gateway na nuvem pode facilitar imediatamente o acesso a dispositivos para fins especiais a partir de terminais como tablets ou telefones. 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 do dispositivo; Essas instalações fazem interface com o Cloud Gateway. A zona do gateway de nuvem inclui o próprio gateway de nuvem, juntamente com todos os gateways de campo e dispositivos direta ou indiretamente conectados 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 neste contexto é qualquer componente de software ou módulo que faz interface com dispositivos através 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 informações de dados ou agendas
- Exponha informações e recursos de controle a usuários finais autorizados
Dispositivos IoT
Os dispositivos IoT são muitas vezes dispositivos para fins especiais que vão desde simples sensores de temperatura até complexas linhas de produção de fábrica com milhares de componentes no seu interior. Exemplos de recursos de dispositivos IoT incluem:
- Medição e comunicação das condições ambientais
- Válvulas de viragem
- Controlo de servos
- Soar alarmes
- Ligar ou desligar luzes
O objetivo destes dispositivos dita o seu projeto técnico e o orçamento disponível para a sua produção e operação de vida útil programada. A combinação desses fatores restringe o orçamento de energia operacional disponível, a pegada física e os recursos disponíveis de armazenamento, computação e segurança.
As coisas que podem dar errado com um dispositivo IoT automatizado ou controlado remotamente incluem:
- Defeitos físicos
- Controlar defeitos lógicos
- Intrusão e manipulação não autorizadas intencionais.
As consequências dessas falhas podem ser graves, como lotes de produção destruídos, edifícios incendiados ou ferimentos e mortes. 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
Os dispositivos para fins especiais conectados têm um número significativo de potenciais superfícies de interação e padrões de interação, os quais devem ser considerados como constituindo um quadro para garantir o acesso digital a esses dispositivos. O acesso digital refere-se a operações que são realizadas através de software e hardware e não através de acesso físico direto ao dispositivo. Por exemplo, o acesso físico pode ser controlado colocando o dispositivo numa sala com uma fechadura na porta. Embora o acesso físico não possa ser negado usando software e hardware, medidas podem ser tomadas para evitar que o acesso físico leve à interferência do sistema.
Ao explorar os padrões de interação, observe o controle e os dados do dispositivo com o mesmo nível de atenção. O controlo de dispositivos refere-se a qualquer informação fornecida a um dispositivo com a intenção de modificar o seu comportamento. Dados do dispositivo referem-se a informações que um dispositivo emite para qualquer outra parte sobre o seu estado e o estado observado do 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:
O diagrama a seguir fornece uma exibição simplificada da arquitetura de referência usando um modelo de diagrama de fluxo de dados:
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 concentram-se nos elementos centrais de um modelo de ameaça:
- Processos
- Comunicação
- Armazenamento
Processos
Aqui estão alguns exemplos de ameaças na categoria de 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 a partir de um dispositivo físico ou virtual diferente, usando a identidade do dispositivo original.
Negação de serviço: um dispositivo pode tornar-se incapaz de funcionar ou comunicar interferindo com radiofrequências 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.
Adulteraçã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 mostra uma imagem de espectro visível de um corredor vazio pode ser direcionada para uma fotografia de tal corredor. Um sensor de fumaça ou incêndio pode estar relatando alguém segurando um isqueiro sob ele. Em ambos os casos, o dispositivo pode ser tecnicamente confiável para o sistema, mas relata informações manipuladas.
Adulteração: um invasor pode usar chaves criptográficas extraídas para intercetar e suprimir dados enviados do dispositivo e substituí-los por dados falsos autenticados com as chaves roubadas.
Divulgação de informações: Se o dispositivo estiver executando software manipulado, esse software manipulado pode 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).
Adulteração: O dispositivo pode ser reconfigurado para operar em um estado desconhecido para o sistema de controle (fora dos parâmetros de calibração conhecidos) e, assim, fornecer dados que podem ser mal interpretados
Elevação de privilégio: um dispositivo que faz uma função específica pode ser forçado a fazer outra coisa. Por exemplo, uma válvula programada para abrir no meio do caminho pode ser enganada para abrir todo o caminho.
Falsificação/Adulteração/Repúdio: Se não estiver protegido (o que raramente é o caso dos controles remotos do consumidor), um invasor pode 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 atenuações para essas ameaças. Os valores na coluna de ameaça são abreviaturas:
- 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 | Mitigação | Risco | Implementação |
---|---|---|---|---|
Dispositivo | S | Atribuir identidade ao dispositivo e autenticá-lo | Substituir o dispositivo ou parte do dispositivo por outro dispositivo. Como você sabe que está falando com o dispositivo certo? | Autenticar o dispositivo, usando Transport Layer Security (TLS) ou IPSec. A infraestrutura deve suportar o uso de chave pré-compartilhada (PSK) nos dispositivos que não conseguem lidar com criptografia assimétrica total. Use o Microsoft Entra ID, OAuth. |
TRID | Aplique mecanismos invioláveis ao dispositivo, por exemplo, dificultando a extração de chaves e outro material criptográfico do dispositivo. | O risco é se alguém estiver adulterando o dispositivo (interferência física). Como você tem certeza de que ninguém adulterou o dispositivo? | A mitigação mais eficaz é um TPM (trusted platform module, módulo de plataforma confiável). Um TPM armazena chaves, mas não permite que elas sejam lidas. No entanto, o próprio TPM pode usar as chaves para operações criptográficas. Encriptação de memória do dispositivo. Gestão de chaves para o dispositivo. Assinatura do código. | |
E | Tendo controle de acesso do dispositivo. Regime de autorização. | Se o dispositivo permite que ações individuais sejam executadas com base em comandos de uma fonte externa, ou mesmo sensores comprometidos, ele permite que o ataque execute operações não acessíveis de outra forma. | Ter esquema de autorização para o dispositivo. | |
Gateway de campo | S | Autenticando o gateway de campo no Cloud Gateway (como baseado em certificado, PSK ou baseado em declaração.) | Se alguém pode falsificar o Field Gateway, ele pode se apresentar como qualquer dispositivo. | TLS RSA/PSK, IPSec, RFC 4279. Todas as mesmas preocupações de armazenamento e atestado de chaves de dispositivos em geral – o melhor caso é usar TPM. 6Extensão LowPAN para IPSec para suportar redes de sensores sem fio (WSN). |
TRID | Proteja o Field Gateway contra adulteração (TPM) | Ataques de falsificação que enganam o gateway de nuvem pensando que está falando com o gateway de campo podem resultar em divulgação de informações e adulteração de dados | Encriptação de memória, TPMs, autenticação. | |
E | Mecanismo de controle de acesso para Field Gateway |
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: 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 muitas 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 pode efetivamente ser tornado inoperável 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 da confiança na rede e concedem acesso às informações para qualquer dispositivo que esteja na mesma rede. Se a rede estiver protegida por uma chave partilhada que é divulgada, um intruso pode controlar o dispositivo ou observar os dados que transmite.
Falsificação: um invasor pode intercetar ou substituir parcialmente a transmissão e falsificar o originador.
Adulteração: um invasor pode intercetar 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 obstruir o sinal de transmissão e negar a distribuição de informações.
A tabela a seguir mostra exemplos de atenuações para essas ameaças:
Componente | Ameaça | Mitigação | Risco | Implementação |
---|---|---|---|---|
Hub IoT do dispositivo | TID | (D)TLS (PSK/RSA) para encriptar o tráfego | Escutar ou interferir na comunicação entre o dispositivo e o gateway | Segurança ao nível do protocolo. Com 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 a Dispositivo | TID | (D)TLS (PSK/RSA) para encriptar o tráfego. | Leitura de dados em trânsito entre dispositivos. Adulteração dos dados. Sobrecarregando o dispositivo com novas conexões | Segurança ao nível do protocolo (MQTT/AMQP/HTTP/CoAP. Com protocolos personalizados, você precisa descobrir como protegê-los. A mitigação para a ameaça DoS é emparelhar dispositivos por meio de uma nuvem ou gateway de campo e fazê-los agir apenas como clientes para a rede. Depois que o gateway intermedeia o emparelhamento, pode haver uma conexão direta entre os pares. |
Dispositivo de entidade externa | TID | Emparelhamento forte da entidade externa ao dispositivo | Escutar a ligação ao dispositivo. Interferir na comunicação com o dispositivo | Emparelhamento seguro da entidade externa ao dispositivo NFC/Bluetooth LE. Controlando o painel operacional do dispositivo (Físico). |
Gateway de campo Cloud Gateway | TID | TLS (PSK/RSA) para encriptar o tráfego. | Escutar ou interferir na comunicação entre o dispositivo e o gateway | Segurança ao nível do protocolo (MQTT/AMQP/HTTP/CoAP). Com protocolos personalizados, você precisa descobrir como protegê-los. |
Gateway de nuvem de dispositivo | TID | TLS (PSK/RSA) para encriptar o tráfego. | Escutar ou interferir na comunicação entre o dispositivo e o gateway | Segurança ao nível do protocolo (MQTT/AMQP/HTTP/CoAP). Com protocolos personalizados, você precisa descobrir como protegê-los. |
Armazenamento
A tabela a seguir mostra exemplos de atenuações para as ameaças de armazenamento:
Componente | Ameaça | Mitigação | Risco | Implementação |
---|---|---|---|---|
Armazenamento de dispositivos | TRID | Criptografia de armazenamento, assinatura dos logs | Leitura de dados do armazenamento, adulteração de dados de telemetria. Adulteração de dados de controle de comando em fila ou em cache. Adulterar pacotes de configuração ou atualização de firmware enquanto armazenados em cache ou enfileirados localmente pode levar ao comprometimento do sistema operacional e/ou componentes do sistema | Criptografia, código de autenticação de mensagem (MAC) ou assinatura digital. Sempre que possível, controle de acesso forte por meio de listas de controle de acesso a recursos (ACLs) ou permissões. |
Imagem do SO do dispositivo | TRID | Adulteração do SO /substituição dos componentes do SO | Partição do SO só de leitura, imagem do SO assinada, encriptação | |
Armazenamento do Field Gateway (enfileiramento de dados) | TRID | Criptografia de armazenamento, assinatura dos logs | Leitura de dados do armazenamento, adulteração de dados de telemetria, adulteração de dados de controle de comando em fila ou em cache. Adulterar pacotes de configuração ou atualização de firmware (destinados a dispositivos ou gateway de campo) enquanto armazenados em cache ou enfileirados localmente pode levar ao comprometimento do sistema operacional e/ou componentes do sistema | BitLocker |
Imagem do SO do Field Gateway | TRID | Adulteração do SO /substituição dos componentes do SO | Partição do SO só de leitura, imagem do SO assinada, Encriptação |
Próximos passos
Para saber mais sobre segurança de IoT, consulte: