
Discussão detalhada da vulnerabilidade Zygote CVE-2024-31317
O CVE-2024-31317 fornece acesso não privilegiado a qualquer uid e escopo SELinux disponível para aplicativos Android legítimos. Isso fornece acesso ao uid 1000 (system) e uid 2000 (shell), e pode ser acionado inteiramente por um aplicativo não privilegiado, permitindo a persistência de qualquer funcionalidade que o utilize.
Este exploit deve se aplicar à maioria das versões do Android anteriores ao patch de segurança de junho de 2024 e Android 9+. Alguns fabricantes podem ter aplicado essa alteração seletivamente em versões mais antigas. Especificamente, isso significa Android 9-14 com um patch de segurança de 2024-06-01 ou inferior.
A vulnerabilidade é trivial para versões do Android 11 e anteriores. Veja as fontes anexadas para instruções de implementação em versões anteriores à 12.
O privilégio de shell deve ser o mesmo que o acesso diretamente via adb shell. O privilégio de system é mais questionável. @oddbyte está mantendo uma lista de acessos system disponíveis, especificamente relacionados a esta vulnerabilidade. As permissões de contexto de propriedade padrão estão listadas em property_contexts e system_app.te.
Esta pesquisa baseou-se fortemente nas seguintes fontes e no código-fonte real do Android: