Ребят, вопрос таков, может есть такая возможность прошить xbox 360s trinity, без чипов/rgh?
Живу в таком городе где нет таких специалистов. Сам не хочу прошивать с помощью чипов, боюсь накосячить. Привод у меня прошит, но я хочу freeboot
Живу в таком городе где нет таких специалистов. Сам не хочу прошивать с помощью чипов, боюсь накосячить. Привод у меня прошит, но я хочу freeboot
Недавно я купил себе Mi band 7, по началу хотел купить 6-ую версию, пока не узнал, что на 7-ой обновилась операционная система и теперь она поддерживает установку приложений. Да, официально они об этом не заявили, но умельцы уже сделали множество приложений. Они ставят их как циферблаты, и это вполне обычные приложения. Но все эти приложения работают только локально на самом MiBand 7, не имея возможности взаимодействовать ни с телефоном, ни с интернетом. Я углубился в байткод приложения и документацию по Zepp OS чтобы найти способ создавать приложения, взаимодействующие с интернетом, в этой статье я опишу свой путь. В итоге у меня получилось сделать запрос в интернет с часов и даже запустить мост для отладки приложений.
Сразу скажу, что я уже публиковал эту статью на Хабр. Но хочу теперь попробовать начать писать статьи на Пикабу, так что я буду очень рад любым комментариям и отзывам. Надеюсь пользователям Пикабу эта статья тоже зайдет)
Эта статья написана чисто в ознакомительных целях. Я не призываю никого к переработке кода для добавления новых функций с целью использования и распространения переделанного ПО.
Мне интересен этот вопрос, но к сожалению я не знаю причин. Похоже что Xiaomi Band 7 сделала для xiaomi компания zepp. И им было проще не поддерживать другую операционную систему, а использовать уже имеющиеся наработки для часов zepp. Поэтому на этих часах стоит система ZeppOS. Вероятно Xiaomi решила не платить за все фишки системы и поэтому функционал часов программно ограничен.
Для начала, чтобы разобраться как работает система, я попробовал поставить пару приложений от MelianMiko. Ставил самым простым способом, через приложение для установки циферблатов, подробности можете почитать на 4PDA. Я немного поразбирался в структуре приложений и вот что я понял: приложение это bin файл, который является простым zip архивом с, как минимум, несколькими файлами: app.json(Manifest), app.js(Код инициализации и деинициализации приложения при запуске), index.js(Код страницы),icon.png. Далее я пошел на сайт официальной документации по ZeppOS, там описано как включать режим отладки через приложение ZeppApp. Но попробовав подключить часы через это приложения я получил ошибку:
Я решил на этом не останавливаться, скачал это приложение версии 7.0.1, декомпилировал через apktool в байткод и через jadx в java код:
apktool d com.huami.watch.hmwatchmanager_7.0.1-play_100802.apk jadx com.huami.watch.hmwatchmanager_7.0.1-play_100802.apk -d com.huami.watch.hmwatchmanager_7.0.1-play_100802_JADX
Далее для исследование кода проще использовать результат jadx, но скомпилировать обратно получится только результат apktool, поэтому изменения придется делать в байткоде.
Для начала я убедился что это приложение поддерживает ну или когда-то поддерживало MiBand. Для этого я нашел несколько упоминаний MiBand 7 (Официально он называется Xiaomi Smart Band 7). Его кодовое название в приложении “MILI_L66”.
Далее я решил обмануть приложение(пока без его изменения) и попробовал подключить свои часы к приложению, притворившись другими часами. Для этого я отсканировал qr для сетапа на своих часах я получил такую ссылку:
В ней указан мак адресс, pnpNumber, pnpVersion - это похоже какие-то идентификаторы устройства. Я пробовал их заменить, но это не помогло, поэтому я решил посмотреть, какие qr коды у других устройств zepp при сетапе. В гугл я нашел видео в привязкой Amazfit Band 7, отсканировал код, получил такую ссылку:
Эта ссылка ссылается совсем на другое доменное имя. Далее я решил попробовать просто подставить в этот URL macAddress из своего qr кода и сделать с этого url qr код. И это помогло, мои часы подключились, приложение засетапило их как Amazfit Band 7.
Я обнаружил что весь функционал из приложения Xiaomi здесь есть и я могу полноценно настраивать свои часы. Но после сетапа приложения понимало что у меня не Amazfit а Mi Band и не давало возможности ставить никакие приложения и циферблаты для Amazfit. Поэтому дальше я решил переделать приложение.
Чтобы приложение дало мне возможность ставить mini apps на часы, я решил заставить его думать что у меня не Xiaomi Smart Band 7, а Amazfit Band 7. Для этого таже как и для Mi Band 7, нашел кодовое название для Amazfit Band 7 - “MiliBari”:
Далее нашел все упоминания MILI_L66 и MILI_BARI. Самым интересным показался класс HMDeviceSource:
Вы можете в нем увидеть коды соответствующие разным типам устройств - их идентификаторы.
Далее необходимо переключиться на байткод, который нам выдал apktools.
Здесь я тоже нашел байткод класса HMDeviceSource$a.smali и изменил в нем 3 строки как на скриншотах:
Теперь можно собрать его обратно, подписать, установить. Оригинальное приложение придется сначала удалить, так как подпись теперь не оригинальная.
apktool b com.huami.watch.hmwatchmanager_7.0.1-play_100802 --use-aapt2 apksigner sign --ks-key-alias alias_name --ks-pass pass:123456 --ks release-key.keystore com.huami.watch.hmwatchmanager_7.0.1-play_100802/dist/com.huami.watch.hmwatchmanager_7.0.1-play_100802.apk adb install com.huami.watch.hmwatchmanager_7.0.1-play_100802/dist/com.huami.watch.hmwatchmanager_7.0.1-play_100802.apk
Теперь можно снова логиниться в приложении и подключать Mi Band как я описывал выше, изменяя qr код.
После этих манипуляций приложение начало отображать функционал как для amazfit band 7! Ура! На изображении сначала будет Mi Band 7, но если поменять циферблат, то оно сменится на amazfit band 7. У меня циферблат от Аmazfit встал как родной.
Также теперь появилась кнопка App Store, там можно поставить приложения из магазина для amazfit band 7. Не все заработали идеально, но большинство. Их почему-то в магазине пока только 5. Видимо пока весьма маленькое сообщество разработчиков)
Далее я уже пытался поставить свое приложение, с сервисной частью, сначала я пошел по сложному пути, подменяя файлы приложения. Позже понял, что можно воспользоваться мостом в режиме разработчика на приложении, что гораздо проще и позволяет выводить логи. Вероятно разработчики могут прекратить поддерживать отладку через мост, когда эта версия приложения устареет. Но в этой статье я опишу только путь попроще, через мост. Если вам будет интересно, могу потом описать второй путь.
На 4PDA я нашел проекты пользователя MelianMiko. Он сделал и симулятор mi band, и множество приложений, и утилиту для сборки проектов - zmake. Можете ими воспользоваться для создания простых приложений, но как я понял zmake создает проекты только без сервисной части, выполняемой на телефоне. Еще в отличии от официального сборщика он, не сжимает код в bin файл, а оставляет в формате js(Тут может ошибаюсь, поправьте если не так). Симулятор к сожалению не работает под Linux и MacOS, поэтому я им не пользовался, вместо него использовал официальный симулятор Amazfit band 7.
Для создания проекта я использовал официальную утилиту zeus для ZeppOS. Новый проект можно создать командой zeus create project-name. Необходимо выбрать “1.0 API”, апи второй версии MiBand 7 не поддерживает.
Далее опишу содержимое собранного приложения, это не очень нужная информация, просто для общего ознакомления.
Когда проект будет готов, его можно собрать командой zeus build. В папке dist появится архив в формате zab, его можно открыть как простой zip архив. В нем манифест с описанием приложения и архив common.zpk, который тоже открывается как zip архив. В нем уже можно увидите основные составляющие приложения:
Файл device.zip содержит код выполняемый на часах, ему можно сменить формат на bin и поставить даже через приложение для установки циферблатов.
Файл app-side.zip сожержит код выполняемый на стороне телефона.
Вроде еще может быть файл, описывающий настройку mini app с помощью приложения телефона.
Отличный набор примеров приложений, в том числе с сервисной частью, есть на github. Я, как основу, взял пример “fetch-api”.
Тут нет ничего особенного, все из документации ZeppOS. Необходимо залогиниться в один аккаунт в приложении на телефоне и в приложении симуляторе. Включить режим разработчика в приложении и потом выбрать часы в списке устройств, открыть внизу настройки разработчика и в выпадающем списка нажать кнопку включения моста. После подключиться к мосту надо и в приложении симуляторе, нажав кнопку Bridge.
Теперь можно пользоваться консольной утилитой zeus для отладки проекта:
zeus bridge
сonnect
install
Как я уже писал выше, я взял за основу пример проекта с официального гитхаб аккаунта zepp os, “fetch-api”. Изменив код в app-side, я сделал запрос с телефона на домен ident.me, чтобы получить мой текущий внешний ip, ради примера.
В итоге я получил небольшое приложение на часах, которое может когда угодно выводить мне мой внешний ip. Это конечно не та цель, к которой я стремился. Моей целью было продемонстрировать, то что на самом деле у часов Mi Band 7 есть скрытый, программно ограниченный функционал. Эти часы могут не просто менять циферблаты, но и работать с приложениями. И даже отправлять данные через телефон в интернет и получать ответ. Такие приложения можно использовать например для управления умным домом) Вероятно в будущих версиях часов об этом официально заявят, но пока такого нет. Даже на Band 7 Pro официально не стоит zepp os.
P.S. Это была моя первая статья. Надеюсь вам было интересно, пишите комментарии, буду рад любой критике!
Недавно я создал телеграм канал. Там я планирую регулярно делиться интересными мыслями по темам информационной безопасности, программирования и нейросетей. Если вам интересны такие темы, присоединяйтесь) буду делиться там подобным контентом.
За пять лет хакеры из КНДР украли криптовалюту на $2 млрд, — Investing.
За первые семь месяцев 2023 года хакеры из КНДР украли около $200 млн в криптовалюте, что составляет 20% от общего объёма взломов за этот период. Утверждается, что похищенные КНДР средства используются для создания ядерного оружия.
Эксперимент американских учёных: подопытные слушали песню Pink Floyd — Another Brick in the Wall, а компьютер снимал показания их мозговой активности и воспроизвёл мелодию.
Intel не смог купить Tower Semiconductor за 5,4 млрд $, т.к. Китай не одобрил сделку. TS получит неустойку 353 млн $.
Школьная библиотека в штате Айова, США, использует ChatGPT для запрета книг. Спрашивает у нейронки: f"{book_title} содержит сцены секса?", если «да», то изымает книгу.
Наша станция Луна-25 вышла на орбиту Луны. Посадка на следующей неделе.
//soft
▸[4] Google Chrome на Android и iOS апдейт: добавили нейронку, которая выдаёт краткую версию текста на сайте. Доступна участникам программы бета-тестирования.
▸[5] Google Photos апдейт: добавили нейронку, которая придумывает названия коллекциям фотографий.
▸[6] Драйверы Intel Arc и Iris апдейт: добавили поддержку новых игр, исправили баг с Blender и оптимизировали работу вентиляторов.
▸[7] 2000 серверов Citrix NetScaler взломаны, больше всего в Европе. В статье ссылки на сканер уязвимости.
▸[8] Adobe Express апдейт: добавили нейронку для генерации текста и картинок.
//hard (картинки внизу поста)
▸[9] Видеокарта Gunnir Intel Arc A750 Photon 8G OC Asian Games: спецверсия в честь предстоящих Летних Азиатских игр, отличается только внешностью.
▸[10] Телевизор-чемодан LG StanbyME Go: сенсорный экран 27", FullHD, 4 динамика на 20 ватт, работает с iOS и Android, батарея на 3 часа. Цена в США 1000 $.
▸[11] Blackberry Pi: самоделка на Raspberry Pi Zero W, клавиатура от Blackberry, экран 320 × 240 px, корпус на 3D принтере. По ссылке статья с процессом.
▸[12] Одноплатный ПК Milk-V Meles: чип RISC-V 64GCV Xuantie C910, 4 ядра @ 2 ГГц, ОЗУ 8 или 16 Гб, HDMI, MicroSD, 5 × USB, сеть, Wi-Fi, GPIO 40-pin, 2 × MIPI CSI, размер 6 × 9 см, питание 5V/4A. Даты и цены нет, старт продаж ожидается в Китае.
▸[13] Прототип стекла LionGlass: выдерживает нагрузку 1 кг. Для сравнения: обычное стекло 0,1, Gorilla Glass 0,8.
▸[14] Монитор Dell P2424HT: 24" IPS @ 60 Гц, тачскрин 10 точек касания на Win и Mac, 3 точки на Linux, FullHD, USB-C, Ethernet. Цена в США 520 $.
▸[15] Аккумуляторы для электромобилей CATL Shenxing: заряжаются на 400 км за 10 минут. Для сравнения: Тесла 215 км, AION 335 км. Старт производства в конце года.
▸[16] Мини-ПК Zotac ZBOX: апдейт всей линейки, поставили Intel Raptor Lake. Максимум: i7, полноценная RTX 4070, DDR5 64 Гб, NVMe. Минимум: barebone на i3. Цены нет, скоро в продаже.
//business
▸[17] Xbox ввёл штрафные баллы в онлайн-играх: 1 балл за мат, 2 за буллинг, 3 за оскорбления. Баллы сгорают через полгода. При наборе одного-двух — бан от чата или мультиплеера на сутки, пяти — на две недели, восьми и более — на год.
▸[18] OpenAI предлагает заменить модераторов в соцсетях на нейросеть.
▸[19] XPro, он же TweetDeck, теперь платный.
▸[20] Foxconn начал собирать iPhone 15 в Индии.
▸[21] Чистая прибыль Tencent, Китай, во II квартале: 26,2 млрд $, +41%, чем год назад.
▸[22] PayPal приостановил куплю/продажу крипты в Британии из-за новых законов о её рекламе.
_______________
//alt stream
redirect(Telegram);
Из-за атаки прилегли сервисы местного аналога РЖД, метрополитена и восточного вокзала. Сломались не только расписания для пассажиров, но и график поездов — многие электрички встали. В том числе поезда дальнего направления, следовавшие в Швейцарию, Германию, Польшу и другие страны ЕС.
Так группа KillNet решила поддержать жителей Нигера.
[UPD] К посту есть вопросы - #comment_281550529
Никто не сможет навредить твоему сайту, если…
Если задачка понравилась, у нас для вас есть целая игра на внимательность. Приз — награда в профиль.
Это случилось после того, как я сбросил телефон на заводские настройки.
Потом поставил все приложения заново.
Это происходит пока что только на 1 сайте(сайт проверенный, официальный.)
Раньше такого не наблюдалось
Могут ли это быть вирусы, или это обычный баг !?
Если баг, то подскажите пожалуйста как его пофиксить.
На 4PDA не всегда помогают (