A chave de assinatura criptográfica de um desenvolvedor é um dos principais pilares da segurança do Android. Sempre que o Android atualiza um aplicativo, a chave de assinatura do aplicativo antigo em seu telefone deve corresponder à chave da atualização que você está instalando. As chaves correspondentes garantem que a atualização realmente veio da empresa que criou originalmente seu aplicativo e não é um esquema de sequestro malicioso. Se a chave de assinatura de um desenvolvedor vazasse, qualquer um poderia distribuir atualizações de aplicativos maliciosos e o Android as instalaria alegremente, pensando que são legítimas.
No Android, o processo de atualização do aplicativo não é apenas para aplicativos baixados de uma loja de aplicativos, você também pode atualizar os aplicativos integrados do sistema criados pelo Google, o fabricante do seu dispositivo e quaisquer outros aplicativos integrados. Enquanto os aplicativos baixados têm um conjunto estrito de permissões e controles, os aplicativos integrados do sistema Android têm acesso a permissões muito mais poderosas e invasivas e não estão sujeitos às limitações usuais da Play Store (é por isso que o Facebook sempre paga para ser um aplicativo integrado ). ). Se um desenvolvedor terceirizado perder sua chave de assinatura, isso seria ruim. Sim, uma Android OEM já perdeu a chave de assinatura do aplicativo do sistema, isso seria muito, muito ruim.
Adivinha o que aconteceu! Łukasz Siewierski, membro da equipe de segurança do Android do Google, tem uma postagem sobre o rastreador de problemas da Android Partner Vulnerability Initiative (AVPI) detalhando chaves de certificado de plataforma vazadas que são usados ativamente para assinar malware. O post é apenas uma lista das chaves, mas rodando cada uma delas APK Mirror ou Google VirusTotal o site colocará nomes em algumas das chaves comprometidas: Samsung, LGY mediatek são os pesos pesados na lista vazada de chaves, juntamente com alguns OEMs menores, como revisão e Szroco, que faz Comprimidos Walmart Onn.
Essas empresas de alguma forma vazaram suas chaves de assinatura para estranhos, e agora você não pode confiar que os aplicativos que afirmam ser dessas empresas são realmente deles. Para piorar as coisas, as “chaves de certificado de plataforma” que eles perderam têm algumas permissões sérias. Para citar a publicação da AVPI:
Um certificado de plataforma é o certificado de assinatura do aplicativo usado para assinar o aplicativo “android” na imagem do sistema. O aplicativo “android” é executado com um ID de usuário altamente privilegiado, android.uid.system, e possui permissões de sistema, incluindo permissões para acessar dados do usuário. Qualquer outro aplicativo assinado com o mesmo certificado pode declarar que deseja executar com o mesmo ID de usuário, dando-lhe o mesmo nível de acesso ao sistema operacional Android.