Como passar SafetyNet no Android após fazer root ou instalar uma ROM personalizada

É possível passar pelo SafetyNet, mesmo após extensas modificações, como root ou instalação de uma ROM personalizada. Confira como fazer isso aqui!

Links Rápidos

  • O que é SafetyNet?
  • Disparo SafetyNet e suas consequências
  • Como passar no atestado SafetyNet em dispositivos Android
  • Verificação

O desvio do SafetyNet tem sido um jogo de gato e rato entre o Google e a comunidade de modding pós-venda do Android. Os funileiros adoram modificar o software em seus telefones – um processo que geralmente envolve o desbloqueio do bootloader como primeira etapa. Mas isso, por sua vez, desarma o SafetyNet, o que pode fazer com que vários aplicativos populares e cruciais parem trabalhando ao telefone, alguns deles compreensivelmente, pois dependem de um ambiente à prova de violação para execução.

Para ser mais preciso, SafetyNet é destinado a desenvolvedores de aplicativos, mas eles podem optar por usá-lo ou não. Para um usuário final comum, porém, você pode desistir do potencial de modificação do Android e passar nos testes de compatibilidade do SafetyNet ou permanecer condenado ao ostracismo pelos editores de aplicativos. Se você está se perguntando como passar o SafetyNet mesmo depois de fazer root ou

instalando uma ROM personalizada no seu dispositivo, este guia deve ajudá-lo com isso.

O que é SafetyNet?

O Android foi projetado para ser executado sem dar ao usuário final qualquer tipo de controle privilegiado sobre os subsistemas subjacentes. Caso uma pessoa que opera um dispositivo Android consiga obter acesso semelhante ao administrativo (também conhecido como "superusuário") como no Linux, eles podem essencialmente alterar ou substituir aplicativos principais do sistema e configurações. Do ponto de vista de um desenvolvedor de aplicativos, isso significa que o dispositivo em que seu aplicativo está sendo executado pode estar potencialmente comprometido. Deveria haver algum tipo de sistema de detecção de abuso para examinar o ambiente de software e hardware do dispositivo e garantir aos desenvolvedores de aplicativos que está tudo bem. É aqui que entra a SafetyNet.

Embora a modificação seja parte integrante do ecossistema Android, às vezes é necessário um alto grau de rigor no sistema operacional para satisfazer as restrições das políticas de segurança. SafetyNet é um conjunto de APIs de detecção de abuso presentes no Google Play Services. Ao ligar para o API de atestado SafetyNet, aplicativos de terceiros podem verificar se o ambiente de software do dispositivo foi violado de alguma forma. A API verifica várias coisas, como o status de desbloqueio do bootloader, sinais de binários de superusuário e muito mais para comparar o estado atual do dispositivo Android de destino e verificar a integridade do ambiente em relação a um valor 'seguro' conhecido no lado do servidor.

Protocolo API de atestado SafetyNet

Notavelmente, o Google já anunciou planos para eliminar gradualmente o SafetyNet. Será substituído pelo API Play Integrity até 2024. Seja como for, o SafetyNet ainda é usado por vários desenvolvedores de aplicativos para detecção de adulteração, o que significa que é realmente um obstáculo difícil para os entusiastas de modding.

Disparo SafetyNet e suas consequências

Vários eventos de desvio da configuração padrão de um dispositivo Android eventualmente levam ao disparo do SafetyNet. Mesmo se você apenas desbloquear o bootloader do seu telefone e deixar o sistema operacional instalado de fábrica intacto, você ainda poderá obter uma "incompatibilidade de perfil CTS" (onde CTS significa o Compatibilidade THusa Ssuíte) erro que causa falha na verificação do SafetyNet. Se você Faça root no seu dispositivo Android ou substitua o firmware padrão por um ROM personalizado, você praticamente terminará com um status de falha do SafetyNet. Como resultado, você não pode usar aplicativos e jogos que utilizem validação SafetyNet no dispositivo. Isto é especialmente verdadeiro para aplicativos bancários e outros aplicativos financeiros, como Google Pay, pois eles dependem estritamente do resultado do SafetyNet Attestation e não permitem que os usuários operem o aplicativo em um ambiente aparentemente adulterado por questões de segurança.

Quando se trata de jogos, os desenvolvedores usam o SafetyNet para avaliar a integridade do dispositivo, para que possam evitar que jogadores desonestos trapaceiem ou modifiquem variáveis ​​do jogo para obter vantagens injustas. Por último, mas não menos importante, você também pode encontrar exemplos em que os editores simplesmente uso indevido do mecanismo de detecção de adulteração do Google sem nenhuma razão prática, e é por isso que os usuários avançados desejam evitar as rotinas de detecção.

