Clear Sky Science · pt

Rumo a compreender a aplicabilidade da defesa de alvo em movimento em tempo de execução para a internet das coisas e sistemas ciberfísicos

· Voltar ao índice

Por que computadores minúsculos precisam de defesas grandes

De termostatos inteligentes a robôs industriais, nossa vida cotidiana agora depende de pequenos dispositivos conectados que silenciosamente medem, controlam e automatizam o mundo. Mas esses mesmos aparelhos podem ser sequestrados por hackers que exploram falhas de software conhecidas há muito tempo para assumir o controle. Este artigo investiga se um truque de segurança poderoso, chamado defesa de alvo em movimento, realmente funciona no hardware modesto que alimenta a maior parte da Internet das Coisas (IoT) e dos sistemas ciberfísicos (CPS) — e o que isso significa para manter nosso mundo cada vez mais automatizado em segurança.

Figure 1
Figure 1.

Um alvo móvel para hackers

Ferramentas tradicionais de segurança, como firewalls ou antivírus, reagem na maior parte das vezes depois que o ataque já começou. A defesa de alvo em movimento adota uma tática diferente: ela altera constantemente partes-chave de um sistema para que os atacantes nunca possam ter certeza de onde mirar. A técnica específica estudada aqui é a Randomização do Layout do Espaço de Endereços (ASLR), que embaralha onde programas e bibliotecas ficam na memória cada vez que são executados. Assim, mesmo que atacantes saibam que existe um ponto fraco, eles não conseguem facilmente localizar seu endereço exato novamente. O ASLR é hoje padrão nos principais sistemas operacionais, mas seu comportamento em dispositivos pequenos e com recursos limitados — do tipo comumente encontrado em IoT e CPS — não era bem compreendido.

Levando três sistemas ao teste

Os autores comparam quão bem o ASLR funciona em três configurações baseadas em Linux: um sistema Kali Linux de 64 bits em um processador Intel típico, e dois sistemas ARM de 32 bits executando Raspberry Pi OS e OpenWRT, que estão mais próximos do que se encontra em dispositivos de borda, roteadores e gateways. Em vez de tentar invadir às cegas, eles adotam uma visão científica: registram repetidamente onde uma biblioteca de sistema comum (libc) aparece na memória, construindo grandes conjuntos de dados de endereços reais. Em seguida, analisam quão amplamente esses endereços se distribuem, como bytes individuais de cada endereço mudam de execução para execução, e quão imprevisível é o padrão geral usando uma medida chamada entropia. Isso permite quantificar quão difícil seria para um atacante adivinhar a localização correta.

Quão “aleatório” é “aleatório o bastante”?

Os resultados mostram um contraste agudo entre o grande sistema de 64 bits e os dispositivos de 32 bits. No Kali Linux de 64 bits, os endereços se espalham quase uniformemente por uma faixa ampla: a maioria dos bytes do endereço muda bastante, pouquíssimas posições se repetem, e um teste estatístico confirma que as escolhas parecem próximas do verdadeiramente aleatório. Para um atacante, isso significa um espaço de busca enorme e pouca esperança de adivinhar o local certo rapidamente. Nos sistemas de 32 bits, em contraste, aparece na prática apenas um pequeno conjunto de 256 endereços distintos, mesmo quando são coletadas 100.000 amostras. Vários bytes mudam quase nada, em grande parte por restrições arquiteturais e pelo alinhamento obrigatório de páginas de memória. Na prática, isso significa que um atacante pode precisar de apenas algumas centenas de tentativas — não milhões ou bilhões — para atingir o endereço correto.

Figure 2
Figure 2.

Ataque no mundo real e custos pequenos

Para verificar se essas diferenças importam na prática, os pesquisadores implementam um tipo de técnica de desvio de controle conhecida como ataque de programação orientada por retorno (ROP) em todos os três sistemas. Quando uma opção chave de fortalecimento chamada Executável com Posição Independente (PIE) está desativada, o ataque tem sucesso: o fluxo normal do programa é desviado para funções ocultas escolhidas pelo atacante. Mas uma vez que o PIE é ativado, combinando-se com o ASLR para tornar até mesmo a localização do programa principal móvel, o ataque passa a falhar e causar travamento em vez de assumir o controle — tanto na máquina poderosa de 64 bits quanto nos dispositivos ARM modestos de 32 bits. Medições também mostram que habilitar ASLR, proteções de pilha e memória não executável adiciona apenas uma pequena sobrecarga no uso de memória e no tempo de execução, na ordem de cerca de um por cento.

O que isso significa para dispositivos do dia a dia

O estudo conclui que, embora o ASLR em sistemas ARM de 32 bits seja matematicamente mais fraco e menos aleatório do que em desktops e servidores de 64 bits, ele ainda oferece proteção comparável à de PCs antigos de 32 bits e pode bloquear ataques diretos quando combinado com outras defesas integradas. Para os menores sensores de IoT, o ASLR muitas vezes é impossível porque o hardware não possui os recursos de memória necessários; nesses casos, outras técnicas como boot seguro e criptografia leve são mais adequadas. Mas para dispositivos de borda, como roteadores e placas da classe Raspberry Pi, habilitar ASLR, PIE e salvaguardas relacionadas é prático e vale a pena. Migrar essas plataformas para arquiteturas de 64 bits e emparelhar o ASLR com outros truques de alvo em movimento nos níveis de rede e software pode elevar significativamente a dificuldade para atacantes que tentam transformar objetos cotidianos em armas.

Citação: Gurung, D., Pradhan, M.P. & Gurung, S. Towards understanding the applicability of runtime moving target defense for the internet of things and cyber physical systems. Sci Rep 16, 5907 (2026). https://doi.org/10.1038/s41598-026-36797-4

Palavras-chave: defesa de alvo em movimento, ASLR, segurança da Internet das Coisas, sistemas ciberfísicos, ataques de estouro de buffer