O desvio da SafetyNet tem sido um jogo de gato e rato entre o Google e a vizinhança. A comunidade adora alterar o software do telefone, e isso geralmente inclui o desbloqueio do bootloader como primeira etapa. Mas isso, por sua vez, acessa a SafetyNet, que pode fazer com que vários aplicativos populares parem de funcionar no telefone, alguns deles compreensivelmente porque dependem de um ambiente inviolável para execução.
O SafetyNet é destinado a criadores de aplicativos , mas eles podem optar por usá-lo ou não. No entanto, para um usuário final comum, você pode abandonar o potencial de modificação do Android e cruzar os testes de compatibilidade SafetyNet ou permanecer no ostracismo pelos editores de aplicativos. Se você está questionando métodos para cruzar SafetyNet mesmo depois de fazer o root ou instalar uma ROM personalizada em seu computador, esta informação deve ajudá-lo com isso.
Navegue por este texto:
O que é SafetyNet?
O Android foi projetado para rodar sem dar ao consumidor final qualquer tipo de controle privilegiado sobre os subsistemas subjacentes. No caso de um indivíduo que trabalha em uma máquina Android estar pronto para obter acesso relacionado às permissões administrativas (também conhecidas como “superusuário”) como no Linux, ele alterará ou substituirá principalmente os propósitos e configurações do sistema Android. Da atitude de um desenvolvedor de aplicativos, isso significa que a máquina em que seu aplicativo está trabalhando pode, sem dúvida, ser comprometida. Deve haver algum tipo de sistema de detecção de abuso para examinar o software da máquina e o ambiente {hardware} e garantir aos criadores de aplicativos que tudo está bem. Esse é o lugar onde o SafetyNet está disponível.
Embora o modding seja parte integrante do ecossistema Android, normalmente você precisa de um alto grau de rigor no sistema operacional para atender às restrições das apólices de seguro de segurança. SafetyNet é um conjunto de APIs de detecção de abuso atuais nos provedores do Google Play. Ao chamar a API SafetyNet Attestation , terceiros podem verificar se o ambiente do programa de software da máquina foi adulterado de alguma forma. A API verifica vários problemas, como a posição de desbloqueio do bootloader, indicadores de binários do superusuário e mais para corresponder ao estado atual da máquina Android principal e confirmar a integridade do ambiente em oposição a um valor ‘seguro’ reconhecido no servidor- lado.
Notavelmente, o Google já apresentou planos para separar a SafetyNet . Provavelmente será alterado pela API Play Integrity até 2024.
Disparo SafetyNet e suas penalidades
Inúmeras ocasiões de saída da configuração de estoque de uma máquina Android acabam resultando no disparo da SafetyNet. Mesmo que você simplesmente desbloqueie o bootloader do seu telefone e deixe o sistema operacional instalado de fábrica intocado, você ainda deve receber um erro “CTS profile mismatch” (o lugar CTS significa o C ompatibility T est Suite ) erro que causa o SafetyNet verificar para falhar. Você deve fazer root em sua máquina Android ou substituir o firmware de inventário por uma ROM personalizada, você quase se encontrará com uma posição falhada da SafetyNet. Por causa disso, você não pode usar aplicativos e jogos que usam a validação SafetyNet no computador. Isso é muito verdadeiro para bancos e outros aplicativos monetários como o Google Pay , pois eles dependem estritamente do resultado do Certificado SafetyNet e não permitem que os usuários usem o aplicativo em um ambiente aparentemente adulterado por uma questão de segurança.
No que diz respeito aos videogames, os construtores usam SafetyNet para avaliar a integridade da máquina, a fim de evitar que jogadores desonestos desonestos ou modifiquem as variáveis do jogo para benefícios injustos. Por último, mas não menos importante, você também pode encontrar exemplos em que os editores estão apenas fazendo uso indevido do mecanismo de detecção de adulteração do Google sem motivo razoável, e é por isso que os usuários de energia precisam evitar as rotinas de detecção.
Resumindo, a vizinhança modding deve selecionar entre acessar root/ROMs/kernels personalizados/e assim por diante. ou seus aplicativos e videogames mais populares. Isso pode soar como a ponta do crescimento do mercado de reposição no Android, mas há esperança.
Métodos para cruzar o atestado SafetyNet em unidades Android
Como o Google atualiza periodicamente a estrutura da API SafetyNet Attestation, não há uma metodologia comum verdadeira para ignorar as verificações. Como as restrições dependem de uma variedade de componentes, é provável que você cruze a SafetyNet em um ambiente modificado falsificando essencialmente os parâmetros mais importantes em unidades herdadas, mas o mesmo truque pode não funcionar em nenhum aspecto em telefones mais novos. A vizinhança de crescimento do mercado de reposição oferece uma variedade de métodos para passar nas verificações SafetyNet, mas lembre-se do fato de que uma implementação genérica não é possível devido à natureza em constante mudança da API antiabuso . É uma recriação de gato e rato – em algum momento você estará à frente, no dia oposto não.
Com a transferência gradual para o método de certificação de {hardware} , o Google conta com a segurança do ambiente de execução confiável (TEE) do telefone ou do módulo de segurança de {hardware} dedicado (HSM) para detecção de adulteração. Descobrir uma vulnerabilidade de segurança vital na atmosfera segura remota de uma ferramenta e explorá-la para falsificar a resposta do lado do cliente da SafetyNet não é uma maneira possível, mas existem diferentes maneiras de superar o obstáculo.
Listadas abaixo estão algumas das estratégias bem conhecidas para cruzar a SafetyNet:
1. Restaurando o firmware exclusivo e bloqueando novamente o bootloader
Essa talvez seja a única abordagem para cruzar a SafetyNet, mas tem seus méritos e deméritos pessoais. Tudo o que você deve fazer é localizar o firmware certo em sua máquina Android, atualizá-lo e, eventualmente, bloquear novamente o bootloader. Afinal, você perderá muitos dos sinos e assobios do mod de Android, mas é realmente sensato quando você deve usar seu computador em um ambiente gerenciado com apólices de segurança rígidas, caso contrário, você está tentando vender seu computador.
2. Utilizando Magia
Se você possui um smartphone Android herdado, o Magisk é sua melhor aposta para cruzar a SafetyNet sem muitos problemas. Mesmo que a versão estável atual do Magisk não funcione mais com o MagiskHide desde a v24, você ainda pode seguir a versão v23.x e aproveitar o MagiskHide para cobrir a posição raiz dos aplicativos. Além disso, você pode configurar módulos Magisk como MagiskHide Props Config para alterar a impressão digital da máquina como uma forma de cruzar SafetyNet.
Falando sobre a descontinuação do MagiskHide, o novo recurso “DenyList” do Magisk é uma expansão interessante, que permite aos usuários atribuir uma lista de processos onde o Magisk nega outras modificações e reverte todas as alterações que havia feito. Com uma configuração aplicável, também pode ser usado para cruzar SafetyNet em algumas situações.
3. Utilizando o Common SafetyNet Repair
Ignorar o método de atestado SafetyNet com suporte de hardware do Google é um pouco problemático, mas não é apenas impossível. O empreendimento Common SafetyNet Repair do membro sênior do XDA, kdrag0n, realiza essa façanha de maneira inteligente, forçando o atestado essencial sobre as verificações de hardware.
Notavelmente, o Common SafetyNet Repair depende do Magisk em relação à aprovação da metade do atestado essencial. O desenvolvedor suporta o Zygisk apenas para o modelo mais recente, o que significa que você deseja o Magisk 24 ou mais recente para usá-lo. Dito isso, você também pode descobrir compilações legadas compatíveis com Riru no repositório vinculado abaixo.
4. Shamiko
Há também Shamiko – um módulo de trabalho em andamento escrito no topo do Zygisk (Magisk no processo de zigoto). Ele lê o registro de aplicativos para cobrir da lista de negação do Magisk para cobrir a raiz do Magisk, o próprio Zygisk e os módulos do Zygisk para evitar a SafetyNet. No entanto, Shamiko só pode funcionar depois de desativar a função DenyList.
Se você instalou o Magisk para root e deseja uma abordagem confiável para contornar o SafetyNet depois que o MagiskHide foi eliminado, aguarde o lançamento do módulo “Shamiko”. Ele usa a nova funcionalidade Zygisk (Magisk em Zygote), portanto, é mais eficaz do que MagiskHide. No entanto, um WIP tho.
— Mishaal Rahman (@MishaalRahman) 4 de janeiro de 2022
Você poderá obter compilações de pré-lançamento do Shamiko no repositório GitHub do LSPosed.
5. ih8sn
Caso você não precise depender do Magisk para cruzar o atestado SafetyNet, você pode experimentar um add-on experimental chamado ih8sn . Depois de usado, ele pode falsificar uma infinidade de valores prop como uma forma de contornar as verificações SafetyNet, assim como o módulo MagiskHide Props Config, mas não há dependência do Magisk em primeiro lugar.
O software ih8sn é mantido por vários construtores LineageOS , no entanto, o empreendimento LineageOS não o endossa formalmente, mas. Não é uma resposta pronta para piscar, por isso é aconselhável configurá-lo você mesmo antes de piscar. Para saber mais, confira sua base de código seguindo o link abaixo.
Verificação
Depois de usar uma das muitas estratégias de passagem SafetyNet mencionadas acima, é provável que você queira confirmar o resultado. O aplicativo Magisk vem com uma opção para provocar a rotina de verificação SafetyNet adequada em seu menu principal, que é basicamente útil. Você também pode ir para um aplicativo de fonte aberta chamado YASNAC (abreviação de Y et A nother SafetyNet A ttestation Checker ) para verificar a situação e (opcionalmente) estudar a resposta JSON .