Resumindo, a comunidade modding terá que escolher entre ter acesso a root/ROMs/kernels personalizados/etc. ou seus aplicativos e jogos preferidos. Isso pode soar como o fim do desenvolvimento pós-venda do Android, mas há esperança.

Como passar no atestado SafetyNet em dispositivos Android

Como o Google atualiza periodicamente o backbone da API SafetyNet Attestation, não existe um método universal verdadeiro para ignorar as verificações. Como as restrições dependem de vários fatores, você pode passar o SafetyNet em um ambiente modificado falsificar os parâmetros mais significativos em dispositivos legados, mas o mesmo truque pode não funcionar em dispositivos mais recentes telefones. A comunidade de desenvolvimento do mercado de reposição criou uma série de técnicas para passar nas verificações do SafetyNet, mas tenha em mente que um a implementação genérica não é possível devido à natureza em constante mudança da API antiabuso. Este é um jogo de Dot and Ditto – um dia você estará à frente e no outro dia não estará.

Com o movimento gradual em direção ao atestado de hardware estratégia, o Google está contando com a segurança do Trusted Execution Environment (TEE) do telefone ou do módulo de segurança de hardware dedicado (HSM) para detecção de adulteração. Encontrar uma vulnerabilidade crítica de segurança no ambiente seguro isolado de um dispositivo e explorá-la para falsificar A resposta do lado do cliente da SafetyNet não pode ser uma abordagem viável, mas esta é a XDA, o que significa que não faltam formas inovadoras para superar o obstáculo.

Aqui estão alguns dos métodos conhecidos para passar no SafetyNet:

1. Restaurando o firmware original e travando novamente o bootloader

Esta é talvez a maneira mais simples de passar no SafetyNet, mas tem seus próprios méritos e deméritos. Tudo o que você precisa fazer é encontrar o firmware correto para o seu dispositivo Android, atualizá-lo e, finalmente, bloquear novamente o bootloader. Claro, você perderá a maior parte dos recursos da cena modding, mas na verdade faz sentido quando você precisa usar seu dispositivo em um ambiente gerenciado com políticas de segurança rígidas ou está tentando vender seu dispositivo.

Se você não conhece as etapas de retorno ao estoque do seu telefone, recomendamos que você acesse os fóruns do XDA, procure o seu dispositivo e procure um guia para instalar o software oficial e bloquear o carregador de inicialização. Embora ofereçamos tutoriais para piscando Samsung Galaxy e Google Pixel dispositivos, não existe um método universal para isso, pois difere de telefone para telefone. Depois de restaurar a configuração de estoque, você poderá passar pelo SafetyNet sem qualquer dificuldade.

2. Usando Magisk

Se você possui um smartphone Android legado, Magisk é a sua melhor aposta para passar no SafetyNet sem muitos problemas. Mesmo que a versão estável atual do Magisk não inclua mais o MagiskHide (desde o lançamento v24), você ainda pode manter a versão v23.x e utilizar o MagiskHide para ocultar o status de root dos aplicativos. Além disso, você pode instalar Módulos Magisk como Configuração de adereços MagiskHide para alterar/falsificar a impressão digital do dispositivo para passar pelo SafetyNet. Para saber mais, dê uma olhada no tópico de suporte do módulo e siga as instruções fornecidas pelo(s) desenvolvedor(es).

Falando sobre a descontinuação do MagiskHide, o Lista negada recurso do Magisk é um desenvolvimento interessante, que permite aos usuários atribuir uma lista de processos onde o Magisk nega modificações adicionais e reverte todas as alterações feitas. Com uma configuração adequada, também pode ser utilizado para passar SafetyNet em alguns cenários.

Abaixo você pode encontrar algumas etapas genéricas para utilizar o DenyList para passar o SafetyNet:

  1. Abra o aplicativo Magisk e clique no ícone de engrenagem para acessar a seção de configurações.
  2. Role para baixo e ative Zygisk e Aplicar lista negada.
  3. Agora selecione o Configurar lista negada opção, toque nos três pontos na parte superior e selecione Mostrar aplicativos do sistema.
  4. Configure o DenyList para Google Play Store e Google Play Services.
    • Se precisar ocultar o status root de determinados aplicativos, você também deve selecioná-los neste estágio.
  5. Navegar para Configurações > Aplicativos e limpe os dados de todos os aplicativos que você configurou na DenyList.
  6. Reinicie o dispositivo. Após a inicialização, conecte-se à Internet, mantenha o telefone inativo por um tempo e verifique o status do SafetyNet.

Fóruns Magisk XDA

3. Usando o Universal SafetyNet Fix

Ignorar a técnica de atestado SafetyNet apoiada por hardware do Google é um pouco difícil, mas não é totalmente impossível. O Correção universal SafetyNet projeto do membro sênior do XDA kdrag0n realiza essa façanha de maneira inteligente, forçando o atestado básico sobre as verificações baseadas em hardware. Simplificando, ele injeta alguns códigos no processo do Play Services e registra um provedor de keystore falso que substitui o verdadeiro.

