A Ascensão dos Trojans Resilientes a Interrupções
Novos trojan de hardware representam riscos sérios nos designs modernos de CPU.
― 6 min ler
Índice
Trojan de hardware são modificações secretas feitas em chips de computador que podem fazer eles se comportarem de maneiras prejudiciais. Isso acontece sem ninguém perceber e traz riscos sérios, especialmente nas cadeias de suprimento globais de hoje. Esses ataques podem atingir tudo, desde eletrônicos de consumo até sistemas militares. O desafio tá no fato de que inserir esses trojans é geralmente complicado, especialmente por causa de como os chips de computador modernos funcionam.
Esse artigo fala sobre uma nova classe de Trojans de hardware conhecida como trojans resistentes a interrupções (IRTS). Esses trojans resolvem um problema significativo: os eventos aleatórios que ocorrem enquanto um chip processa tarefas podem atrapalhar a capacidade do trojan de funcionar corretamente. É crucial para os atacantes garantir que seus payloads-as ações prejudiciais que o trojan foi projetado para executar-sejam acionados de forma confiável, mesmo quando interrupções inesperadas acontecem.
Entendendo os Trojans de Hardware
Pra entender a importância dos IRTs, a gente precisa primeiro ver como os trojans de hardware funcionam. Um trojan geralmente consiste em duas partes: um gatilho que ativa o trojan e um payload que executa a ação prejudicial. O gatilho precisa ficar escondido durante as operações normais, mas também deve ser fácil de ativar quando necessário. Se o gatilho falhar por causa de interrupções no funcionamento da CPU, o trojan não vai funcionar.
As CPUs modernas lidam com múltiplas tarefas ao mesmo tempo, trocando entre elas com frequência. Isso é chamado de Troca de Contexto. Cada vez que a CPU muda de uma tarefa pra outra, ela salva o estado atual da tarefa em execução e carrega o estado da próxima tarefa. Embora isso seja eficiente, pode criar um problema para os trojans de hardware. Se um trojan for ativado durante uma troca de contexto, a mudança no estado da CPU pode fazer o trojan falhar. Isso pode resultar em erros visíveis ou crashes, alertando os usuários sobre a presença de um trojan malicioso.
Apresentando os Trojans Resistentes a Interrupções
Pra lidar com esses problemas, os trojans resistentes a interrupções (IRTs) foram projetados. O principal objetivo de um IRT é garantir um acionamento confiável mesmo diante de eventos de troca de contexto. Isso significa que, independentemente do que mais tá acontecendo na CPU, esses trojans ainda conseguem executar seu payload de forma eficaz.
Existem dois tipos principais de IRTs:
Gatilho Seletivamente Pronto (IRT-1): Esse tipo é ativado só quando o software de tratamento executa certas instruções no pipeline da CPU. Assim, ele usa os eventos de troca de contexto a seu favor. Se o software não tá rodando no momento, o gatilho permanece inativo.
Gatilho Sempre Pronto (IRT-2): Em contraste, o IRT-2 permanece pronto pra ativar durante todo o ataque. Ele não depende de instruções específicas e pode entregar seu payload independentemente da operação atual da CPU, dando a ele uma gama maior de alvos potenciais, mas exigindo mais recursos.
Os Desafios de Implementar Trojans de Hardware
Inserir um trojan de hardware durante o processo de fabricação não é tão simples. O atacante precisa ter cuidado pra garantir que a inserção não atrapalhe o funcionamento normal do chip. Isso envolve colocar o gatilho e o payload de uma forma que eles consigam se comunicar de forma eficaz, mesmo que não estejam fisicamente próximos um do outro. Se o sinal do gatilho de um trojan viajar longe demais, isso pode atrasar a execução do payload.
Durante a fase de fabricação, o atacante só pode fazer modificações limitadas no layout, o que pode aumentar a dificuldade. Também há preocupações em relação ao tempo e desempenho do layout. Se adicionar o trojan causar violações de tempo, o chip pode não atender às suas especificações operacionais, chamando ainda mais atenção.
Avaliando os IRTs
Pra testar a eficácia dos IRTs, pesquisadores realizaram vários cenários de ataque em um design específico de CPU usando técnicas inovadoras. O objetivo era ver se esses trojans poderiam funcionar como esperado, mesmo durante trocas de contexto e cenários de multitarefa.
Os experimentos mostraram que os IRTs podiam funcionar de forma confiável sob condições variadas. Com o IRT-1, mesmo quando o processo de tratamento era interrompido, o trojan conseguia se reativar assim que a execução era retomada. Isso demonstrou uma vantagem chave em relação aos trojans de hardware tradicionais, que lutavam com a confiabilidade em meio à imprevisibilidade das operações da CPU.
O segundo tipo, IRT-2, provou ser resistente a interrupções, mantendo sua prontidão durante toda a execução. Esse método demonstrou o potencial de execução eficaz do payload mesmo quando a CPU estava ocupada com várias tarefas.
O Futuro dos Trojans de Hardware
Essa nova compreensão destaca a necessidade de medidas de segurança mais robustas dentro dos designs de CPUs. À medida que os atacantes se tornam mais sofisticados, os métodos tradicionais de detectar trojans de hardware podem não ser mais suficientes. A introdução dos IRTs desafia a noção de que inserir trojans durante a fase de fabricação é muito limitado. Isso mostra que os atacantes realmente podem implementar trojans complexos e eficazes mesmo em estágios posteriores do design do chip.
Como resultado, engenheiros e profissionais de segurança precisam focar em desenvolver defesas mais fortes contra essas ameaças. Isso inclui melhorar a segurança do hardware de uso geral dentro das CPUs e redirecionar a atenção para potenciais vulnerabilidades durante as etapas de design e fabricação do hardware.
Conclusão
O surgimento dos trojans resistentes a interrupções abre um novo capítulo na batalha entre segurança de hardware e modificações maliciosas. Esses trojans navegam de forma eficaz pelas complexidades dos designs modernos de CPU e destacam as vulnerabilidades persistentes dentro da nossa tecnologia. À medida que esse campo evolui, enfatiza a necessidade de pesquisas e desenvolvimentos contínuos nas medidas de segurança de hardware, assim como a necessidade de testes e avaliações rigorosas dos chips antes de chegarem aos consumidores.
Resumindo, a introdução dos IRTs demonstra a importância da confiabilidade na execução de ataques, enquanto também remodela nossa compreensão da flexibilidade possível durante a fase de fabricação. Adaptações na tecnologia e nos protocolos de segurança serão essenciais pra se defender contra essas ameaças cada vez mais sofisticadas no futuro.
Título: Towards Practical Fabrication Stage Attacks Using Interrupt-Resilient Hardware Trojans
Resumo: We introduce a new class of hardware trojans called interrupt-resilient trojans (IRTs). Our work is motivated by the observation that hardware trojan attacks on CPUs, even under favorable attack scenarios (e.g., an attacker with local system access), are affected by unpredictability due to non-deterministic context switching events. As we confirm experimentally, these events can lead to race conditions between trigger signals and the CPU events targeted by the trojan payloads (e.g., a CPU memory access), thus affecting the reliability of the attacks. Our work shows that interrupt-resilient trojans can successfully address the problem of non-deterministic triggering in CPUs, thereby providing high reliability guarantees in the implementation of sophisticated hardware trojan attacks. Specifically, we successfully utilize IRTs in different attack scenarios against a Linux-capable CPU design and showcase its resilience against context-switching events. More importantly, we show that our design allows for seamless integration during fabrication stage attacks.We evaluate different strategies for the implementation of our attacks on a tape-out ready high-speed RISC-V microarchitecture in a 28nm commercial technology process and successfully implement them with an average overhead delay of only 20 picoseconds, while leaving the sign-off characteristics of the layout intact. In doing so, we challenge the common wisdom regarding the low flexibility of late supply chain stages (e.g., fabrication) for the insertion of powerful trojans. To promote further research on microprocessor trojans, we open-source our designs and provide the accompanying supporting software logic.
Autores: Athanasios Moschos, Fabian Monrose, Angelos D. Keromytis
Última atualização: 2024-05-02 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2403.10659
Fonte PDF: https://arxiv.org/pdf/2403.10659
Licença: https://creativecommons.org/licenses/by-nc-sa/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.