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
ubl-itel-s23 — Desbloquear el bootloader para Itel S23 (S665L) / Unisoc T606 usando CVE-2022-38694 | Kitploit
Herramientas/GitHubGitHub/aureliusivan/ubl-itel-s23
Seguridad AndroidSeguridad de Sistemas EmbebidosAnálisis de VulnerabilidadesExplotaciónSeguridad MóvilSeguridad de HardwareAprendizaje y EducaciónAnálisis de FirmwareExplotación de Binarios
GitHubaureliusivan/ubl-itel-s23

ubl-itel-s23

Desbloquear el bootloader para Itel S23 (S665L) / Unisoc T606 usando CVE-2022-38694

42hace 5 mesesAú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
Ver Repositorio

Desbloquear Bootloader — Itel S23 (S665L) / Unisoc T606

Guía para desbloquear el bootloader en el Itel S23 (S665L) usando el exploit CVE-2022-38694 en el chipset Unisoc T606 (UMS9230).

Información del Dispositivo

PropiedadValor
MarcaItel
ModeloS665L (S23)
Android12 (SDK 31)
CompilaciónS665L-F065OPRSUVApAqAr-S-GL-20250207V533
SoCUnisoc T606 (UMS9230)
CPU2x Cortex-A75 + 6x Cortex-A55 (ARMv8, 64-bit)
AlmacenamientoUFS
RanuraA/B

Requisitos Previos

  • Linux (probado en Fedora 43)
  • adb y fastboot instalados
  • Cable de datos USB (no solo de carga)
  • Batería al menos al 80%
  • Desbloqueo OEM habilitado en Opciones de desarrollador
  • Depuración USB habilitada en Opciones de desarrollador
  • Haz una copia de seguridad de todos los datos (se borrarán después del desbloqueo)

Estructura de Archivos

root@kitploit:~
ubl-itel-s23/
├── README.md
├── CLAUDE.md
├── recovery/
│   ├── TWRP_S665L.img              # Imagen de recuperación TWRP
│   └── OrangeFox_S665L.img         # Imagen de recuperación OrangeFox
└── tools/
    └── spreadtrum_flash_linux/
        ├── spd_dump                 # Herramienta de comunicación BootROM
        ├── gen_spl-unlock           # Generador de payload de desbloqueo
        ├── unlock.sh                # Script de desbloqueo automatizado
        ├── fdl1-dl.bin              # Cargador de primera etapa
        ├── fdl2-dl.bin              # Cargador de segunda etapa
        ├── fdl2-cboot.bin           # uboot modificado para desbloqueo
        ├── custom_exec_no_verify_65015f08.bin  # Payload del exploit CVE
        ├── custom_exec_no_verify_65015f48.bin  # Payload del exploit CVE (alternativo)
        ├── splloader.bin            # Copia de seguridad de SPL (generada durante el proceso)
        ├── uboot.bin                # Copia de seguridad de uboot (generada durante el proceso)
        ├── spl-unlock.bin           # Payload de desbloqueo (generado durante el proceso)
        └── ums9230/itel/            # Binarios FDL para Itel UMS9230

Cómo Funciona (CVE-2022-38694)

Este exploit aprovecha una vulnerabilidad en el BootROM de Unisoc que permite escribir datos en una región de memoria antes de que se complete la verificación de firma.

root@kitploit:~
Normal:   BootROM → verify(FDL1) → REJECT (unsigned)
Exploit:  BootROM → overwrite verify() → verify = always_true
               → accept(FDL1) → ACCEPT → unlock bootloader

El payload custom_exec_no_verify (96 bytes) sobrescribe el puntero de función de verificación de firma en la dirección 0x65015f08, haciendo que el BootROM acepte cualquier FDL1 sin verificar su firma.

Proceso de Desbloqueo

Configuración Inicial

  1. Instalar reglas udev para acceso USB:
root@kitploit:~
sudo tee /etc/udev/rules.d/51-android.rules << 'EOF'
# Google/Android (ADB & Fastboot)
SUBSYSTEM=="usb", ATTR{idVendor}=="18d1", MODE="0666", GROUP="plugdev"
# Spreadtrum/Unisoc
SUBSYSTEM=="usb", ATTR{idVendor}=="1782", MODE="0666", GROUP="plugdev"
EOF
sudo udevadm control --reload-rules && sudo udevadm trigger
  1. Copiar los archivos FDL y los payloads del exploit al directorio de trabajo:
root@kitploit:~
cd tools/spreadtrum_flash_linux
cp ums9230/itel/fdl1-dl.bin ums9230/itel/fdl2-dl.bin ums9230/itel/fdl2-cboot.bin .
cp ums9230/custom_exec_no_verify_65015f08.bin ums9230/custom_exec_no_verify_65015f48.bin .
chmod +x spd_dump gen_spl-unlock

Paso 1 — Copia de seguridad de splloader y uboot, borrar splloader

El teléfono debe estar encendido y conectado por USB. Después de este paso, el teléfono no arrancará hasta el Paso 6.

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f48 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  r splloader r uboot e splloader e splloader_bak reset

Copia splloader.bin y uboot.bin a un lugar seguro:

root@kitploit:~
cp splloader.bin uboot.bin backup_spl/

Paso 2 — Generar payload de desbloqueo

root@kitploit:~
./gen_spl-unlock splloader.bin 0xfd28

Output: spl-unlock.bin

El offset 0xfd28 es específico de este firmware. Verifica el tamaño de splloader.bin — el offset debería coincidir con el tamaño del archivo.

Paso 3 — Flashear uboot modificado

Entrar en modo BROM: apaga el teléfono, mantén presionado Bajar Volumen, luego conecta el USB.

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  w uboot fdl2-cboot.bin reset

Paso 4 — Enviar payload de desbloqueo

Vuelve a entrar en modo BROM, luego:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl spl-unlock.bin 0x65000800

Si ves device removed, exiting... significa éxito.

Paso 5 — Verificar estado de desbloqueo

Vuelve a entrar en modo BROM, luego:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  verbose 2 read_part miscdata 8192 64 m.bin reset
  • recv 64 zero = todavía BLOQUEADO (falló)
  • recv 32 string + hash data = DESBLOQUEADO (éxito)

Paso 6 — Restaurar splloader y uboot

Vuelve a entrar en modo BROM, luego:

root@kitploit:~
sudo ./spd_dump exec_addr 0x65015f08 fdl fdl1-dl.bin 0x65000800 \
  fdl fdl2-dl.bin 0x9efffe00 exec \
  w splloader splloader.bin w uboot uboot.bin reset

El teléfono se reiniciará. Selecciona Restablecer valores de fábrica cuando aparezca la Recuperación de Android.

Verificar mediante ADB

Después de que el teléfono arranque en Android:

root@kitploit:~
adb shell getprop ro.boot.vbmeta.device_state
# Expected: unlocked

adb shell getprop ro.boot.flash.locked
# Expected: 0

Notas Importantes

  • Después del desbloqueo, el teléfono mostrará una pantalla de advertencia al arrancar (esto es normal)
  • Es probable que las actualizaciones OTA dejen de funcionar
  • La garantía se anula
  • No elimines splloader.bin y uboot.bin — son necesarios para restaurar si algo sale mal
  • El Paso 1 usa la dirección 0x65015f48, los pasos 3-6 usan 0x65015f08

Créditos y Referencias

Herramientas

  • spd_dump / CVE-2022-38694 Desbloquear Bootloader por TomKing062 / QuTick102 https://github.com/TomKing062/CVE-2022-38694_unlock_bootloader

  • Recovery Collections y Spreadtrum Flash Tool (Linux) por Massatriof16 https://massatriof16.github.io/recovery-collections/#alat

  • unisoc-unlock (alternativa en Python) por patrislav1 https://github.com/patrislav1/unisoc-unlock

Guías y Referencias

  • Guía de desbloqueo de bootloader para Itel S23 — Foros XDA
  • Cómo desbloquear bootloader Unisoc (SPD) usando Token de Identificador — Hovatek
  • SUBUT — Herramienta de desbloqueo de bootloader Spreadtrum/Unisoc (Web)

Imágenes de Recuperación

  • TWRP y OrangeFox para Itel S23 — de Recovery Collections de Massatriof16
Descargar herramienta