Notavelmente, o Universal SafetyNet Fix depende do Magisk quando se trata de passar na parte básica do atestado. O desenvolvedor oferece suporte ao Zygisk apenas para a versão mais recente, o que significa que você precisa do Magisk 24 ou mais recente para usá-lo. Dito isto, você também pode encontrar Riru-compilações legadas compatíveis no repositório com link abaixo.

Correção SafetyNet universal: Repositório GitHub ||| Tópico de discussão XDA

O processo de instalação é bastante simples:

  1. Certifique-se de ter uma instalação do Magisk funcionando no dispositivo de destino.
  2. Remova o módulo MagiskHidePropsConfig se instalado.
  3. Instale o módulo Universal SafetyNet Fix e reinicie o dispositivo.
    • Pode ser necessário limpar os dados do GMS após a reinicialização.
  4. Lucro!

Notavelmente, membro sênior do XDA Displax criou um fork do Universal SafetyNet Fix que pode ignorar a API Play Integrity. É particularmente útil para usuários da geração atual do Google Pixel. Dê uma olhada nos links abaixo para mais detalhes.

Garfo Universal SafetyNet Fix da Displax: Repositório GitHub ||| Tópico de discussão XDA

4. Shamiko

Há também o Shamiko – um módulo de trabalho em andamento escrito sobre o Zygisk (Magisk no processo do zigoto). Ele lê a lista de aplicativos a serem ocultados da lista de bloqueios do Magisk para ocultar a raiz do Magisk, o próprio Zygisk e os módulos Zygisk para contornar o SafetyNet. No entanto, Shamiko só pode funcionar após desativar o recurso DenyList.

Você pode baixar versões de pré-lançamento do Shamiko no repositório GitHub do LSPosed.

BaixarShamilko

Como Shamiko é essencialmente um módulo Magisk, é muito fácil de aplicar:

  1. Certifique-se de que o suporte Zygisk esteja habilitado no Magisk.
  2. Instale Shamiko como um módulo Magisk normal e reinicie.
  3. Configure o DenyList para adicionar processos de ocultação de acordo com seus requisitos. Contudo, não ligue o Aplicar lista negada opção.
  4. Para configurar o modo whitelist, basta criar um arquivo vazio da seguinte forma: /data/adb/shamiko/whitelist
  5. É isso!

5. ih8sn

Caso você não queira confiar no Magisk para passar no atestado SafetyNet, você pode experimentar um complemento experimental chamado ih8sn. Após a aplicação, ele pode falsificar uma infinidade de valores de prop para contornar verificações do SafetyNet, como o módulo MagiskHide Props Config, mas não há dependência do Magisk em primeiro lugar.

A ferramenta ih8sn é mantido por vários desenvolvedores do LineageOS, mas o projeto LineageOS ainda não o endossa oficialmente. Além disso, não é uma solução pronta para flash, então você mesmo precisa configurá-la antes de atualizar. Para saber mais, dê uma olhada em sua base de código seguindo o link abaixo.

repositório GitHub ih8sn

Aqui estão as etapas necessárias que você deve seguir para realizar uma instalação ih8sn bem-sucedida:

  1. Baixe a versão mais recente do ih8sn em aqui.
    • Para dispositivos Android modernos, escolha a variante aarch64.
  2. Abra o arquivo ZIP usando um arquivador adequado, navegue até /system/etc/ih8sn.conf, edite o arquivo com um editor de texto para alterar o CONSTRUIR_FINGERPRINT e NOME DO PRODUTO variáveis.
    • Navegue no subfórum do seu dispositivo para obter os valores mais apropriados para a variável duo.
  3. Salve as alterações e instale o arquivo ZIP modificado por meio de uma recuperação personalizada como TWRP.

Verificação

Depois de aplicar um dos métodos de passagem SafetyNet mencionados acima, você pode querer verificar o resultado. O aplicativo Magisk vem com a opção de iniciar a rotina de verificação do SafetyNet diretamente no menu principal, o que é muito útil. Você também pode optar por um aplicativo de código aberto chamado YASNAC (abreviatura de Set AEla não SafetyNet Aatestado Checker) para verificar o status e (opcionalmente) examinar a resposta JSON.

YASNAC - Verificador SafetyNetDesenvolvedor: Xingchen e Rikka

Preço: Grátis.

4.9.

Download

É assim que você pode passar o SafetyNet no seu telefone. Com um pouco de tempo e paciência, é possível restaurar o verdadeiro potencial de modding do Android sem se preocupar com as falhas do SafetyNet Attestation. Estaremos atualizando este guia com mais métodos de aprovação do SafetyNet, então volte novamente no futuro!