2 pontos por GN⁺ 2024-10-08 | 2 comentários | Compartilhar no WhatsApp
  • Alerta de spoiler: "É possível."
  • Tema: quando não há bugs, são necessários métodos criativos, e a injeção de falhas em hardware pode ser a solução. Isso inclui corrupção de dados de controle de software, glitch de energia, glitch de clock, pulso eletromagnético, laser etc.
  • Injeção de falhas em hardware: normalmente exige equipamentos caros, mas um método barato é usar um acendedor piezoelétrico de churrasco combinado com um indutor como ferramenta de injeção de falhas eletromagnéticas (EMFI).

Alvo de teste

  • Equipamento: notebook Samsung S3520, CPU Intel i3-2310M, 1GB de RAM DDR3.
  • Objetivo: criar um exploit local de escalonamento de privilégios baseado em falhas de hardware.
  • Método: injetar uma falha em um dos pinos DQ do barramento DDR para induzir erros de memória.

Exploit de bit flip no CPython

  • Objetivo: criar um exploit de "escape da sandbox" no CPython.
  • Estratégia: criar uma estrutura falsa de bytearray dentro de um objeto bytes e induzir o CPython a fornecer uma referência a esse objeto falso.

Exploit de bit flip no Linux

  • Objetivo: obter privilégios de root a partir de um usuário Linux sem privilégios.
  • Conceitos-chave: cache de memória, memória virtual e tabelas de páginas, buffer de lookaside de tradução (TLB).
  • Estratégia: mapear tabelas de páginas em memória acessível ao usuário para permitir acesso a memória física arbitrária.

Uso prático

  • Aplicação: um LPE no Windows usando EMFI para ajudar gamers a retomar o controle de seus PCs.
  • Possibilidade futura: possibilidade de implementar um exploit automatizado instalando um RP2040 em uma "gaming RAM".

Resumo do GN⁺

  • Este artigo explica como explorar vulnerabilidades de segurança em software e hardware por meio de injeção de falhas em hardware de baixo custo.
  • A injeção de falhas em hardware é possível mesmo sem equipamentos caros e mostra a possibilidade de atravessar diversas fronteiras de segurança.
  • Este artigo ajuda a entender a interação entre hardware e software e pode ser útil para pesquisadores de segurança ou hackers.
  • Um projeto com funcionalidade semelhante inclui técnicas de injeção de falhas em memória como o Rowhammer.

2 comentários

 
mammal 2024-10-08

Isso me lembra de tirar o ignitor do isqueiro para levantar as moedas das máquinas de fliperama.

 
GN⁺ 2024-10-08
Comentários do Hacker News
  • Obter acesso root no Switch 2 foi a inspiração, e obter acesso root no Linux foi a POC. O objetivo era recuperar a posse do hardware sem quebrar o TPM nem o anti-cheat de ring 0 dos jogos

    • Por meio de bit flips elétricos, é possível transformar um ponteiro seguro em um ponteiro malicioso
    • Havia a visão de que, com acesso físico, o jogo estava acabado, mas TPMs e ambientes de execução confiáveis mudaram essa visão
    • É interessante encontrar um método confiável sem solda. Será preciso pensar bastante sobre como lidar com interferência elétrica
  • Com acesso físico, é possível regravar a BIOS ou instalar um backdoor em drivers. No entanto, se o disco estiver criptografado, esse tipo de hack não é possível

    • A ideia da antena pode evoluir para um hardware com dispositivo de interferência embutido, capaz de se comunicar com o exterior por meio sem fio
  • Alguém achou que o texto dizia que obtiveram acesso root em um isqueiro. Como o forno dos pais recebe atualizações de software regularmente, não duvidou que um isqueiro pudesse ser inteligente

  • Em "0x100_0000", o propósito do "_" não altera nada. Não afeta o valor numérico

  • Isso lembra exploits em gabinetes de arcade em Sydney nos anos 80 e 90. Era possível adicionar créditos ao jogo usando um acendedor piezoelétrico

  • Este é o tipo de conteúdo que se espera ver no HN. O talento de algumas pessoas é impressionante. Fico pensando quanto tempo leva para adquirir esse tipo de habilidade

  • Não é apenas um exploit divertido, mas também uma ótima mini-introdução a como funciona o cache da CPU. Fico me perguntando se alguém se lembra daquele site que explicava como os computadores funcionam, começando pelos portas lógicas

  • "Só é preciso um resistor de 15 ohms e um fio soldado ao DQ26. O fio funciona como uma antena, despejando interferência eletromagnética próxima diretamente no barramento de dados"

    • Um hack muito legal de usar um isqueiro para gerar interferência eletromagnética
  • Eu o sigo no Mastodon, e esse post também é ótimo. Há um vídeo no Mastodon mostrando o acesso root