
Adaptación de escalada de privilegios local basada en la vulnerabilidad del kernel CVE-2026-43499, integra KernelSU embebido. Modo jailbreak CVE-2026-43499+KernelSU
Adaptación de escalada de privilegios local basada en la vulnerabilidad del kernel CVE-2026-43499, con KernelSU integrado. Compila y genera preload.so; tras una explotación exitosa, KernelSU se iniciará en modo late-load (modo jailbreak). Admite la generación de target.h a partir de (xbl_config.img / vendor_boot.img) + boot.img.
Adaptación de escalada de privilegios local basada en una vulnerabilidad de kernel, que integra KernelSU embebido. Compila y genera preload.so; tras una explotación exitosa, KernelSU se iniciará en modo late-load (modo jailbreak). Admite la generación de target.h a partir de (xbl_config.img / vendor_boot.img) + boot.img, u otras vías.
Proyectos de referencia:
[!IMPORTANT] La explotación no autorizada de vulnerabilidades para dañar, comprometer u obtener acceso a sistemas informáticos está prohibida por la ley. Este proyecto se proporciona estrictamente con fines de investigación, educativos y de aprendizaje, y solo puede utilizarse en sistemas y entornos para los que se haya concedido autorización previa. Cualquier uso de este proyecto se realiza bajo el propio riesgo del usuario. Los autores y colaboradores no asumen ninguna responsabilidad por el mal uso de este proyecto ni por los daños, pérdidas o consecuencias legales derivados de su uso.
Aviso legal: el uso no autorizado de vulnerabilidades para dañar, invadir o acceder sin autorización a sistemas informáticos puede infringir las leyes y regulaciones aplicables. Este proyecto se limita a sistemas y entornos con autorización legal para fines de investigación, aprendizaje y pruebas de seguridad. Cualquier pérdida directa o indirecta, responsabilidad legal u otras consecuencias derivadas del uso, abuso o modificación de este proyecto serán asumidas por el propio usuario; los autores y colaboradores no asumen ninguna responsabilidad.
Cuando su versión de kernel sea {Linux Kernel}, se encuentra dentro del alcance de esta vulnerabilidad
Linux Kernel < commit 3bfdc63936dd4773109b7b8c280c0f3b5ae7d349
2.6.39 <= {Linux Kernel} < 6.1.175
6.2 <= {Linux Kernel} < 6.6.140
6.7 <= {Linux Kernel} < 6.12.86
6.13 <= {Linux Kernel} < 6.18.27
6.19 <= {Linux Kernel} < 7.0.4
| Target | Estado |
|---|---|
rodin (por defecto) | Verificado |
Otros src/targets/* | Referencia |
.
├── Makefile
├── build/
│ └── embed/
│ └── ksud # binario de userspace de KernelSU incrustado en preload.so
├── tools/
│ ├── generate_target.py # entrada unificada de generación de target.h de este repositorio
│ └── vendor/ # scripts auxiliares de generación originales sincronizados desde el directorio padre
└── src/
├── main.c # flujo principal del exploit
├── preload.c # constructor LD_PRELOAD + escritura/inicio de ksud
├── root.c # parche de cred/seccomp/SELinux/root
├── slide.c # fuga de KASLR slide de pselect
├── fops.c # ruta pselect/FOPS
├── pipe.c # primitiva de R/W física de pipe-buffer
├── ksud_blob.S # .incbin build/embed/ksud
├── kernelsnitch/ # helpers de KernelSnitch
└── targets/
├── rodin/
├── beryl/
└── ...
~/android-ndk-r29ANDROID_NDK_HOME / ANDROID_NDK_ROOT / NDK_ROOTmakegitmake PROJECT=<target> -j$(nproc)
Salida:
build/<target>/bin/preload.so
make list-projects
Este repositorio ya incluye un script unificado de generación de targets:
tools/generate_target.py
tools/vendor/generate_target.py
tools/vendor/generate_target_2.py
tools/vendor/detect_offset.py
tools/generate_target.py es el script de entrada. Hace referencia y encapsula todos los flujos de generación de targets del directorio padre, y finalmente produce un src/targets/<project>/target.h completo adaptado al código fuente de este repositorio.
El script no valida de forma obligatoria CONFIG_DEBUG_INFO_BTF=y en IKCONFIG. Si los desplazamientos de campos de estructura o el diseño percpu de entry_task no se pueden verificar, imprimirá una advertencia y continuará con la generación.
Si la imagen no tiene ningún BTF utilizable, por ejemplo cuando aparece:
有效 vmlinux BTF 候选不唯一: []
El generador entrará en el modo fallback sin BTF:
boot.img actual;rodin la plantilla predeterminada;without BTF y la plantilla utilizada;Se puede especificar una plantilla de fallback:
tools/generate_target.py --project <project> --boot boot.img --profile profile.json --template-target rodin
# o
TARGET_TEMPLATE=rodin tools/generate_target.py --project <project> --boot boot.img --profile profile.json
make generate-target PROJECT=<project> BOOT=/path/to/boot.img PROFILE=/path/to/profile.json
Se escribe por defecto en:
src/targets/<project>/target.h
También se puede invocar el script directamente:
tools/generate_target.py --project <project> --boot /path/to/boot.img --profile /path/to/profile.json
profile.json debe contener información de direcciones físicas, por ejemplo:
{
"p0_phys_offset": "0x40000000",
"p0_kernel_phys_load": "0x40000000"
}
Generar solo el profile:
make detect-profile PROFILE_OUT=profile.json
Detectar el profile y generar el target inmediatamente:
tools/generate_target.py --project <project> --boot /path/to/boot.img \
--detect-adb-and-generate --profile-out profile.json
El script también expone las otras entradas admitidas por el generador del directorio padre:
tools/generate_target.py --project <project> --boot boot.img --xbl-config xbl_config.img
tools/generate_target.py --project <project> --boot boot.img --mtk-vendor-boot vendor_boot.img
tools/generate_target.py --project <project> --boot boot.img --mtk-partitions /path/to/partitions
make generate-target PROJECT=rodin BOOT=../rodin/boot_a PROFILE=../profile.json
make generate-target PROJECT=beryl BOOT=../beryl/boot.img PROFILE=../profile.json
La salida exitosa tiene la siguiente forma:
生成成功: .../src/targets/<project>/target.h
kernel SHA-256: <sha256>
target macros: 168
rodin conserva por defecto el valor verificado en hardware real:
#define MM_STRUCT_SZ 0x500
Si es necesario sobrescribirlo:
tools/generate_target.py --project rodin --boot boot.img --profile profile.json --mm-struct-sz 0x...
Se recomienda generarlo a partir de la boot image y el profile coincidentes: