Skip to content
KitploitKITPLOIT
HerramientasBlog
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.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
badspin — Bad Spin: Exploit de escalada de privilegios de Binder de Android (CVE-2022-20421) | Kitploit
Herramientas/GitHubGitHub/0xkol/badspin
Seguridad AndroidEscalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónExplotación de Binarios
GitHub0xkol/badspin

badspin

Bad Spin: Exploit de escalada de privilegios de Binder de Android (CVE-2022-20421)

Ver Repositorio
28950hace 3 añosRevisado por Kitploit

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

Bad Spin: LPE de Android Binder

Autor: Moshe Kol

Exploit de escalada de privilegios desde unstrusted_app para la vulnerabilidad de Android Binder (CVE-2022-20421). La vulnerabilidad fue parcheada en el Boletín de Seguridad de Android de octubre de 2022. El exploit funciona en dispositivos que ejecutan versiones de kernel 5.4.x y 5.10.x, y logra primitivas completas de R/W del kernel. Para el Google Pixel 6, también obtiene root completo y omisión de SELinux.

Puede encontrar el artículo completo aquí.

Ejecutar desde la terminal

  1. Compile la biblioteca libbadspin.so escribiendo make push en el directorio src/. Esto también enviará la biblioteca a /data/local/tmp.
  2. Ejecute adb shell.
  3. Ejecute LD_PRELOAD=/data/local/tmp/libbadspin.so sleep 1. Esto cargará la biblioteca e iniciará el exploit.

Ejecutar desde la aplicación demo

  1. Compile libbadspin.so escribiendo make push en el directorio src/. Esto copiará la biblioteca al directorio assets para la aplicación demo de Android.
  2. Compile la aplicación demo de Android en el directorio app/. (Puede necesitar Android Studio para hacer esto).
  3. Ejecute la aplicación y haga clic en el botón "Exploit".
  4. Consuma los registros usando: adb logcat -s BADSPIN

Opciones de compilación

Puede pasar las siguientes variables a make:

  • VERBOSE=1 para aumentar la verbosidad.
  • TEST_VULN=1 para probar la vulnerabilidad sin proceder con el exploit.

Dispositivos probados

root@kitploit:~
$ make list
0: Samsung Galaxy S22, Android 12 (6/2022), kernel 5.10.81
1: Samsung Galaxy S21 Ultra, Android 12 (3/2022), kernel 5.4.129
2: Google Pixel 6, Android 12 (5/2022), kernel 5.10.66
3: Google Pixel 6, Android 13 (9/2022), kernel 5.10.107

Soporte para un nuevo dispositivo

No es difícil adaptar el exploit y soportar un nuevo dispositivo.

  1. Asegúrese de que su nuevo dispositivo ejecute la versión de kernel 5.4.x o 5.10.x, y que su nivel de parche de seguridad de Android sea anterior a octubre de 2022.

  2. Agregue las propiedades de su dispositivo a dev_config.h.

  3. Especifique dos punteros de función:

    • kimg_to_lm(): Convierte un puntero virtual de imagen de kernel al mapeo lineal.
    • find_kbase(): Encuentra la dirección base del kernel a partir de un puntero filtrado de anon_pipe_buf_ops.

    Puede usar las funciones ya proporcionadas para esto. (Si su proveedor no es Samsung y no está seguro, use las mismas funciones que para el Pixel 6).

  4. Compile y ejecute.

Si le funciona, por favor envíe un pull request.

Problemas conocidos

  • El teléfono podría bloquearse en intentos fallidos.
  • El exploit es inestable en los primeros minutos después del arranque.
  • Solo funciona en versiones de kernel 5.4.x y 5.10.x.
  • Solo logra R/W del kernel en dispositivos que no son Pixel.
Descargar herramienta