Leitores como você ajudam a apoiar o MUO. Quando você faz uma compra usando links em nosso site, podemos ganhar uma comissão de afiliado. Consulte Mais informação.

Os navios são bestas mecânicas com muitas peças trabalhando para garantir viagens seguras e bem-sucedidas. Um equivalente digital seria o software. Assim como o desenvolvimento de software, a construção naval envolve várias etapas e uma engenharia precisa. Então, quando tudo estiver concluído, os construtores testam suas criações em diferentes condições para garantir que a embarcação seja segura e funcione conforme projetado. Praticamente todos os melhores softwares que usamos hoje passam por testes para garantir que também sejam seguros.

Um desses testes é a injeção de falhas. Em comparação com a construção naval, a injeção de falhas seria semelhante a engenheiros náuticos intencionalmente fazendo buracos em seus navios para ver como eles lidam com o naufrágio...

O que é injeção de falha e por que é importante?

A injeção de falhas é a prática de criar intencionalmente defeitos em um sistema. O objetivo desta prática é analisar como o sistema funciona sob estresse. Os engenheiros de hardware e software normalmente induzem falhas em seu hardware ou software por vários motivos.

instagram viewer

Por um lado, eles querem descobrir e resolver falhas que possam surgir fora do ambiente controlado do laboratório de produção. Isso é importante porque eles não têm controle sobre as condições em que os clientes usarão seus produtos. O calor pode comprometer os componentes ou materiais que mantêm os componentes juntos; uma falha no servidor pode fazer com que uma região inteira perca o acesso ao seu serviço de streaming favorito; os invasores podem acionar uma falha que quebra os recursos de segurança. Quando tais eventos acontecem, desenvolvedores e fabricantes de dispositivos querem garantir que seus produtos ainda proteja a integridade dos dados e a segurança dos usuários ou ajuste a distribuição de carga para minimizar o serviço interrupção.

Por fim, a injeção de falhas é necessária para tornar os aplicativos e o hardware seguros e confiáveis. Da mesma forma, a injeção de falhas ajuda os fabricantes a proteger a propriedade intelectual, reduzir o risco de perda e manter a confiança de seus clientes. Você não colocaria seu dinheiro em um banco se o aplicativo deles travasse o tempo todo e os hackers tivessem um dia de campo para quebrá-lo, não é?

Como funcionam os ataques de injeção de falhas?

Os fabricantes realizam intencionalmente a injeção de falhas para descobrir falhas que possam comprometer a segurança de seus produtos. Nada impede que os invasores façam o mesmo para expor os pontos fracos de um sistema e explorá-los. Afinal, as ferramentas usadas para executar a injeção de falhas são públicas e os métodos não são excessivamente complexos.

Além disso, invasores experientes podem ser criativos com seus métodos e forçar o sistema além do normal. Neste ponto, você precisa saber que a injeção de falhas pode ser física (em hardware) ou digital (em software). Da mesma forma, as ferramentas e métodos usados ​​em ataques de injeção de falhas podem assumir qualquer forma. Fabricantes e hackers geralmente combinam ferramentas físicas e digitais em seus testes e ataques, respectivamente.

Algumas ferramentas usadas para injeção de falhas são FERRARI (Fault and ERRor Automatic Real-time Injector), FTAPE (Fault Tolerance And Performance Evaluator), Xception, Gremlin, Holodeck e ExhaustiF. Enquanto isso, os métodos da FIA geralmente envolvem bombardear o sistema com pulsos eletromagnéticos intensos, aumentando a temperatura ambiente, subvoltando GPUs ou CPUs, ou provocando um curto-circuito. Usando ferramentas e métodos da FIA, eles podem corromper um sistema por tempo suficiente para explorar uma redefinição, ignorar um protocolo ou roubar dados confidenciais.

Prevenindo Ataques de Injeção de Falhas

Você não precisa se preocupar em evitar ataques da FIA se for um consumidor regular. Essa responsabilidade é do fabricante do dispositivo ou do desenvolvedor do software, assim como a segurança do navio é tarefa da tripulação. Fabricantes e desenvolvedores fazem isso projetando protocolos de segurança mais resilientes e dificultando a extração de dados para hackers.

No entanto, não existem sistemas perfeitos. Os invasores desenvolvem novos métodos de ataque com frequência e não são limitados na forma como aplicam esses métodos, pois não seguem as regras. Por exemplo, um hacker pode combinar FIA com um ataque de canal lateral, especialmente se o acesso ao dispositivo for limitado. A equipe do outro lado deve reconhecer esse fato ao projetar sistemas resilientes e planejar seus testes de injeção de falhas.

Você deve se preocupar com a FIA?

Não diretamente. Existem ameaças de segurança cibernética mais prováveis ​​que afetam você mais pessoalmente do que ataques de injeção de falhas. Além disso, a FIA raramente é secreta. Um invasor precisará de acesso físico ao seu dispositivo para executar um ataque de injeção de falha. Além disso, os métodos de injeção de falhas são geralmente invasivos e resultam em algum nível de dano temporário ou permanente ao sistema. Portanto, é muito provável que você perceba que algo está errado ou fique com um dispositivo que não pode usar.

O problema, é claro, é que o invasor pode ter roubado dados confidenciais no momento em que você percebe a adulteração. Cabe ao fabricante ou desenvolvedor impedir o ataque em primeiro lugar e melhorar a segurança de seus produtos.