• [ Регистрация ]Открытая и бесплатная
  • Tg admin@ALPHV_Admin (обязательно подтверждение в ЛС форума)

Статья Как «Яндекс Станция» может превратиться в шпионский гаджет

stihl

Moderator
Регистрация
09.02.2012
Сообщения
1,167
Розыгрыши
0
Реакции
510
Deposit
0.228 BTC
stihl не предоставил(а) никакой дополнительной информации.
«Они следят за тобой через нее!» — наверняка каждый владелец умной колонки слышал это от кого‑то или даже сам так думает. Производители, конечно, опровергают подобные домыслы, но, даже если они шпионских функций не закладывали, теоретически такая возможность есть. Я решил поставить эксперимент и посмотреть, может ли колонка обернуться шпионом.

warning​

Статья имеет ознакомительный характер и предназначена для специалистов по безопасности, проводящих тестирование в рамках контракта. Автор и редакция не несут ответственности за любой вред, причиненный с применением изложенной информации. Распространение вредоносных программ, нарушение работы систем, нарушение тайны переписки, прослушивание разговоров и чтение переписки граждан без их согласия преследуется по закону.
Отчасти это продолжение прошлой статьи про Rabbit Hole, потому‑то конец норы найдем в системе.


Все опыты я буду делать, как и в прошлой статье, на колонке «Яндекс Лайт» (YNDX-0025), но все точно так же сработает на моделях «Лайт 2», «Мини 2», «Станция 2» и «Мини 3». Опыты провожу с одной оговоркой: в целях безопасности все методы неустойчивы к полному сбросу устройства! То есть достаточно зажать кнопку сброса прошивки при включении, и все изменения сотрутся.

info​

На самом деле все колонки «Яндекса» при полном сбросе откатывают свою прошивку до начальной версии, записанной при производстве.
Колонки «Яндекса» имеют два режима сброса:

  • полный сброс, при котором откат идет до самой начальной версии;
  • сброс аккаунта: прошивка остается, но старый аккаунт удаляется, и колонка готова к новой привязке.
Мы будем рассматривать второй режим по следующему плану:

  1. Получение root-доступа к устройству.
  2. Удаленное управление через SSH или Tuna.
  3. Сканирование сетевых интерфейсов, включая Bluetooth.
  4. Запись аудио с помощью arecord.
  5. Перехват трафика колонки через tcpdump, Wireshark или sshdump.
Поскольку YNDX-0025 работает на ядре Linux с некоторыми функциями от Android, первым делом нужно получить root-доступ к системе.

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

Для просмотра ссылки Войди или Зарегистрируйся
Но в этот раз я в багбаунти не участвую, поэтому сразу организовал себе root с помощью перепрограммирования NAND. Для этого потребуется «сдуть» NAND и считать дамп с помощью программатора.

Плата с NAND
Плата с NAND.

Я работаю с TL866II Plus. Это не самый топовый программатор, но он недорогой и помог мне, когда я начинал разбираться с прошивками «Яндекс Станции». По сути, программатор только считывает и записывает дампы, у него нет функции пересчета ECC или работы с файловыми системами, как, например, у UFPI. Так что здесь нужно немного навыков, чтобы править дампы.

Стоит отдельно упомянуть, что на начальном этапе производства «Яндекс» не ставил пароли на USB-порты своих колонок, таких как «Мини 2» (YNDX-0020/21) и «Лайт» (YNDX-0025). Эти колонки могут работать как программаторы, поскольку поддерживают чтение и запись NAND через утилиту update, контролируя бэд‑блоки и пересчитывая ECC. Это, конечно, удобно, но таких устройств сейчас почти не найти. Если колонка была подключена к умному дому примерно с лета 2024 года, то, скорее всего, на нее уже установлен пароль.


Физическое вмешательство​

Подробности разбора колонки я показывать не буду, но в сети полно видеороликов, да и сам процесс несложный. Прежде чем отпаивать NAND, мы «продуем» все ножки микросхемы при помощи флюса и обычного припоя. Не переживай, если между ножками останутся излишки припоя, — они не помешают. Это нужно, чтобы разбавить заводской припой, который обычно более тугоплавкий.

Отпаиваем, прогревая феном одну половину ножек микросхемы, и, когда припой расплавится, поддеваем пинцетом и аккуратно приподнимаем край. То же проделываем с другой стороной. Рекомендую использовать нижний подогрев платы — это делает процесс отпаивания более комфортным. Чтобы не погнуть ножки, убедись, что они достаточно нагрелись, покачивая их вверх‑вниз без сильного нажима.

После отпаивания зачисть плату от бугорков старого припоя с помощью медной оплетки и флюса. Будь аккуратен и не старайся слишком усердно, чтобы не стереть часть маски дорожек! Микросхему затем промоем спиртом и убедимся, что ножки не погнуты и между ними нет остатков припоя. Затем помещаем микросхему в каретку переходника программатора и начинаем считывание.

Микросхема в программаторе
Микросхема в программаторе.

info​

Сразу сделай резервную копию считанного дампа, чтобы не потерять важные данные для авторизации в учетной записи. Особенно это касается области с пометкой AMLSECURITY! и раздела NV, где хранится файл с обфусцированным именем:
416D6C4B65796D61737465724D61737465724B657900
Если его потерять, добавить устройство в учетную запись будет невозможно. Причины я нашел, но метод восстановления еще предстоит доработать.

Правим дамп​

Как и в любом Linux, в файловой системе «Станции» есть папка /etc, в которой можно найти:

  • shadow;
  • passwd;
  • inittab.
Shadow
Shadow

Passwd
Passwd
Просмотрев первые два, можно обнаружить, что пользователь root существует и у него нет пароля. В inittab есть строка инициализации консоли, которая отличается от стандартной.

Inittab
Inittab
А именно getty_rabbit_hole (Rabbit Hole частично обсуждали в Для просмотра ссылки Войди или Зарегистрируйся) вместо getty. Дальше следуем по представленному пути и изучаем содержимое.

info​

Пока я писал эту статью, на «Для просмотра ссылки Войди или Зарегистрируйся» вышел пост про похожий флаг, но в другом месте и для другой колонки («Мини 1»), да и содержимое немного другое. Но суть та же.
Для просмотра ссылки Войди или Зарегистрируйся
Оказывается, если попасть в систему через Rabbit Hole, то дополнительно активируется возможность войти в систему через UART-консоль Linux, а не только CLI U-Boot.

Возвращаемся в inittab и правим строку getty_rabbit_hole на getty. Для этого в сыром дампе просто заменим символы после getty пробелами, чтобы размер файла не изменился и дамп остался на месте. Это очень важно.

Далее нужно пересчитать ECC. Способ пересчета я пока раскрыть не могу, но сделал Telegram-бота Для просмотра ссылки Войди или Зарегистрируйся, который поможет пересчитать ECC для блока размером 512 + 2 байта (данные и user bytes). Он принимает файлы в формате bin, которые легко сделать с помощью любого Hex-редактора или командой dd.

Работа бота
Работа бота

warning​

Пожалуйста, не нагружай бота слишком большими блоками текста, иначе я его отключу.
У файловой системы system (rootfs) нет проверки вроде vbmeta, так что все изменения проходят без проблем!

С настройкой системы закончили, теперь нам нужно разрешить консоль UART в U-Boot. Флаг silent ограничивает вывод логов и запрещает ввод через UART-консоль. Этот параметр настраивается в скриптах U-Boot, называемых env (environment), для блокировки он выглядит так: silent=1.

www​

Подробнее — в Для просмотра ссылки Войди или Зарегистрируйся U-Boot.
Лог затыкается после silent=1
Лог затыкается после silent=1

В этом случае, как только U-Boot считывает эти значения, он перестает выводить логи в консоль. Скрипты env хранятся в нескольких копиях в дампе, поэтому меняем значение на silent=0 и пересчитываем ECC через бота. Поправь все копии или попробуй оставить одну рабочую, испортив остальные. Экспериментируй!

Для просмотра ссылки Войди или Зарегистрируйся
Теперь записываем дамп на NAND и возвращаем ее на плату колонки. Проверяем, чтобы не было никаких «соплей», отмываем флюс спиртом. И... нет! Ничего не выходит!

