# |
Princípio |
Ameaça |
Mitigação |
1 |
Autenticidade |
Uma vez que o canal entre o navegador e o Módulo IoTEdge não é autenticado, qualquer pessoa pode falsificá-lo depois de ganhar acesso à rede Wi-Fi. |
Adicione autenticação em todos os módulos IoTEdge. |
2 |
Confidencialidade e Integridade |
Como resultado da vulnerabilidade de não criptografar dados, dados em texto simples podem ser interceptados durante a transmissão por meio de um ataque do homem no meio (MitM). Dados sensíveis podem ser expostos ou adulterados para permitir explorações adicionais. |
Todos os produtos e serviços devem criptografar os dados em trânsito usando protocolos e algoritmos criptográficos aprovados. Use TLS para criptografar todo o tráfego de rede baseado em HTTP. Use outros mecanismos, como o IPSec, para criptografar o tráfego de rede não baseado em HTTP que contenha dados de cliente ou confidenciais. Aplica-se ao fluxo de dados do navegador para os módulos IoTEdge. |
3 |
Confidencialidade |
Dados são um alvo valioso para a maioria dos atores de ameaças e atacar diretamente o armazenamento de dados, em vez de roubá-lo durante a transmissão, permite a exfiltração de dados em uma escala muito maior. Em nosso cenário, estamos armazenando alguns dados em contêineres de blob do Azure. |
Todos os dados de clientes ou confidenciais devem ser criptografados antes de serem gravados em mídia de armazenamento não volátil (criptografados em repouso) de acordo com os seguintes requisitos. Use algoritmos aprovados. Isso inclui AES-256, AES-192 ou AES-128. A criptografia deve ser habilitada antes de gravar dados no armazenamento. Aplica-se a todos os repositórios de dados no diagrama. O Azure Storage criptografa os dados em repouso por padrão (AES-256). |
4 |
Confidencialidade |
Mecanismos de autenticação quebrados ou inexistentes podem permitir que atacantes acessem informações confidenciais. |
Todos os serviços dentro do Limite de Confiança do Azure devem autenticar todas as solicitações recebidas, inclusive as solicitações provenientes da mesma rede. Autorizações adequadas também devem ser aplicadas para evitar privilégios desnecessários. Sempre que possível, use Identidades Gerenciadas do Azure para autenticar os serviços. Identidades de serviço podem ser usadas se as Identidades Gerenciadas não forem suportadas. Usuários ou serviços externos podem usar Nomes de Usuário + Senhas, Tokens, Certificados ou Strings de Conexão para autenticação, desde que esses sejam armazenados no Key Vault ou em qualquer outra solução de segurança. Para autorização, use o Azure RBAC para segregação de tarefas e conceda apenas a menor quantidade de acesso para executar uma ação em um escopo específico. Aplica-se a serviços do Azure como Azure IoTHub, Azure Cognitive Service, Azure Application Insights autenticados usando strings de conexão. |
5 |
Confidencialidade e Integridade |
Uma grande superfície de ataque, especialmente aquelas expostas na Internet, aumentará a probabilidade de comprometimento |
Minimize a superfície de ataque do aplicativo limitando os serviços publicamente expostos. Use controles de rede fortes, usando redes virtuais, sub-redes e grupos de segurança de rede para proteger contra tráfego não solicitado. Use o Azure Private Endpoint para o Azure Storage. Aplica-se ao armazenamento do Azure. |
6 |
Confidencialidade e Integridade |
Navegador e dispositivo IoTEdge estão conectados em uma rede Wi-Fi local. |
Minimize o ataque à rede Wi-Fi usando um algoritmo seguro como o WPA2. Aplica-se à conexão entre o navegador e os dispositivos IoTEdge. |
7 |
Integridade |
A exploração de logs e monitoramento insuficientes é a base de quase todo incidente importante. Os atacantes dependem da falta de monitoramento e resposta oportuna para atingir seus objetivos sem serem detectados. |
O registro de eventos críticos da aplicação deve ser realizado para garantir que, caso ocorra um incidente de segurança, a resposta ao incidente e a análise da causa raiz possam ser feitas. Medidas também devem ser tomadas para garantir que os logs estejam disponíveis e não possam ser sobrescritos ou destruídos por ocorrências maliciosas ou acidentais. No mínimo, os seguintes eventos devem ser registrados. Eventos de login/saída Eventos de delegação de privilégios Falhas de validação de segurança (por exemplo, falhas de validação de entrada ou falhas de verificação de autorização) Erros de aplicação e eventos do sistema Inicializações e desligamentos de aplicação e sistema, bem como inicialização de registro |
8 |
Disponibilidade |
A exploração do ponto de extremidade público por atores maliciosos que visam tornar o serviço indisponível para seus usuários pretendidos, interrompendo a atividade normal do serviço, por exemplo, inundando o serviço de destino com solicitações até que o tráfego normal não possa ser processado (Negação de Serviço) |
O aplicativo é acessado por meio de um aplicativo da web implantado como um dos módulos IoTEdge no dispositivo IoTEdge. Este aplicativo pode ser acessado por qualquer pessoa na rede local. Portanto, ataques DDoS são possíveis se o atacante ganhar acesso à rede local. Todos os serviços implantados como módulos IoTEdge devem usar autenticação. Aplica-se a serviços implantados em dispositivos IoTEdge. |
9 |
Integridade |
Manipulação de dados |
Os dados em repouso, no Azure Storage, devem ser criptografados no disco. Os dados em repouso, no Azure, podem ser protegidos ainda mais pelo Azure Advanced Threat Protection. Os dados em repouso, no Azure Storage e no espaço de trabalho do Azure Monitor, usarão o Azure RBAC para segregação de tarefas e concederão apenas a menor quantidade de acesso para executar uma ação em um escopo específico. Os dados em trânsito entre os serviços podem ser criptografados em TLS 1.2 Aplica-se ao fluxo de dados entre os módulos IoTEdge e os Serviços Azure. |