Зворотне проектування оновлень Xiaomi OTA для пошуку неопублікованих оновлень

Старший учасник XDA duraaraa намагався створювати підроблені OTA-запити від пристроїв Xiaomi для доступу до нічних збірок MIUI.

У спробі отримати доступ до Xiaomi's nightlies — неопубліковані власні версії операційної системи MIUI від Xiaomi -- старший член XDA дураараа розробити структуру оновлень бездротового зв’язку (OTA) китайської компанії. Два незавершені експлойти змушують пристрої Xiaomi витягувати нічну збірку замість останньої комерційної прошивки, яка теоретично може бути інстальовано на стандартних пристроях, якщо (1) додаток MIUI OTA було сконструйовано та (2) тестові збірки були підписані тими ж ключами, що й офіційні збірки.

Спосіб 1: створення URL-адреси оновлення Xiaomi OTA

Простіший із двох методів передбачає доступ до URL-адреси оновлення OTA, яка надсилає на клієнтський пристрій інструкції щодо того, як завантажити це оновлення. Ця URL-адреса, наприклад, містить позначки, які вказують додатку для оновлення OTA від Xiaomi, де знайти версію 7.9.21 MIUI 9, збірку для внутрішнього тестування.

{"UserLevel":9,"LatestVersion":{"type":"rom","device":"chiron_global","name":"XM-MIMIX2-GLOBAL 7.9.21","description":"MIUI\u5347\u7ea7","descriptionUrl":"http:\/\/update.miui.com\/updates\/updateinfo\/7.9.21\/chiron_global_0_7.9.21_4494ccfcc506caca9904efb74b489e0a.html","md5":"7f94ca393fae77c6171e6c7a551bea2e","filename":"miui_MIMIX2Global_7.9.21_7f94ca393f_7.1.zip","filesize":"1.6G","codebase":"7.1","version":"7.9.21","branch":"X"},"UpdateList":[{"type":"rom","device":"chiron_global","name":"XM-MIMIX2-GLOBAL 7.9.21","description":"","descriptionUrl":"http:\/\/update.miui.com\/updates\/updateinfo\/7.9.21\/chiron_global_0_7.9.21_4494ccfcc506caca9904efb74b489e0a.html","md5":"7f94ca393fae77c6171e6c7a551bea2e","filename":"miui_MIMIX2Global_7.9.21_7f94ca393f_7.1.zip","filesize":"1.6G","codebase":"7.1","version":"7.9.21","branch":"X"}],"IncrementalUpdateList":[],"MirrorList":["http:\/\/bigota.d.miui.com"],"Signup":{"version":"","total":"","rank":""},"AuthResult":0,"ForceUpdate":0

Коли нещодавно в Китаї почав випускатися стабільний випуск -- 8.5.7.0.NDECNEF -- дураара використав експлойт, щоб знайти URL-адресу оновлення мікропрограми.

Спосіб 2: Створення запиту на оновлення Xiaomi OTA

Другий метод, який є дещо складнішим, передбачає захоплення ключа розшифровки сервера оновлень Xiaomi. Для цього потрібно декомпілювати програму оновлення та використовувати Xposed для захоплення й аналізу мережевого трафіку.

Коли ключ дешифрування (наприклад, "miuiotavalided11") є на місці, теоретично будь-який користувач може створити підроблений запит на оновлення.

Примусове оновлення Xiaomi OTA

дураараа використовував два методи для пошуку неопублікованих збірок MIUI на серверах Xiaomi, але ще не зміг завантажити та встановити нічний додаток на пристрої Xiaomi. Він просить членів спільноти розробників долучитися до цих зусиль.

Щоб стежити за новими розробками та/або поділитися своїм досвідом, перегляньте тему форумів XDA.


Обговорення зворотного проектування Xiaomi OTA