
Discusión detallada de la vulnerabilidad de Zygote CVE-2024-31317
CVE-2024-31317 proporciona acceso sin privilegios a cualquier uid y ámbito SELinux disponible para aplicaciones de Android legítimas. Esto proporciona acceso al uid 1000 (system) y uid 2000 (shell), y puede activarse completamente desde una aplicación sin privilegios, permitiendo la persistencia de cualquier funcionalidad que lo utilice.
Este exploit debería aplicarse a la mayoría de las versiones de Android anteriores al parche de seguridad de junio de 2024 y Android 9+. Algunos fabricantes pueden haber incorporado este cambio en versiones anteriores. Específicamente, esto significa Android 9-14 con un parche de seguridad del 2024-06-01 o inferior.
La vulnerabilidad es trivial para las versiones de Android 11 y anteriores. Consulte las fuentes adjuntas para obtener instrucciones de implementación en versiones anteriores a la 12.
El privilegio de shell debería ser el mismo que el acceso directo mediante adb shell. El privilegio de system es más cuestionable. @oddbyte está manteniendo una lista de accesos system disponibles, específicamente relacionados con esta vulnerabilidad. Los permisos predeterminados del contexto de propiedades se enumeran en property_contexts y system_app.te.
Esta investigación se ha basado en gran medida en las siguientes fuentes y en el código fuente real de Android: