16

Помогите опознать формат прошивки

Здравствуйте.


Пишу сюда, так как отчаялся.

Имеется телевизор китайского производства с Android-ом внутри. Требуется адаптировать прошивку, но для начала ее надо распаковать и перепаковать.


Прошу помощи у знающих людей в определении формата.

Сама прошивка в формате .pkg, но ни один архиватор либо консольная тулза с ним не справляется. Поиск по "магическим" базам не дает результата. Поиск по HEX и начальным строкам тоже не принес результатов.


Первые символы в файле Bм&AЮ™уi[Џ Jcfc/;Е0ї8 щЅё1 С¶U&ъЬќѕsДУ Оц| ro Б)Ис Ё∞],≥"ЮxlЯwKƒIКj G Љ£ *’ю[


HEX: 0F42EC26 419EAAF3 695BDA16 4A636663 2F3B8530 BB381302 F9C1DE31 0D91A655 26FA9CCE CF738493 168EF67C 1A726F02 8129887F F101DDB0 5D2CB322 9E786C9F 774BC449 8A6A1147 09BCA316 2AD5FE5B


Ссылочки на прошивки:

https://yadi.sk/d/PDgAsn3_3CVmba

https://yadi.sk/d/tvAzo72_3CgEDE


Надеюсь на вашу помощь.

Сообщество Ремонтёров

8.3K поста44.7K подписчиков

Правила сообщества

ЕСЛИ НЕ ХОТИТЕ, ЧТОБЫ ВАС ЗАМИНУСИЛИ НЕ ПУБЛИКУЙТЕ В ЭТОМ СООБЩЕСТВЕ ПРОСЬБЫ О ПОМОЩИ В РЕМОНТЕ, ДЛЯ ЭТОГО ЕСТЬ ВТОРОЕ СООБЩЕСТВО:


Посты с просьбами о помощи в ремонте создаются в дочернем сообществе: https://pikabu.ru/community/HelpRemont

К публикации допускаются только тематические статьи с тегом "Ремонт техники".

В сообществе строго запрещено и карается баном всего две вещи:

1. Оскорбления.

2. Реклама.

В остальном действуют базовые правила Пикабу.

2
Автор поста оценил этот комментарий

Комментарий для минусов #2

2
Автор поста оценил этот комментарий

Комментарий для минусов #1

2
Автор поста оценил этот комментарий

Комментарий для минусов #0

0
DELETED
Автор поста оценил этот комментарий

интересный кусок кода

            Socket socket = new Socket("127.0.0.1", 8090);

BufferedReader in = new BufferedReader(new InputStreamReader(socket.getInputStream()));

PrintWriter out = new PrintWriter(socket.getOutputStream(), true);

BufferedReader line = new BufferedReader(new InputStreamReader(System.in));

out.println(cmd);

if (in.read(buf) == -1 || !new String(buf, 0, 2).equals(new String("ok"))) {

ret = -1;

} else {

ret = 0;

}

Log.d(TAG, "execute cmd(" + cmd + "), ret: " + (ret == 0 ? "ok" : "false"));

если я правильно понял, что зайдя на телик через телнет по адресу "127.0.0.1", 8090, можно выполнять любые команды

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Более того, у него открыт adb порт (5555), можно без проблем выполнять команды через shell.

0
Автор поста оценил этот комментарий

Там не в нанд запись вообще. Из быстрого просмотра нашёл только ссылки на recovery, а значит pkg - свой формат или шифрованный zip. Судя по размеру - так и есть, как раз начинка android tv андроидная, только шифрованная.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Там есть проверка на процессор. Если MTK - использовать PKGUpdate, если MStar - то zip через recovery.

показать ответы
0
DELETED
Автор поста оценил этот комментарий

Везде оперируем простыми данными - взяли число, записали число)

Пока подтверждается то, что писали выше - просто запись в нанд и все. Далее видимо прошивка распаковывается уже в самом аппарате.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Так и есть, но я не думаю что китайцы умудрились написать свою супер-технолологию упаковки прошивки.

Насколько я понял по коду это всего-лишь eeprom image (мешанина из всех системных разделов в одном файле). Сейчас ставлю binwalk (оочень долгий процесс) чтобы определить начало и конец system раздела, который нужно перепаковать.

0
DELETED
Автор поста оценил этот комментарий

полагаю, что программа обновлялка написана на шарпе, спинь ссылку

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Это обычный APK, написанный на Java.

Декомпилированный файл: https://www.dropbox.com/s/y6yj78k464sbw27/versionUpdate_sour...

1
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Благодарю за помощь

0
Автор поста оценил этот комментарий

это инсталер от макоси

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Я сам работаю на Mac OS. Ответственно заявляю - нет, мак ось не может его разобрать стандартными средствами :)

4
DELETED
Автор поста оценил этот комментарий

хочешь я тебя обрадую?

Факт 1. Вероятность того, что твоя прошивка "зашифрована" равна 95%, а может быть и больше.

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

Факт 3. Прошивка расшифровывается уже внутри телевизора и выполняются обновление.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Внутри этого приложения не только скачивание прошивки, там что-то гораздо большее.

Судя по коду оно работает напрямую с eeprom (nvm).

Часть кода:


public void writeNvmData(int addr, int data) {

Log.v("------------------", "---writeNvmData---" + addr + " " + data);

ConfigValue value = new ConfigValue();

value.setIntValue(addr);

try {

this.configService.setCfg(ConfigType.CFG_FAC_WR_ADDR, value);

} catch (TVMException e) {

e.printStackTrace();

} catch (NullPointerException e2) {

e2.printStackTrace();

}

ConfigValue valuedata = new ConfigValue();

valuedata.setIntValue(data);

try {

this.configService.setCfg(ConfigType.CFG_FAC_WR_DATA, valuedata);

} catch (TVMException e3) {

e3.printStackTrace();

}

}

показать ответы
0
Автор поста оценил этот комментарий
Есть формум xentax, он хоть и по играм, но вроде есть раздел и для всяких прошивок, так что поспрашивай там и кинь прошивку, там есть большие шансы что вскроют, ибо и не такое вскрывали там. Если что то можешь продублировать пост и на zenhax, тоже по играм, но и там есть умельцы хоть куда.
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Благодарю.

3
Автор поста оценил этот комментарий

Врядли тут помогут, это к производителю.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

Несколько раз пытался, ни в какую.

Сейчас тружусь над реверс-инжинирингом приложения, которое обновляет ТВ.

показать ответы

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества