Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial Internet of Things >> Tecnologia da Internet das Coisas

Vulnerabilidades de segurança de hardware que os engenheiros devem conhecer

Por que os engenheiros deveriam se preocupar com a segurança do hardware? Porque eles podem ajudar a prevenir vulnerabilidades por meio do design!


Por que os engenheiros devem se preocupar com a segurança do hardware? Porque eles podem ajudar a prevenir vulnerabilidades por meio do design!

Os engenheiros tradicionalmente não gostam de falar sobre questões de segurança. Isso, entretanto, não nega a importância de os engenheiros saberem sobre criptografia para que possam abordá-la em seus projetos futuros.

Até agora, falamos sobre uma (breve) introdução do engenheiro à ciptografia, a troca Diffie-Hellman e como funciona a ECC (criptografia de curva elíptica).

Agora é hora de aprender como os hackers quebram a criptografia, para que você possa iniciar a longa jornada para proteger seu design de ataques comuns.


Por que os engenheiros elétricos devem se preocupar com a segurança


Se você é responsável por fornecer dispositivos seguros para um projeto de nível empresarial ou crítico para a segurança, você deve discutir seu projeto com os fornecedores de chips e / ou pesquisadores de segurança em cada estágio do processo de projeto. Empresas como Microchip, SiLabs, WolfSSL, etc. têm engenheiros na equipe que podem ajudá-lo com seus projetos e educá-lo sobre segurança.

Afinal, não existe um sistema 100% seguro.



“Nunca houve um cavalo que não pudesse ser montado. Nunca houve um piloto que não pudesse ser lançado. ”



Os pesquisadores de segurança jogam o gato e o rato ao longo da vida com os hackers. Uma e outra vez, a criptografia “inquebrável” foi quebrada. Se sua mensagem permanecerá criptografada ou não depende da seleção da peça, de quão bem você projeta seu circuito, quão bem você implementa seu código e se seu invasor está ou não suficientemente motivado e equipado para derrotar seus projetos. Seu trabalho como engenheiro é fazer tudo o que puder para proteger sua chave privada.

Você provavelmente está ciente de que não há praticamente nada que você possa fazer para proteger suas chaves privadas de um estado-nação. Os recursos que várias agências governamentais podem utilizar contra alvos eletrônicos e humanos são significativos e esmagadores. Mesmo que os espiões não consigam recuperar as chaves privadas de um dispositivo, eles sempre podem hackear o computador que programou o dispositivo, se infiltrar na fábrica onde os ICs são feitos, comprometer um funcionário ...

Felizmente, você realmente não precisa se preocupar com os estados-nação hackeando seus dispositivos. Un felizmente, geralmente é um assunto muito mais simples do que gostaríamos de acreditar. Um adolescente com cerca de US $ 250 em hardware e acesso a vídeos de treinamento do YouTube pode retirar as chaves privadas de um microcontrolador em uma tarde. E um programador malicioso pode roubar dados em apenas alguns minutos.

Para estar preparado para um design seguro, é importante entender as ameaças em questão. Esta é uma visão de alto nível de algumas vulnerabilidades de segurança baseadas em hardware bem conhecidas - e o que você pode fazer para mitigá-las.

Exemplos de problemas de segurança de sistemas incorporados


Vejamos alguns exemplos de vulnerabilidades de hardware importantes e discutamos algumas dicas para um design mais seguro.


Ataques eletromagnéticos de canal lateral


Os pesquisadores sabem sobre os ataques de canal lateral eletromagnético há décadas. Sempre que uma chave mecânica ou um transistor muda de estado, uma onda eletromagnética se propaga ao longo e para fora do condutor. Se essa onda eletromagnética for interceptada por um hacker, eles podem reconstruir os dados usados ​​para criar a onda. Veja Van Eck Phreaking, Tempest ou o vídeo abaixo para saber mais.

Mitigação de ataques de canal lateral eletromagnético

Use as melhores práticas da indústria ao projetar e preparar seu PCB.
  1. Coloque os capacitores de desacoplamento o mais próximo possível dos pinos de alimentação.
  2. Use um plano de aterramento sólido abaixo do IC.
  3. Use proteção EMI no topo de seu IC.

Isso não impedirá alguém com acesso físico ao seu dispositivo, mas tornará o trabalho dele muito mais difícil.


Ataques de análise de potência diferencial


Para quebrar a criptografia na maioria dos microcontroladores, tudo o que você precisa é um resistor de $ 0,005, um conversor analógico para digital e um conhecimento rudimentar da linguagem de programação Python.

Quando as portas digitais em um microcontrolador comutam, elas perturbam os trilhos de energia que conduzem a um microcontrolador. Os hackers aprenderam a colocar um resistor de 50 Ω e um conversor analógico-digital nos trilhos de alimentação para registrar as minúsculas mudanças na corrente que ocorrem durante a operação do microcontrolador.

O microcontrolador é interrogado por meio da interface de programa / depuração SPI enquanto os dados de medição de potência diferencial são registrados. Posteriormente, os dados são analisados ​​e os picos e pulsos são usados ​​para correlacionar e identificar as ações individuais do microcontrolador.

Por meio de uma análise cuidadosa, os hackers podem extrair quase todas as informações que desejam de um microcontrolador.

Mitigação de ataques de análise de potência diferencial

Este hack é feito facilmente com código criptográfico baseado em software, então use aceleradores de hardware de criptografia que implementam contramedidas DPA sempre que possível. Como antes, use as melhores práticas do setor em design e layout. Escolha uma base BGA e execute seus trilhos de alimentação em camadas intermediárias de seu PCB e, se você realmente tiver motivos para se preocupar, incorpore seu IC em uma camada intermediária de seu PCB com planos de cobre acima e abaixo e use por meio de costura ao redor. Afinal, se os bandidos não podem chegar aos trilhos de energia, eles não podem realizar facilmente a análise diferencial de energia.

Como alternativa, use um núcleo de segurança baseado em hardware, uma vez que eles não são tão suscetíveis a esse hack (eles ainda podem ser hackeados). Os engenheiros conhecem essa vulnerabilidade e projetam contra ela de várias maneiras. Como exemplo, o Silicon Labs Wireless Gecko Series 2 tem um núcleo de segurança integrado e a Microchip fabrica uma linha de CIs de segurança, incluindo módulos criptográficos que você pode usar em seus projetos.

Ataques do Homem no Meio


Existem vários ataques Man-in-the-Middle. Este artigo demonstra um "ataque de curva inválida". O exemplo hipotético mais simples a seguir é apenas um vetor de ataque possível.

Quando você reproduz música do computador por meio de um alto-falante Bluetooth denominado “MyTunes”, os dados são movidos diretamente do computador para o alto-falante. Mas quando você conecta seu computador a um site externo chamado “AllAboutCircuits.com”, você pode ou não estar ciente de que seu computador não está imediatamente conectado diretamente a outro computador chamado “AllAboutCircuits”.

A primeira coisa que acontece é que seu computador entra em contato com seu roteador, e ele entra em contato com um Servidor de Nomes de Domínio (DNS) que traduz o nome AllAboutCircuits.com em um endereço IPV4 ou IPV6 (104.20.234.39). Isso geralmente acontece rapidamente e os dados são armazenados localmente para acelerar a navegação futura.



entrada DNS para AllAboutCircuits.com em um PC com Windows 10.



Os dados então saltam do computador para o roteador para o gateway para alternar para etc ... para um computador cujo endereço IP corresponda a 104.20.234.39. O número de saltos varia de site para site e de local para local. Em cada local, se o computador não estiver protegido, os dados podem ser interceptados, o tráfego redirecionado ou algo totalmente diferente.



Este rastreamento de rota mostra todos os “saltos” do meu laptop para o site AllAboutCircuits.com

A configuração do ataque man-in-the-middle

Há várias maneiras de ocorrer um ataque de interceptação. Considere apenas este tipo de ataque.



Imagem de "Bob" de ThisPersonDoesNotExist.com



Bob comprou um novo roteador sem fio chique. Ele leva seu brinquedo para casa e o conecta à rede doméstica. E apenas para ter certeza de que não gastou muito dinheiro em seu novo brinquedo, ele verifica o saldo de sua conta bancária em seu computador.



Imagem de "Mallory" de ThisPersonDoesNotExist.com



Mallory é um hacker. Ela usa o site shodan.io (ou semelhante) para identificar roteadores, webcams, Raspberry Pi ou dispositivos IoT que estão na Internet, vê o novo roteador de Bob, sorri e esfrega as mãos ameaçadoramente porque agora ela também tem um novo brinquedo.

Mallory usa o nome de usuário / senha padrão (admin / padrão, admin / admin, admin / senha, etc.) que vem com todos os dispositivos. A maioria dos fabricantes usa o mesmo nome de usuário / senha para todos os dispositivos e a maioria das pessoas não se preocupa em alterá-los, por isso não leva muito tempo para encontrar um ou mais pontos de entrada. Mallory simplesmente se conecta ao dispositivo, atualiza-o com seu próprio firmware e muda o servidor DNS para um servidor DNS de sua escolha.

Ela pode fazer isso porque:

Agora Mallory tem acesso a uma rede privada. Ela não é mais uma hacker na web, ela agora está dentro da rede doméstica pessoal de Bob e pode assistir os dados se movendo para frente e para trás. Os dados são criptografados, então ela não pode necessariamente ver o que são ainda, mas ela pode ver que Bob visita e faz login em ThisBankDoesNotExist.com (123.123.123.123) com bastante frequência, então ela começou a trabalhar na configuração de um servidor e página da web para Bob, essa é uma cópia perfeita da página de login de ThisBankDoesNotExist.com.

Em seguida, Mallory altera a entrada DNS de Bob para ThisBankDoesNotExist.com para (123.45.67.89)

O Ataque

Bob acessa ThisBankDoesNotExist.com. Ele não se incomoda em digitar https:// antes do nome de domínio e, por meio dos hacks de Mallory, não está se conectando ao computador correto, está em http://ThisBankDoesNotExist.com - portanto, nenhum aviso de certificado aparece.

Bob não sabe de nada disso; ele vê a cópia perfeita e digita seu nome de usuário / senha no computador de Mallory e, como ele esperava, as informações da conta aparecem.

Exceto agora, Mallory pode ver tudo - cada transação, cada titular autorizado de conta e até mesmo o nome de usuário / senha supercomplicado de Bob (bob / letmein) que ele usa para proteger as informações de sua conta.








As consequências do hack

Quase todos os sites usam criptografia de ponta a ponta. Isso significa que os dados só podem ser descriptografados no computador de Bob e no computador do Banco. Mallory introduziu um novo ponto de extremidade. O tráfego de Bob é codificado em seu computador e decodificado no computador de Mallory. Em seguida, os dados são recodificados no computador de Mallory e decodificados no computador do Banco. Isso ainda aparece como criptografia ponta a ponta para Bob e para o Banco.

Mas há um ponto final intermediário - o computador de Mallory. Mallory pode fazer o mesmo para encontrar os registros hospitalares de Bob, e-mail, etc.

Como proteger sistemas incorporados


A maneira mais fácil de manter seus dispositivos seguros é dificultar a invasão de seus produtos.

Se eles encontrarem resistência, há uma chance de que o hacker simplesmente passe para o próximo alvo. Por outro lado, é difícil para um indivíduo ou uma pequena empresa impedir hacks de estado-nação. Felizmente, muitos “hackers” são apenas “script kiddies” que não têm experiência para desenvolver novos ataques e resolver problemas quando eles ocorrem. Se não houver um vídeo no YouTube e um GitHub para o seu dispositivo, eles não saberão o que fazer e seguirão em frente.

Além disso, converse com seu fornecedor de microchip para saber mais sobre como proteger seus dispositivos. Tanto a Microchip quanto a Silicon Labs tiveram destaque nesta série de artigos porque ambas as empresas disponibilizaram engenheiros para uma entrevista para esses artigos.

Se você projetar um dispositivo IoT, há várias coisas que você pode fazer para reduzir a probabilidade de seus clientes perderem suas economias de vida devido a suas práticas negligentes de engenharia e programação.

Além das idéias mencionadas acima, considere estas etapas adicionais:
  1. Projete com um microcontrolador e conjunto de ferramentas que ofereça suporte à autenticação de firmware (também conhecido como inicialização segura). Apenas o firmware digital assinado corretamente será executado no microcontrolador, e somente você conhece a chave privada. Tanto a Silicon Labs quanto a Microchip (e outros fornecedores) têm microcontroladores que suportam inicialização segura.
  2. Use um microcontrolador que tenha um recurso de depuração seguro sempre que possível. Alguns desses hacks são possíveis porque os hackers podem injetar e recuperar dados do microcontrolador host e usá-los para determinar o que está acontecendo dentro do pacote do microcontrolador. Se os dados saírem embaralhados ou não sairem, eles ficarão frustrados e seguirão em frente. Novamente, Silicon Labs e Microchip (e outros fornecedores) têm essa capacidade.
  3. Leia sobre segurança , faça perguntas a especialistas e envie seu projeto aos engenheiros de aplicação do fabricante do seu dispositivo para receber feedback sobre o esquema de segurança proposto, o layout da placa, etc.
  4. Use técnicas antiviolação para limpar sua chave privada da memória se o dispositivo for adulterado.
    • TE Connectivity faz folhas de filme piezo que podem envolver inteiramente seu PCB. Se a folha for cortada, mexida, derretida, etc., isso gerará uma voltagem para indicar uma condição de violação.
    • Use sensores capacitivos ou indutivos (como os da TI) para detectar quando o gabinete do projeto foi aberto ou sensores de efeito Hall para detectar quando os parafusos da caixa são girados.
  5. Suponha que quando seu dispositivo estiver nas mãos do primeiro cliente, ele já terá sido comprometido. Crie um plano de segurança do projeto que permita que um ou mais dispositivos individuais sejam comprometidos sem afetar todo o projeto.

Esta série de artigos foi uma mera introdução à segurança. É sua responsabilidade como engenheiro tornar a IoT segura para todos.

Tecnologia da Internet das Coisas

  1. IoT nos cuidados de saúde:o que você deve saber
  2. Lidando com as vulnerabilidades de segurança da IoT industrial
  3. Segurança industrial IoT construída em hardware
  4. Em busca de um ecossistema gerenciado de IoT que funcione
  5. Três perguntas que os operadores de rede devem fazer sobre a segurança da IoT
  6. É a segurança, não COVID-19, que desafia a implantação comercial de 5G
  7. Por que a segurança da automação industrial deve ser um foco renovado
  8. 7 Bibliotecas React que você deve conhecer
  9. Três coisas que todo fabricante de IoT deve fazer para melhorar a segurança
  10. Noções básicas de design do painel de controle