Anda di halaman 1dari 6

Protección anti-retroceso de Xiaomi explicada: cómo evitar que su teléfono se bloquee.

12 de septiembre de 2018 1:05 a.m. 53 Comentarios Mishaal Rahman

Protección anti-retroceso de Xiaomi explicada: cómo evitar que su teléfono se


bloquee

En julio, Xiaomi lanzó MIUI 10 Global Beta 8.7.5 para ocho dispositivos Xiaomi. Cuando los
usuarios instalaron la actualización en su Xiaomi Redmi Note 5 Pro, sin darse cuenta
flashearon una versión con protección anti-retroceso habilitada. Los usuarios a los que no
les gustó MIUI 10 Global Beta encontraron una desagradable sorpresa cuando trataron de
reinstalar la última ROM MIUI 9 Global Stable: ¡sus teléfonos estaban bloqueados! Este no
era el tipo de bricks que podía repararse restaurando una copia de seguridad TWRP,
mostrando una ROM nueva o usando MiFlash para restaurar a una imagen de fábrica. Este
es un ladrillo duro e irrecuperable que requiere el uso del modo EDL para solucionarlo. Pero
no se puede acceder al modo EDL a menos que tengas una cuenta autorizada, por lo que
muchos usuarios no tienen forma de reparar su teléfono, excepto enviarlo a un centro de
servicio autorizado o pagar para usar la cuenta de alguien con acceso EDL. En este
artículo, vamos a explicar todo lo que necesita saber sobre la nueva protección
anti-retroceso de Xiaomi para que pueda evitar bloquear su nuevo teléfono.

¿Por qué Xiaomi requiere tiempos de espera largos para el desbloqueo de gestor de
arranque, autorización EDL y Protección Anti-Rollback?

El gigante chino de la electrónica Xiaomi es la marca de teléfonos inteligentes más popular


en la India gracias a su amplia selección de dispositivos de presupuesto y de rango medio.
Al igual que Huawei, Xiaomi también vende una tonelada de teléfonos inteligentes en su
mercado local de China. Muchos de estos dispositivos nunca se venden fuera de China,
pero eso no impide que las personas los importen. Los minoristas no oficiales de productos
Xiaomi han surgido en Aliexpress, Gearbest y en muchos otros sitios web, lo que permite
que cualquier persona fuera de China compre los últimos productos de Xiaomi. Esto ha
supuesto un desafío para la empresa ya que el software que envían en sus dispositivos
chinos, llamado "MIUI China", no contiene los Servicios de Google Play, la Google Play
Store o idiomas distintos del inglés o el mandarín. Por lo tanto, cualquiera que importe un
dispositivo Xiaomi de China no debería recibir de fabrica aplicaciones y servicios de Google.

Sin embargo, los minoristas de terceros encontraron una forma de evitar esto para
convencer a los clientes de que estaban vendiendo dispositivos Xiaomi con una ROM MIUI
Global "oficial". Los minoristas comprarían dispositivos Xiaomi a granel, desbloquearían el
gestor de arranque, cambiarían ellos mismos el software o mostrarían una ROM
personalizada como Xiaomi.eu (ROM no oficiales basadas ​en MIUI China pero con más
idiomas y funciones), y luego venderían el dispositivo. La mayoría de los consumidores no
tendrían forma de saber que están ejecutando software no oficial / modificado y, en cambio,
culparían a Xiaomi por la falta de actualizaciones o errores que encuentren. Peor aún,
algunos minoristas combinarán intencionalmente malware o adware para que puedan ganar
un poco de dinero extra. La reputación de Xiaomi estaba siendo perjudicada activamente
por esta práctica, ya que los revisores técnicos y los consumidores estaban atrapados en
las redes de estos minoristas no oficiales, por lo que tenían que encontrar una manera de
evitar que los minoristas turbios vendan dispositivos modificados a granel.

Una solución es bloquear completamente el desbloqueo del gestor de arranque, que es un


movimiento drástico que Huawei tomó recientemente. Al ver el éxito de su marca entre los
entusiastas, Xiaomi no se ha movido para bloquear el desbloqueo del gestor de arranque
todavía. En cambio, implementaron algunas barreras para proteger a los usuarios contra las
acciones maliciosas de terceros minoristas.

