ENLBufferPwn: Vulnerabilidade crítica divulgada em jogos 3DS, Wii U e Switch

O hacker da Nintendo, Pablo MK7, foi libertado ENLBufferPwn, uma exploração que inclui código de prova de conceito, que demonstra uma vulnerabilidade crítica em vários jogos originais da Nintendo. Vídeos de demonstração do exploit mostram que é possível assumir o controle total do console de um alvo, simplesmente fazendo com que ele participe de um jogo multijogador.

Os jogos de impacto incluem Mario Kart 7, Mario Kart 8, Splatoon 1, 2, 3, Nintendo Switch Sports, e outros títulos originais da Nintendo. O hacker explica que a vulnerabilidade pode ser usada como parte de uma cadeia de exploração para executar código personalizado nos consoles. No entanto, a Nintendo já corrigiu a vulnerabilidade na maioria dos jogos, após a divulgação por meio de seu programa de recompensas no final do ano passado.

O que é ENLBufferPwn para Nintendo Switch, Wii U e 3DS?

ENLBufferPwn é uma vulnerabilidade no código de rede comum de vários jogos originais da Nintendo desde o Nintendo 3DS que permite que um invasor execute código remotamente no console da vítima apenas tendo um jogo online com eles (execução remota de código). Foi descoberto por várias pessoas independentemente durante 2021 e relatado à Nintendo durante 2021 e 2022. Desde o relatório inicial, a Nintendo corrigiu a vulnerabilidade em muitos jogos vulneráveis. As informações neste repositório foram divulgadas com segurança após obter permissão da Nintendo.

A vulnerabilidade marcou 9,8/10 (crítico) na calculadora CVSS 3.1.

Aqui está uma lista de jogos que sabidamente tiveram a vulnerabilidade em algum momento (todos os jogos Switch e 3DS listados receberam atualizações que corrigem a vulnerabilidade, então eles não são mais afetados):

    • Mario Kart 7 (corrigido na v1.2)
    • Mario Kart 8 (ainda não consertado)
    • Mario Kart 8 Deluxe (corrigido na v2.1.0)
    • Animal Crossing: New Horizons (corrigido na v2.0.6)
    • ARMS (corrigido na v5.4.1)
    • Splatoon (ainda não corrigido)
    • Splatoon 2 (corrigido na v5.5.1)
    • Splatoon 3 (consertado no final de 2022, versão exata desconhecida)
    • Super Mario Maker 2 (corrigido na v3.0.2)
    • Nintendo Switch Sports (corrigido no final de 2022, versão exata desconhecida)
    • Provavelmente mais…

PabloMK7 acrescenta:

Combinado com outras vulnerabilidades do sistema operacional, o controle total do console remoto pode ser alcançado. Isso foi demonstrado no caso de Mario Kart 7, onde uma carga útil é enviada para iniciar o SafeB9SInstaller. No entanto, é teoricamente possível fazer outras atividades maliciosas, como roubo de informações de conta/cartão de crédito ou fazer gravações de áudio/vídeo não autorizadas usando o microfone/câmeras integrados ao console.

O hacker forneceu vídeos de prova de conceito para mostrar a vulnerabilidade, em Mario Kart 7 e Mario Kart 8

Detalhes técnicos do ENLBufferPwn

Do leia-me do exploit:

o ENLBufferPwn Vulnerabilidade explora um estouro de buffer na classe C++ NetworkBuffer presente na biblioteca da rede enl (Net em Mario Kart 7) usado por muitos jogos originais da Nintendo. Esta classe contém dois métodos Add e Set que preenchem um buffer de rede com dados provenientes de outros jogadores. No entanto, nenhum desses métodos verifica se os dados de entrada realmente cabem no buffer de rede. Como os dados de entrada são controláveis, um estouro de buffer pode ser acionado em um console remoto apenas tendo uma sessão de jogo online com o invasor. Se feito corretamente, o usuário vítima pode nem perceber que uma vulnerabilidade foi acionada em seu console. As consequências desse estouro de buffer variam no jogo, desde simples modificações inofensivas na memória do jogo (como abrir e fechar repetidamente o menu inicial no 3DS) até ações mais severas, como assumir o controle total do console.

A exploração pode ser usada para interromper outros jogadores em jogos online, como pressionar remotamente o botão home em seu controlador no meio do jogo

Posso hackear meu Nintendo Switch com ENLBufferPwn?

Deixando o 3DS e o Wii U de lado por um minuto, não acho que esse exploit possa ser facilmente aproveitado para hackear o Nintendo Switch:

  • Em primeiro lugar, exigiria que ele fosse encadeado com outras vulnerabilidades para obter escalonamento de privilégios e, pelo que sei, não há exploits de kernel publicamente conhecidos no firmware mais recente (alguns foram supostamente corrigidos recentemente, no entanto)
  • Mas, ou mais importante, o fato de que isso requer ingressar em jogos online provavelmente significa que a Nintendo tem várias maneiras de evitar isso, corrigindo os jogos sendo o óbvio, mas não o único. Em outras palavras, quando o exploit foi divulgado publicamente, ele já estava morto. Ao contrário do seu típico exploit “offline” onde as pessoas que permaneceram em um firmware inferior poderiam esperar um Jailbreak, o acesso online (aos servidores da Nintendo) geralmente significa ter o firmware mais recente e o patch mais recente para o seu jogo específico instalado, o que significa uma vulnerabilidade corrigida.

Em outras palavras, embora a vulnerabilidade seja crítica e possa afetar outros jogos, não vejo pessoalmente como isso poderia ser usado para uma exploração “benéfica” no Nintendo Switch. A melhor (e única) maneira de hackear seu Switch quando 2022 chega ao fim, os modchips permanecem para revisões mais recentes do hardware.

No que diz respeito ao 3DS e ao Wii U, eles podem ser hackeados com bastante facilidade, então os benefícios do hack são limitados nesse contexto, do ponto de vista do usuário final.

No entanto, é uma conquista bastante notável criar uma exploração que pode atingir várias gerações de console ao mesmo tempo!

Baixar ENLBufferPwn

Você pode baixar o código ENLBufferPwn para Mario Kart 7 e Mario Kart 8 no github do projeto aqui.

fonte: PabloMK7

Leave a Comment

Your email address will not be published. Required fields are marked *