Skip to content
KitploitKITPLOIT
HerramientasBlog
Log in
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
asus-i005-cve-2026-43499 — CVE-2026-43499 (GhostLock) adaptación para ASUS ROG Phone 5S — disparador UAF + recuperación de pila pselect, fuga de KASLR bloqueada | Kitploit
Herramientas/GitHubGitHub/huaguiqi/asus-i005-cve-2026-43499
Seguridad AndroidEscalada de PrivilegiosForensia de MemoriaAnálisis de VulnerabilidadesExplotaciónIngeniería InversaSeguridad MóvilPapers e InvestigaciónDesarrollo de PayloadsExplotación de Binarios
GitHub
1143hace 1 mesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
huaguiqi/asus-i005-cve-2026-43499

asus-i005-cve-2026-43499

CVE-2026-43499 (GhostLock) adaptación para ASUS ROG Phone 5S — disparador UAF + recuperación de pila pselect, fuga de KASLR bloqueada

Ver Repositorio

asus-i005-cve-2026-43499

Estudio de adaptación de CVE-2026-43499 (GhostLock) en ASUS ROG Phone 5S (ASUS_I005).

Conclusión: la activación del fallo y la recuperación de pila están completamente verificadas; la cadena de escalada de privilegios no se completó debido a una profundidad de cobertura de pila insuficiente.

En concreto:

  • Stage 0~1.6 verificados con éxito en su totalidad (activación, recuperación de pila, filtración de dirección de pila)
  • La primitiva de escritura de Stage 2 requiere cubrir waiter+0x28..0x40 (pi_tree_entry.rb_left y lock)
  • pselect nfds=320 solo cubre hasta waiter+0x27
  • No se encontró un portador de recuperación de pila con mayor profundidad de cobertura (se agotaron más de 40 syscalls candidatas)
  • Todas las fuentes de fuga de KASLR de i005 también están bloqueadas

El análisis detallado se encuentra en docs/05-limitations.md.

TL;DR

FaseContenidoEstado
0Disparo de UAF (3 hilos + CMP_REQUEUE_PI)✅
1Recuperación de pila con pselect timeout=0 (shift=10)✅
1.6Fuga de SP de la pila del kernel de W (perf PERF_SAMPLE_REGS_INTR)✅
2Escritura en dirección arbitraria (requiere KASLR slide)❌
—Fuga de KASLR (las 8 fuentes fallaron todas)❌

Dispositivo objetivo

ElementoValor
DispositivoASUS ROG Phone 5S (ASUS_I005)
SoCSnapdragon 888 (SM8350)
Android13
Kernel5.4.210-qgki-perf-gc89cd02a7dfe arm64
SELinuxEnforcing (u:r🐚s0)
CapEff0

Descripción del fallo

CVE-2026-43499 (GhostLock) es un UAF de pila en el subsistema rtmutex del kernel de Linux. remove_waiter() utiliza current en lugar de waiter->task en la ruta de reversión del bloqueo proxy, lo que provoca que task_struct->pi_blocked_on conserve un puntero colgante.

Resultados clave

1. Recuperación de pila con pselect timeout=0 (original)

  • pselect timeout>0 → do_select → schedule → se recorre el pi_blocked_on colgante → interbloqueo
  • con timeout=0, end_time=NULL, do_select retorna de inmediato, pero _copy_from_user se sigue ejecutando
  • nfds=320 → una sola copia de 40 bytes → core_sys_select usa stack_fds en la pila
  • el inicio de ex fd_set coincide exactamente con el inicio de waiter → PSELECT_WAITER_WORD_SHIFT = 10

2. Fuga de dirección de pila del kernel W

  • perf_event_open(pid=W_tid) + PERF_SAMPLE_REGS_INTR(SP)
  • filtrar la pila de IRQ → las 41 muestras reales de pila de W son todas idénticas
  • alineación a 16KB → sp_top → fake_waiter = sp_top - 0x1b0

3. Punto de bloqueo — la configuración reforzada de i005 resiste todas las fugas de KASLR

Véase docs/05-limitations.md:

  • kptr_restrict=2
  • el hardware de perf en arm64 registra el PC de entrada al vector EL0→EL1 (overflow delayed)
  • perf_event_open(system-wide/kworker) EACCES
  • bpf() EACCES
  • /proc/{kallsyms,timer_list,self/stack} EACCES
  • /sys/module/*/sections EACCES

Estructura de directorios

  • docs/ Documentación de análisis y cronología
    • 06-research-snapshot.md Instantánea completa de la investigación
    • 07-iteration-log.md Registro de versiones fallidas
    • disasm/ Fragmentos clave de desensamblado
    • recon/ Salida de reconocimiento
  • include/ Tabla de símbolos + desplazamientos de estructuras
  • src/ Código fuente del PoC (véase src/README.md)
  • scripts/ Scripts de análisis
  • logs/ Registros de ejecución (no incluidos en git)

Reproducción

# 1. Extraer símbolos y desplazamientos (requiere vmlinux compilado a partir del código fuente oficial del kernel de ASUS)
./scripts/extract_symbols.sh
./scripts/gen_symbols_h.sh
./scripts/extract_offsets.sh

# 2. Compilar Stage 0
aarch64-linux-gnu-gcc -static -O2 -pthread \
  -o ~/tmp/work/bin/poc_stage0_trigger src/poc_stage0_trigger.c

# 3. Ejecutar en el dispositivo (requiere adb shell al dispositivo objetivo)
adb shell /data/local/tmp/poc_stage0_trigger
Toolchain: aarch64-linux-gnu-gcc -static -O2 -pthread

Referencias

· gitchw/ghostlock-cve-2026-43499        Huawei Watch 4 Pro, 5.4.210 (ARM32)
· ccp-p/ghostlock-cve-2026-43499-4.19-k40  Redmi K40, 4.19.157 (aarch64)
· JoinChang/ghostlock-oneplus              varios dispositivos OnePlus, viabilidad del diseño de pila
· knowlily/cve-2026-43499-honor             análisis de fallo en Honor

Descargo de responsabilidad

Solo para investigación de seguridad. No utilizar en dispositivos no autorizados.
Descargar herramienta