Tiempos de espera para desbloquear Bootloader

Primero implementaron un período de espera para el desbloqueo del gestor de arranque.


Los dispositivos Xiaomi, excepto el Xiaomi Mi A1, Xiaomi Mi A2 y Xiaomi Mi A2 Lite que
ejecutan stock de Android con el programa Android One, requieren el uso de la herramienta
Mi Unlock propiedad de Xiaomi para desbloquear el gestor de arranque. Después de enviar
su solicitud para desbloquear el gestor de arranque, Mi Unlock obliga a esperar antes de
validar su solicitud y desbloquear el gestor de arranque. El tiempo de espera solía ser de 3
días antes de aumentar a 15 días a principios de 2018, y recientemente, el tiempo de
espera ha aumentado a 30 o incluso 60 días en algunos casos. (La nueva submarca de
Xiaomi, Poco, redujo el tiempo de espera a 3 días después de recibir comentarios de la
comunidad, aunque casi todos los demás aún tienen que esperar mucho tiempo). Agregar
un tiempo de espera al proceso de desbloqueo del gestor de arranque fue efectivo para
desacelerar las operaciones de los minoristas de terceros, pero también es
comprensiblemente molesto para los entusiastas que quieren desbloquear el gestor de
arranque para rootear su dispositivo, flashear ROM personalizadas y flashear kernels
personalizados.

Autorización EDL

Luego, la compañía comenzó a bloquear el modo EDL en sus dispositivos. EDL significa
Modo de descarga de emergencia, y es un modo de arranque alternativo en todos los
dispositivos de Qualcomm que se utiliza comúnmente para desbrickear su dispositivo. Para
utilizar el modo EDL, debe encontrar lo que se denomina un "programador" que ha sido
autorizado por el OEM (Xiaomi) para su uso en su dispositivo. El modo EDL es muy potente
y de muy bajo nivel, y los centros de servicio lo utilizan de forma rutinaria para reparar
dispositivos. Sin embargo, el modo EDL también se usaba comúnmente para flashear ROM
MIUI globales oficiales y modificadas en dispositivos Xiaomi chinos sin desbloquear el
gestor de arranque. En esencia, el modo EDL se convirtió en otra forma en que los
minoristas de terceros podrían pasar por alto a Xiaomi. Xiaomi no quiere que los
consumidores compren versiones chinas de su hardware con Global ROM instaladas, por lo
que hicieron dos cosas: Imposibilitaron iniciar una ROM Global si el dispositivo no es una
versión Global (con el mensaje de advertencia "Este MIUI no puede ser instalado en este
dispositivo "), e hizo que el modo EDL no se pueda usar a menos que se tenga una cuenta
Mi autorizada.

Protección Anti-Retroceso

Finalmente, implementaron protección anti-retroceso en las últimas versiones de MIUI para


los últimos dispositivos Xiaomi. Es posible que haya oído hablar de la protección
anti-retroceso antes. Google agregó soporte para esta función en Android 8.0 Oreo y lo hizo
obligatorio para los dispositivos que se inician con Android Pie. La protección anti-retroceso
de Google es una característica de Android Verified Boot 2.0 (también conocido como Boot
Verificado) e impide que el dispositivo arranque si detecta que el dispositivo ha sido
degradado a una versión anterior del software no aprobado. La protección anti-retroceso es
necesaria para evitar que los atacantes carguen en un dispositivo software más antiguo
susceptible a un exploit. La mayor diferencia entre Google y la implementación de Xiaomi es
que la protección anti-retroceso de Google está desactivada si desbloqueas el gestor de
arranque mientras que la de Xiaomi no se puede desactivar. Una vez que instale una
compilación con protección anti-retroceso habilitada en un dispositivo Xiaomi, no hay vuelta
atrás. Por ejemplo, la protección anti-retroceso está habilitada para Xiaomi Mi 8 y Xiaomi
Redmi Note 5 Pro que comienzan en MIUI 10 China 8.9.6 y MIUI 10 Global Beta 8.7.5
respectivamente.

La protección antiarrugas evitará que cualquier minorista no autorizado aproveche los


exploits en versiones anteriores de MIUI, protegiendo así a los usuarios de ataques. Sin
embargo, también ha tomado a muchos desprevenidos porque Xiaomi lo extendió al Redmi
Note 5 Pro sin informar a los usuarios de antemano. Debido a que TWRP no cuenta con
controles para evitar que los usuarios instalen versiones antiguas de MIUI no autorizadas,
muchas personas bloquearon accidentalmente sus dispositivos cuando pasaron de una
ROM beta de MIUI a una ROM estable de MIUI. Todos los dispositivos soportados
actualmente por Xiaomi obtendrán protección anti-retroceso, por lo que es muy importante
que comprenda cómo buscarlos antes de degradarlos y qué puede hacer si la protección
anti-retroceso está habilitada.

Cómo verificar la protección contra retroceso

Cuando hablábamos de que la protección anti-retroceso evita que un dispositivo arranque


un software más antiguo e inseguro, decíamos que el arranque verificado "detecta" la
presencia de un software anterior. Funciona de manera que el arranque verificado tiene un
índice de reversión que se compara con el índice de reversión de las imágenes que se
instalarán. Dependiendo de cómo se comparen los índices de reversión, ocurrirá lo
siguiente:

Si el índice de retrotracción actual es menor que el índice de retrotracción en las imágenes


que se van a flashear, entonces las imágenes se flashearán y el índice de retrotracción
actual se incrementará para que coincida con el nuevo índice de retrotracción.
Si el índice de reversión actual es igual al índice de reversión en las imágenes a flashear,
las imágenes se flashearán y el índice de reversión no cambiará.
Si el índice de reversión actual es mayor que el índice de reversión en las imágenes que se
van a flashear, entonces las imágenes serán rechazadas si está flasheando a través de
fastboot o Mi Flash. (TWRP no verifica los índices de reversión antes de flashear, por lo que
casi todos los bricks fueron el resultado del downgrade a través de TWRP).
Ahora que tiene una mejor comprensión del índice de reversión, aquí le mostramos cómo
verificar realmente el índice de reversión actual en su dispositivo y el de la imagen que
desea flashear.

Cómo encontrar el índice de reversión actual

Reiniciar a modo fastboot


Ingrese el siguiente comando: ​fastboot getvar anti
Si la salida está en blanco, entonces el anti-rollback aún no se ha habilitado. Si obtiene un
número en la salida, entonces ese es su índice de reversión actual.
Xiaomi Protección anti-retroceso

Cómo encontrar el índice de reversión de imágenes

Descargue la ROM "fastboot" equivalente de la ROM de recovery que está intentando


instalar. La ROM de recovery siempre tiene el nombre comercial del dispositivo en el
nombre del archivo y termina en .zip. La ROM fastboot siempre tiene el nombre de código
del dispositivo en el nombre del archivo y termina en .tar.gz.
Extraiga flash-all.bat del archivo .tar.gz. 7Zip puede manejar esto fácilmente.
Abra flash-all.bat en un editor de texto como Notepad ++ y busque la siguiente línea:
set CURRENT_ANTI_VER = #
Ese número (#) es el índice de reversión de la versión MIUI que desea actualizar. Si ese
número es igual o mayor que su índice de reversión actual, entonces es seguro flashear en
TWRP, Mi Flash, etc. Si ese número es menor que su índice de reversión actual, NO
FLASHEE ESTA ROM VIA TWRP.

Evitar un ladrillo completo e irrecuperable debería ser simple siempre que compruebe los
índices de reversión antes de hacer downgrade a través de TWRP. Para estar seguro, debe
usar sólo Mi Flash o fastboot para flashear ROM MIUI ya que el gestor de arranque de su
teléfono tiene protecciones incorporadas para evitar que baje de categoría a una versión
con un índice de reversión más bajo.

¿Cómo afecta la protección Anti-Rollback a las ROM personalizadas?

Si planeas nunca volver a flashear MIUI, entonces no mucho cambiará para ti. Si quieres
flashear una ROM AOSP como LineageOS, Pixel Experience, Resurrection Remix, Carbon
ROM, etc., deberás desbloquear el gestor de arranque a través de Mi Unlock, arrancar
TWRP y luego flashear la ROM personalizada. La única diferencia notable es cómo instalar
TWRP a través de fastboot. Debido a que la protección anti-retroceso bloquea la
actualización de la imagen TWRP, primero debe flashear una imagen "ficticia". La imagen
ficticia es un archivo vacío que no sirve para nada más que enviar un comando al gestor de
arranque para que sepa que después puede aceptar otros flashes. (Si mira el script flash-all
de la sección anterior, así es como lo hace Xiaomi oficialmente). Alternativamente, puede
"reiniciar rápidamente" la imagen TWRP, mover la imagen TWRP al almacenamiento de su
dispositivo y luego flashear el TWRP imagen desde TWRP. No proporciono instrucciones
detalladas sobre ninguno de los métodos, ya que le pido que visite el foro de su dispositivo
para obtener instrucciones específicas del dispositivo.

Sin embargo, hay una advertencia. No hay forma de saber de antemano si el índice de
reversión se ha incrementado debido a un gestor de arranque, módem, proveedor u otras
particiones actualizados. Tenga en cuenta que las ROM personalizadas generalmente solo
cambian el sistema y las particiones de arranque, pero para mantener su dispositivo
realmente seguro con las últimas actualizaciones de parches de seguridad, en ocasiones
deberá actualizar los firmware más recientes que están contenidos en las últimas ROM MIUI
oficiales. Los desarrolladores de ROM personalizadas tendrán que verificar manualmente el
índice de reversión de estas compilaciones antes de recomendar su actualización; de esa
forma, sabrá cuándo una nueva actualización lo bloqueará en ciertas versiones de MIUI si
planea volver a MIUI desde un AOSP ROM.

¿Qué hago si brickeé mi teléfono?

Si brickeó su teléfono activando la protección anti-retroceso, tiene muy pocas opciones.

Envíe su dispositivo a un centro de servicio autorizado para su reparación. Los centros de


servicio tienen acceso para restaurar su dispositivo a través del modo EDL.
Espere que de alguna manera haya una forma de eludir la autorización EDL
(esencialmente, un exploit) para que pueda restaurar su dispositivo manualmente con el
programador adecuado.
Como puede ver, bloquear su teléfono activando la protección anti-retroceso no es una
broma. Realmente debe tener cuidado antes de flashear cualquier versión anterior de MIUI.

Preguntas frecuentes (FAQ)

¿Qué debo evitar si no quiero bloquear mi dispositivo?

No flashees una versión de MIUI con un índice de reversión inferior al índice de reversión
actual de su dispositivo. Vea arriba para las instrucciones.
No flashees una ROM MIUI Global oficial en el hardware chino con un gestor de arranque
bloqueado.
¿Todavía puedo instalar ROM AOSP personalizadas, kernels, Magisk, Xposed, Substratum,
ARISE y otras modificaciones?

Sí.

¿Puedo cambiar entre MIUI Global Stable, MIUI Global Developer, MIUI China Stable y MIUI
China Developer?

Sí, pero debe comparar los índices de reversión antes de instalar una versión anterior de
MIUI.

¿Por qué Xiaomi no deshabilita la protección anti-retroceso cuando desbloqueas el gestor


de arranque?

Buena pregunta.

¿Por qué Xiaomi bloquea su teléfono si se activa la protección anti-retroceso, siendo que
Google no lo hace?

Esa es otra buena pregunta.

¿Por qué Xiaomi no muestra la advertencia de arranque comprobado estándar para mostrar
al usuario que el software ha sido manipulado?

¡Estás en buena racha con estas excelentes preguntas! Hablando en serio, esto puede
estar justificado porque es posible desactivar esta pantalla de bienvenida, al menos en
algunos dispositivos.

¡Un agradecimiento especial a Xs Recognized Developer yshalsager y XDA Junior Member


franztesca por su ayuda en este artículo!