Все дело в том, что, кроме ECC, необходимо считать CRC для env и UBIFS. Это возможно, но требует больше усилий. Если ты захочешь применить этот метод, придется самостоятельно пересчитать контрольные суммы. В этом очень помогут Для просмотра ссылки Войди или Зарегистрируйся и Для просмотра ссылки Войди или Зарегистрируйся. Как только все изменения будут внесены, система запустится и выведет подробный лог загрузки.

Поломанная загрузка
Поломанная загрузка
Лог успешного старта с silent=0
Лог успешного старта с silent=0
Старт ядра
Старт ядра

В конце лога видим заветное...

login:
login:

Кстати, насчет UART — подключайся через переходник. Есть Для просмотра ссылки Войди или Зарегистрируйся, который подходит к нескольким моделям колонок «Яндекса».


Ура, вошли!​

Пароля нет, поэтому просто вводи root и заходи. Теперь у нас полноценная консоль с блек‑джеком и Алисой. Можно пошариться по системе, заглянуть в папки, стянуть конфиг ядра с помощью команды cat /proc/config.gz. Но учти, через UART это не очень удобно. В процессе копания ты быстро найдешь скрипт /system/vendor/quasar/activate_adb.sh, который активирует ADB в Linux (по крайней мере, очень похоже на Linux)!

Выполняем такую команду:

/system/vendor/quasar/activate_adb.sh --all --network activate

info​

Во время ввода могут лезть логи и сбивать отображение, но не переживай: твоя команда не стирается. Просто дописывай и нажимай Enter.
Когда скрипт завершит работу, подключись к колонке через USB и проверь результат с помощью Для просмотра ссылки Войди или Зарегистрируйся.

adb shell
ADB запускается без паролей и сразу предоставляет права root.

Для просмотра ссылки Войди или Зарегистрируйся
Доказательство, что это колонка
Доказательство, что это колонка

Теперь UART-консоль нам больше не нужна, она остается только для наблюдения за поведением устройства. Всю работу будем делать через ADB, к которому можно подключиться даже по сети. Для этого колонка должна быть подключена к Wi-Fi (вручную или через приложение «Яндекс»).

Все, что описано выше, я бы не назвал взломом. Это просто конфигурирование системы, за исключением, пожалуй, правки дампа NAND.


Неожиданно — OSINT!​

Для начала проверим колонку на шпионаж и заглянем в папку /data, особенно если учесть, что программа багхантинга «Яндекса» имеет одну довольно любопытную приписку.

Для просмотра ссылки Войди или Зарегистрируйся
Если колонка была привязана к умному дому, там точно будет на что посмотреть.

Данные о геопозиции
Данные о геопозиции
Телефон
Телефон
Почта
Почта

Колонка зачем‑то хранит твой номер телефона, электронную почту и геопозицию! Причем прочитать эти данные можно даже в дампе. Координаты указывают на центр города, но не спеши — впереди куча логов для изучения. В итоге мои поиски привели в папку daemons_logs, в файл maind.log. Приложение зачем‑то захотело узнать, где я живу, и записало это в лог (я немного сместил координаты, чтобы не раскрывать свой дом), при этом точность высокая — указан мой подъезд. Далее в логе есть смена геопозиции на центр города с комментарием «Got new device config:», но данные уже засвечены.

Лог maind c данными о геопозиции
Лог maind c данными о геопозиции
Точная геопозиция
Точная геопозиция
Подмененная геопозиция
Подмененная геопозиция

Итак, первый урок: колонка, проданная на «Авито» без предварительной очистки, может раскрыть личную информацию владельца. Капитан Очевидность подскажет: «Сбрасывай данные перед продажей!», но, если колонка сломалась (как это часто бывает), сбросить данные уже не получится. Официальных сервисных центров почти нет, и техника отправляется на продажу как есть.

Когда настраиваешь Wi-Fi через приложение «Яндекс», параметры сети сохраняются в файле /data/wpa_supplicant в открытом виде. В этом файле могут быть сохранены настройки нескольких сетей. При подключении к новому Wi-Fi приложение добавляет записи в этот файл.

