Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/ilgobbo00/cve-2023-6241-pixel7_adaptation
Sécurité AndroidAnalyse des VulnérabilitésExploitationRétro-ingénierieDébogueursSécurité MobileAnalyse de MicrologicielExploitation de Binaires

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
GitHub
ilgobbo00/cve-2023-6241-pixel7_adaptation

CVE-2023-6241-Pixel7_Adaptation

Adaptation de CVE-2023-6241 pour Google Pixel 7 à partir de Google Pixel 8 tirée de securitylab/SecurityExploits/Android/Mali/CVE_2023_6241

Voir le dépôt
1453il y a 1 anPas encore vérifié

CVE-2023-6241 pour Google Pixel 7

Ce dépôt illustre comment adapter l'exploit publié par securitylab dans son dépôt GitHub fonctionnant pour Google Pixel 8 pour un Google Pixel 7.

Avant de commencer la modification de l'exploit, l'hypothèse selon laquelle l'exploit original fonctionnait également pour les appareils Google Pixel 7 (après les correctifs nécessaires) a été faite sur la base de l'article associé à CVE-2023-6241. Cela était nécessaire car les deux appareils semblent différents (matériellement) (comparaison).

Outils

Voici les outils utilisés pour effectuer l'analyse et extraire les informations ou fichiers.

  • Ghidra
  • imjtool (pour remplacer abootimg car il semblait ne pas fonctionner avec les images Android plus récentes)
  • vmlinux-to-elf
  • Online Assembler and Disassembler
  • Android flash tool
  • Android NDK et compilateur aarch64-linux-android34-clang

Flux de travail

Voici comment l'objectif a été atteint en partant du début.

  1. Activez les options de développement sur l'appareil.

  2. Flachez l'appareil avec le bon correctif de sécurité (dans ce cas, un entre UP1A.231105.003, Nov 2023 et UQ1A.240205.002, Feb 2024 inclus), de préférence en utilisant Google Chrome et Android flash tool en cliquant sur "Flash" dans l'entrée souhaitée dans la page Factory Images for Nexus and Pixel Devices.

    Remarque 1 : l'utilisation d'Android flash tool pour flasher les appareils peut aider à résoudre les problèmes liés à la version du bootloader. Ces problèmes peuvent apparaître lors d'une opération de flashage utilisant le script fourni avec le fichier compressé téléchargé en cliquant sur "Link" dans la page Factory Images for Nexus and Pixel Devices.

    Remarque 2 : avant de flasher l'appareil, dans Android flash tool, cochez "Force Flash all partition" pour obtenir le même résultat que le script.

  3. Téléchargez l'image Android souhaitée en cliquant sur "Link" et extrayez le fichier boot.img du fichier compressé "image-panther.zip" à l'intérieur du fichier compressé principal "panther-<release>-factory-<8 premiers caractères du SHA-256>.zip"

  4. Exécutez ./imjtool.ELF64 boot.img extract. Le nouveau dossier "extracted" sera créé avec deux fichiers à l'intérieur. imjtool-output

  5. Exécutez vmlinux-to-elf ./extracted/kernel.decompressed <filename>.elf (pour référence future <filename>.elf sera Pixel7-kernel.elf). Un nouveau fichier avec le nom fourni sera créé.

Plus d'informations peuvent être obtenues à partir de l'article GitHub et du dépôt GitHub mentionnés au début.

Télécharger l’outil
vmlinux-to-elf-output
  • Ouvrez "Pixel7-kernel.elf" avec Ghidra. Il n'est pas nécessaire d'effectuer l'analyse automatique car elle prend beaucoup de temps et les informations peuvent toujours être extraites.

  • Ouvrez la fenêtre "Symbol table" et recherchez les champs d'intérêt (dans ce cas avc_den|sel_read_enforce$|init_cred|^commit_creds$). Le résultat devrait ressembler à ceci : SymbolTable

  • Allez à l'adresse de l'emplacement et obtenez le "Imagebase Offset" pour tous les champs recherchés. imagebase-offset

  • Définissez tous les décalages dans l'exploit en fonction de ce qui a été trouvé. set-offset.png

  • Calculez la valeur de ADD_COMMIT_2311 et ADD_INIT_2311 en trouvant la valeur HEX des opérations suivantes respectivement add x8, x8, #0xXXX et add x0, x0, #0xYYY en utilisant Online Assembler and Disassembler. Pour trouver les valeurs de XXX et YYY, il suffit de copier les 12 bits les plus bas respectivement de COMMIT_CREDS_2311 et ADD_INIT_2311 (par exemple si ADD_COMMIT_2311 est 0x17f0c8, alors le code HEX de add x8, x8, #0x0c8 est 0x91032108).
    Notez que les valeurs sont exprimées en big-endian, donc les octets résultants doivent être inversés.

  • Copiez le fichier GLES_mali.so depuis /vendor/lib64/egl/libGLES_mali.so (c'est-à-dire adb pull /vendor/lib64/egl/libGLES_mali.so) et compilez le tout avec /home/gobbo/Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/linux-x86_64/bin/aarch64-linux-android34-clang -g -DSHELL -DCL_TARGET_OPENCL_VERSION=300 -I. -L. mali_jit_csf.c mem_read_write.c mempool_utils.c -lGLES_mali -o mali_jit_csf.
    Remarque : pour être cohérent en termes de timing, la version de la bibliothèque OpenCL utilisée dans l'exploit était la plus récente disponible avant le correctif de sécurité qui a corrigé la vulnérabilité (c'est-à-dire version 2023.04.17)

  • Téléchargez et exécutez l'exploit

    root@kitploit:~
    adb push ./mali_jit_csf /data/local/tmp 
    export LD_LIBRARY_PATH=/vendor/lib64/egl
    ./data/local/tmp/mali_jit_csf