
Discussion détaillée de la vulnérabilité Zygote CVE-2024-31317
CVE-2024-31317 fournit un accès non privilégié à tout uid et scope 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é entièrement depuis une application non privilégiée, permettant la persistance de toute fonctionnalité qui l'utilise.
Cette exploitation devrait s'appliquer à la plupart des versions Android antérieures au correctif de sécurité de juin 2024 et à Android 9+. Certains fournisseurs 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 les versions Android 11 et inférieures. Voir les sources annexées pour les instructions d'implémentation sur les versions antérieures à 12.
Le privilège shell devrait être équivalent à 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 par défaut des contextes de propriétés sont listées dans property_contexts et system_app.te.
Cette recherche s'est fortement appuyée sur les sources suivantes ainsi que sur le code source réel d'Android :