
aplicación que porta CVE-2019-2215 a arm32 y monta un binario su en /sbin con denylist + instalador de aplicaciones root. guía de firehose/Magisk incluida
Acceso root para el Sonim XP3800. Hay dos métodos disponibles: elige el que mejor se adapte a tu situación.
La aplicación de administración root explota CVE-2019-2215 (una vulnerabilidad de kernel use-after-free en binder) para obtener root directamente en el dispositivo. No se necesita ordenador, ni desbloquear el bootloader, ni flashear. El binario del exploit es un puerto ARM32 desde cero dirigido al kernel 3.18.71 del XP3800: cada offset de estructura del kernel se obtuvo mediante ingeniería inversa del binario del kernel del dispositivo.
Instala el APK mediante ADB (el XP3800 bloquea la instalación de APKs desde el propio dispositivo), pulsa Instalar y el root se escribe permanentemente en /system/bin/su. El root persiste tras reinicios sin ningún servicio de arranque ni proceso en segundo plano: el binario simplemente está ahí, como cualquier otro comando del sistema.
adb install RootManager.apk
La primera vez que se invoca su después de un arranque, ejecuta el exploit del kernel (~1.2 segundos) y genera un demonio root persistente. Cada llamada posterior a su se conecta al demonio al instante (~0.13 segundos) — sin exploit, sin manipulación del kernel. El demonio ingresa al espacio de nombres de montaje del PID 1 mediante setns(), por lo que los comandos tienen acceso completo al sistema de archivos, incluido /system.
El exploit se serializa con flock() para evitar ejecuciones concurrentes (que provocarían un pánico en el kernel) y reintenta hasta 3 veces en caso de fallo.
su se instala en /system/bin de forma permanente. No es tmpfs, no hay receptor de arranque; sobrevive a reinicios y restablecimientos de fábrica./system es ext4 plano, se puede remontar libremente en lectura/escritura. Los cambios persisten tras reinicios.com.verizon.mdm.basicphone de Verizon y lo desactiva (o lo restaura). Consulta Eliminación de MDM de Verizon. Créditos: @anonymousfliphonesoom_score_adj = -1000). Consulta El demonio.su. Filtra por Usuario/Sistema/Todas, busca por nombre o paquete.El binario su tiene una lista de bloqueo incorporada. De forma predeterminada, cualquier aplicación puede usar su a menos que esté en la lista de bloqueo. Administra la lista de bloqueo desde la pantalla principal de la aplicación: marca la casilla junto a cualquier aplicación para bloquearla.
Termux y el shell ADB (uid 2000) siempre están permitidos independientemente de la lista de bloqueo. Se admiten entradas comodín como com.example.*.
La alternativa es flashear una imagen de arranque modificada mediante el modo EDL de Qualcomm y QFIL.
Detalles importantes:
dd una vez que tengas root. No descargues imágenes de arranque de Internet — otras variantes o versiones de firmware pueden no coincidir con tu dispositivo y podrían no arrancar.El XP3800 no tiene dm-verity — la partición /system es un sistema de archivos ext4 plano sin verificación de integridad. La bandera androidboot.veritymode=enforcing está establecida en la línea de comandos del kernel, pero es completamente inoperante: no hay dispositivos de mapeo de dm-verity, ni partición vbmeta, ni árbol hash.
su -c "mount -o remount,rw /system"
# haz tus cambios
su -c "mount -o remount,ro /system"
Los cambios persisten tras reinicios. Ten cuidado con lo que eliminas — borrar el archivo de sistema equivocado puede hacer que el dispositivo entre en un bucle de arranque.
Requiere Termux con aapt2, ecj, d8, apksigner, zip y ~/.android/{android.jar,framework-res.apk,debug.keystore}.
./build.sh
Salida: RootManager.apk
El exploit y su implementación están documentados en detalle:
Este software se proporciona tal cual, sin garantía alguna. El autor no asume ninguna responsabilidad por dispositivos brickeados, rotos o dañados de cualquier otra forma. Úsalo bajo tu propio riesgo.
| Comando | Descripción |
|---|
su | Shell root interactivo (conserva el entorno del que llama) |
su -c 'cmd' | Ejecuta un comando como root (usa el shell del sistema y PATH) |
su cmd | Igual que -c |
su -p -c 'cmd' | Ejecuta un comando conservando todo el entorno del que llama |
su --preserve-environment -c 'cmd' | Igual que -p |
su -s bash -c 'cmd' | Especifica el shell |
su --daemon | Inicia el demonio root manualmente (requiere root) |
su --mount-master | Aceptado por compatibilidad (no operación — el demonio ya tiene el espacio de nombres de montaje completo) |
su -v | Salida detallada del exploit |