Это не проблема именно «Яндекса», так построен сам wpa_supplicant.

Точки доступа
Точки доступа
Пока я не углублялся в исследование сетевых приложений «Яндекса» и отложил изучение токенов авторизации. Они хранятся в файле account_storage.dat, а его формат легко восстанавливается из логов колонки. Возможно, это станет темой для следующих статей.

Все это пока не тянет на багхантинг. Нам на такие находки наверняка скажут: «Мы знаем, но исправлять не будем. Пусть работает как работает — это же не опасно!» Конечно, физический доступ к устройству скорее единичный случай, чем массовый, но другие производители защищают данные пользователей шифрованием папок. Например, Sonos One Gen2: его файловую систему хоть и расшифровал Blasty (#HITB2023AMS), но он далеко не простой парень с программатором и парой часов времени. Нам же все досталось на блюдечке.

info​

В прошивках станций «Макс» и «ТВ» папку /data уже начали шифровать, но произошло это не сразу.
В папке /data лежат логи работы приложений и демонов (daemons_logs). Это может пригодиться в работе, но давай продвинемся дальше и посмотрим доступные команды shell. При необходимости добавим свои.

Содержимое daemons_logs
Содержимое daemons_logs

Шелл​

Чтобы увидеть список команд, просто дважды нажми Tab, и ты получишь полный перечень, причем он довольно неплох!

По сути, мы имеем полноценный шелл с кучей утилит, есть даже cron. Все команды работают без ограничений, никаких защит типа SELinux здесь нет. Для следующих этапов у нас есть все, что нужно: утилиты для работы с Bluetooth, и modprobe — для подключения своих модулей ядра, если они потребуются.

Команды Bluetooth:

  • hciattach;
  • hciconfig;
  • hcidump;
  • hcitool;
  • hciattach_sprd;
  • bluealsa;
  • bluealsa-aplay;
  • bluemoon;
  • bluetoothctl;
  • bt-adapter;
  • bt-agent;
  • bt-device;
  • bt-network;
  • bt-obex;
  • btattach;
  • btmon.
Перечень достаточно хорош, можно попробовать провернуть какие‑нибудь эксплуатации уязвимостей устройств вокруг колонки!

Для редактирования файлов можно использовать vi. Однако, чтобы сохранить изменения, нужно перемонтировать файловую систему, так как она обычно помечена как ro (Read Only). Сменить режим просто:

mount -o remount,rw /
Теперь ты волен делать все, что захочешь, — править конфиги, добавлять свои файлы в папки и так далее.

Мы добавим:

  • Nmap;
  • nc;
  • GDB;
  • Tuna.
Можно собрать их и самостоятельно, но я нашел Для просмотра ссылки Войди или Зарегистрируйся, из которого скачал готовые бинарники.


Туннель в обход​

Давай настроим туннель, который даст нам удаленный доступ, как только колонка окажется у условной жертвы.

Поддержу отечественного разработчика и применю для доступа к колонке утилиту Для просмотра ссылки Войди или Зарегистрируйся, я ее использую для отладки всяческих Telegram-ботов и веб‑приложений на локальном компьютере, но недавно в ней появилась возможность поднимать SSH-сервер и подключаться к нему, не имея постоянного IP. Этот инструмент нам отлично пригодится и в этом случае.

Процессор колонки принадлежит к семейству AArch64, поэтому здесь подойдут некоторые программы, скомпилированные для Raspberry Pi, включая Tuna. Устанавливать их не будем, а просто скопируем скачанный с сайта исполняемый файл через ADB в папку /data.

Качаем, закидываем и даем права на выполнение:

Код:
curl -sfSL "https://releases.tuna.am/tuna/latest/tuna_linux_arm64.tar.gz" | tar -f - -xz
adb push ./tuna /data/
adb shell chmod +x /data/tuna

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

Для просмотра ссылки Войди или Зарегистрируйся

И снова все пошло не так! Проблема — в отсутствии сертификатов: колонка — это не обычный компьютер на Linux, поэтому система урезана. Мой товарищ с ником Mamaich предложил посмотреть в сторону curl и настройки его сертификатов, так как, вероятно, используется тот же механизм. Я пошел изучать Для просмотра ссылки Войди или Зарегистрируйся и вскоре нашел все необходимое.

Для просмотра ссылки Войди или Зарегистрируйся

Смысл в том, что переменной окружения SSL_CERT_FILE можно задать путь к пользовательскому SSL-сертификату. Но какой сертификат выбрать? Изучая содержимое папки /system/vendor/quasar/, я наткнулся на сертификат «Яндекса» для работы фирменного приложения. Почему бы не попробовать?

Для просмотра ссылки Войди или Зарегистрируйся
Выполняем:

export SSL_CERT_FILE=/system/vendor/quasar/ca-certificates.crt
Теперь проверяем. Нужно снова перемонтировать файловую систему с возможностью записи.

Для просмотра ссылки Войди или Зарегистрируйся

Теперь все отлично! Можно запустить SSH-сервер!

Для просмотра ссылки Войди или Зарегистрируйся

Сервер запущен, проверяю подключение через телефон с помощью приложения JuiceSSH.

Для просмотра ссылки Войди или ЗарегистрируйсяДля просмотра ссылки Войди или ЗарегистрируйсяДля просмотра ссылки Войди или Зарегистрируйся

Подключение прошло успешно, колонка выполняет команды. Чтобы сервер автоматически запускался после перезагрузки, нужно внести изменения в файл /system/vendor/run.sh.

Правка в vi
Правка в vi

Для просмотра ссылки Войди или Зарегистрируйся
После перезагрузки в личном кабинете Tuna видим, что появился туннель. Пробуем подключиться к нему с нашим статическим паролем.

Для просмотра ссылки Войди или Зарегистрируйся

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

info​

Я намеренно не привожу информацию по отключению ОТА‑обновлений. Эта статья — демонстрация опасностей колонок с рук, а не руководство к действию!
Мы получили удаленное управление, а значит, новый пользователь добавил колонку в умный дом. Теперь можно стащить данные о телефоне, учетной записи и местоположении. Достаточно просто скачать несколько файлов, а затем продолжить разведку по другим каналам.


Щупаем Bluetooth​

Начнем с Bluetooth: для работы с ним достаточно встроенных команд. В первую очередь используй bluetoothctl. Это интерфейс командной строки, который дает те же возможности, что и Bluetooth на телефоне или ПК. Утилита позволяет сканировать устройства вокруг и выполнять сопряжение. Кто же откажет Алисе в сопряжении?!

Перечень команд утилиты
Перечень команд утилиты

Начнем со сканирования: вокруг моей колонки найдено несколько устройств, выводятся их MAC-адреса, а у некоторых даже подписано имя. Для демонстрации включу Bluetooth на своем телефоне Nokia XR20.

Телефон в сети
Телефон в сетиДля просмотра ссылки Войди или Зарегистрируйся

Теперь, когда телефон найден в списке, копируем его MAC и вводим команду pair для соединения. На телефоне появится экран с запросом на подключение и код, который совпадает с тем, что мы видим в консоли.

Для просмотра ссылки Войди или Зарегистрируйся

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

Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для сканирования можно использовать утилиту hcitool. Давай запустим скан и с ее помощью.

Для просмотра ссылки Войди или Зарегистрируйся
Можно попробовать провернуть действия из статьи «Для просмотра ссылки Войди или Зарегистрируйся», или попробовать запустить другие эксплоиты для Bluetooth-устройств в сети, или поменять профиль устройства и стать, например, клавиатурой! Возможно, это будет темой одной из следующих статей.


Сканируем сети​

Для сканирования локальной сети нам понадобится утилита Nmap. По умолчанию она не установлена, поэтому установим сами. Можно через ADB или же через SFTP (такое подключение работает поверх SSH, ничего дополнительно ставить не нужно).

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

Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Для просмотра ссылки Войди или Зарегистрируйся
Уже неплохо, мы видим устройства в сети и можем попробовать постучаться на роутер. Вдруг там пароль по умолчанию вроде admin:admin? Это даст нам еще больше свободы. В итоге устройство может стать мостиком, с помощью которого злоумышленник получит доступ к твоей домашней сети.


Слушаем​

Звук можно перехватывать из трафика Quasar или напрямую с микрофонов с помощью утилиты arecord, которая уже установлена. Я воспользовался советами из Для просмотра ссылки Войди или Зарегистрируйся и Для просмотра ссылки Войди или Зарегистрируйся Khadas. Прежде чем начинать запись, нужно остановить Quasar, чтобы освободить микрофоны. Сделать это просто, как показано на скриншоте ниже.

Запись аудио
Запись аудио

Чтобы отрегулировать уровень усиления микрофонов, воспользуйся утилитой AlsaMixer.

Меню AlsaMixer
Меню AlsaMixer

Записанный файл забираем, например через SFTP.

Мы можем пойти дальше и направить запись через ncat на свой ПК и получать потоковое аудио или перехватывать трафик приложения Quasar, ведь оно отправляет пакеты с аудиопотоком на сервер. Давай приступим к перехвату трафика колонки.


Слушаем сеть​

Для прослушивания трафика колонки воспользуемся Wireshark и его инструментом удаленного прослушивания под названием sshdump.

Для просмотра ссылки Войди или Зарегистрируйся

Настроить его просто: нужно ввести данные для SSH-туннеля, которые используешь для входа на устройство, и указать команду для запуска tcpdump. В нашем случае это /data/tcpdump. Интерфейс для прослушивания — единственный, wlan0 (lo не в счет). Информацию об интерфейсах можешь посмотреть командой ifconfig.

Появилась небольшая загвоздка с перехватом трафика напрямую в Wireshark. Дело в том, что Tuna отправляет приветственную строку при запуске туннеля SSH. Чтобы анализ трафика в Wireshark прошел успешнее, удали первые две строки.

Для просмотра ссылки Войди или Зарегистрируйся

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

ssh root@ru.tuna.am -p 20585 "/data/tcpdump -s 0 -n -w - -U -i wlan0 2> /dev/null " > ~/remotecapture
Полезно указывать объем трафика, при достижении которого произойдет остановка, так как Wireshark может ругаться на слишком большие файлы. Я поступил проще: подождал немного и остановил захват комбинацией Ctrl-C. Затем удалил верхние две строки файла и загрузил его в Wireshark.

Для просмотра ссылки Войди или Зарегистрируйся

Видим трафик! Например, пакет, летящий на clck.yandex.net. Но он зашифрован, и для его просмотра нужны сессионные ключи SSL. Это решается несложно — в сети полно инструкций по настройке системы для сохранения этих ключей в файл. Нам достаточно выполнить такую команду:

export SSLKEYLOGFILE=/data/sslkeylog.log
И начинаем ловить трафик.

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


Итоги​

Колонки «Лайт», «Мини 2», «Мини», «Станция 2», «Лайт 2» и, возможно, «Мини 3» при покупке с рук могут оказаться совсем не безобидной игрушкой, учитывая особенности системы, которые я описал.

Возможно, я тут подогреваю паранойю и недоверие, но посуди сам: не имея каких‑то особенных навыков в пентесте или взломе, используя Google и свои навыки работы с Linux, я смог «зарядить» колонку для слежки, кражи данных, саботажа умного дома, а также закрепления и бокового перемещения в сети.

Меня, как и многих пользователей, удивляет хранение личных данных без защиты, особенно учитывая, что «Яндекс» — далеко не стартап. За два года, что я с разной интенсивностью ковырялся в прошивках этих устройств, ничего кардинально не изменилось.

Какова вероятность, что кто‑то продаст колонку без сброса? Очень высокая! К сожалению, инженеры не продумали резервирование разделов загрузчиков, поэтому при каждом обновлении существует риск «окирпичивания». Я участвую в Для просмотра ссылки Войди или Зарегистрируйся, посвященной ремонту этих колонок, и часто встречаю устройства с проблемой FIP CHK: FFFFFF. Это указывает на повреждение раздела TPL. Такое устройство уже невозможно сбросить без специальных знаний и программатора. Такие колонки оказываются на «Авито» и попадают к новым владельцам вместе со всей информацией. Разбирают их молниеносно!
 
Activity
So far there's no one here
Сверху Снизу