
Discussion détaillée de la vulnérabilité Zygote CVE-2024-31317
La CVE-2024-31317 fournit un accès non privilégié à n'importe quel uid et à toute portée SELinux disponible pour les applications Android légitimes. Cela donne accès à l'uid 1000 (system) et à l'uid 2000 (shell), et peut être déclenchée entièrement depuis une application non privilégiée, permettant la persistance de toute fonctionnalité l'utilisant.
Cette exploitation devrait s'appliquer à la plupart des versions d'Android antérieures au correctif de sécurité de juin 2024 et à Android 9+. Certains fabricants ont peut-être intégré ce changement dans des versions plus anciennes. Concrètement, cela concerne Android 9-14 avec un correctif de sécurité de 2024-06-01 ou inférieur.
La vulnérabilité est triviale pour Android 11 et les versions inférieures. Voir les sources ci-jointes pour les instructions d'implémentation sur les versions antérieures à 12.
Le privilège shell devrait être identique à un accès direct via adb shell. Le privilège system est plus discutable. @oddbyte tient une liste des accès system disponibles, spécifiquement liés à cette vulnérabilité. Les permissions de contexte de propriétés par défaut sont listées dans property_contexts et system_app.te.
Cette recherche s'est fortement appuyée sur les sources suivantes et sur le code source réel d'Android :