Сейчас на форуме: Dart Raiden, bedop66938, morgot (+6 невидимых)

 eXeL@B —› Электроника —› Определяем чем упакована прошивка (расширение PKG)
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 00:40 · Поправил: Модератор
· Личное сообщение · #1

Всем привет!
Помогите определить или чем распокавать/запокавать прошивку для телевизора SONY 32bx300.
Расширение у файлика PKG, заливается эта прошивка путем копирования ее на флешку и вставления в телик. После включения ТВ начинает прошиваться.
Весь инет излазил, не знаю чем ее распаковать. Хочу поисследовать ее
Вот первые байты этой прошивке, может помогу:

ATVIDTV0801_002020_30_001_33_001_20ïBJ6úÂHyí–/%OÏhäΩ‚??Òœ‘t¯<-˚àï?®ßº√˝?n›dó÷#FUÈ. É?[fÂg•1⁄*ıb∆\˝Øò§c ?òÔ5≠/7Â]V
X¿`ÌÎÁ¶b]ÀÓ∂Ì9—Xê–ŒX7ª5†.i
Uù\7> ˛î
ö¡ƒdfiÚjñ:∑n\{J©÷Ò
˝-Wcfig!START
firm
nand
1
uimg
other
255
pqda
nand
10
ueep
other
255
nvrm
other
255
aqda
nand
11
pnel
nand
9
fsys
nand
8
END
CUST_START
1
1
3
0
tp1.0001
1
1
1
3
2
tp1.0003
3
1
1
3
3
tp1.0004
4
1
1
3
4
tp1.0005
5
1
1
3
5
tp1.0006
6
1
1
3
6
tp1.0007
7
1
1
3
7
tp1.0008
8
1
1
3
7
tp1.0008
8
CUST_END
fsys@!!y



Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 08 января 2012 01:04
· Личное сообщение · #2

propsan
а саму прошивку закинуть сюда - трибунал?
все телепаты праздники празднуют счас, звиняйте. .......
какая конечная цель затеи? ибо "чем распокавать/запокавать прошивку" както академично звучит



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 09:41 · Поправил: propsan
· Личное сообщение · #3

Да нивапрос.
-http://www.megaupload.com/?d=ODYFKABC
Конечная цель - изучить прошивку и получить бесценный опыт, ну поправить под себе, что-то если это вообще возможно(если есть что менять)




Ранг: 462.8 (мудрец), 468thx
Активность: 0.280
Статус: Участник
Only One!

Создано: 08 января 2012 10:56 · Поправил: OnLyOnE
· Личное сообщение · #4

propsan пишет:
распокавать/запокавать прошивку

Ты уверен что файл упакован?

P.S. По моему это линуксовый инсталляционный файл...

-----
aLL rIGHTS rEVERSED!


| Сообщение посчитали полезным: MasterSoft

Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 10:59 · Поправил: propsan
· Личное сообщение · #5

Нет. Уверен, что от телевизора, что прошивка для типа памяти nand.
На первые биты(ATV) мне гугл и причие поисковики ничего не дали, собственно и обратился за помощью к форумчанам
PEID молчит, Оlly то же отказалась работать с не исполняемым файлом, WinDasm просил указать точку входа - знанией мало, по этому помочь с этим ему не смог. 7zip тож ничего недал.



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 11:07
· Личное сообщение · #6

OnLyOnE пишет:
По моему это линуксовый инсталляционный файл...

Попробовать распокавать в Ubunte ? Каким распаковщиком пробовать?




Ранг: 462.8 (мудрец), 468thx
Активность: 0.280
Статус: Участник
Only One!

Создано: 08 января 2012 11:14 · Поправил: OnLyOnE
· Личное сообщение · #7

propsan пишет:
Попробовать распокавать в Ubunte ? Каким распаковщиком пробовать?

Надо гуглить на эту тему...
Кстати... --> вот это ты видел? <--
Там про расширение PKG и возможная принадлежность этого расширения..
Mac OS помоиму с юникс ядром...

-----
aLL rIGHTS rEVERSED!




Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 11:18
· Личное сообщение · #8

OnLyOnE пишет:
Кстати... --> вот это ты видел? <--

Ага. На Mac-е тоже попробовал, распаковщик выдает ошибку.



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 11:23
· Личное сообщение · #9

В ubunte dpkg сказал, что файлик не относится к deb пакетам...



Ранг: 72.1 (постоянный), 30thx
Активность: 0.050
Статус: Участник

Создано: 08 января 2012 13:02
· Личное сообщение · #10

Телек начинает прошиваться, потому что там во-первых внутри линукс, во-вторых он мониторит съемные носители в том числе на предмет файлов-прошивок. находит более свежую версию, чем текущая - прошивает. Код загрузчика - в телеке, и внутри этой прошивки, просто так ты его фиг достанешь.
Резюме - ходи на ixbt.com, это больше их тема.



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 13:17
· Личное сообщение · #11

Спасибо за совет, создал тему на ixbt, жду вестей



Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 08 января 2012 13:49 · Поправил: sendersu
· Личное сообщение · #12

propsan
соберите вот ету утилиту
binwalk, Firmware Analysis Tool
http://code.google.com/p/binwalk/
и натравите на свой файл

прошивка видать в своем, сониевском формате,
вначале идет хидер, а начиная со смещения 0x209 какойто запакованный стрим, возможно zlib...
надо понять что за стрим, расспаковать его, а дальше изучать
как правило в хидерах идет контр. сумма образа, так что даже поняв чем запаковано, и создав свой образ , надо будет еще реверсить лоадер в телевизоре
как думаете с етим справиться?

upd:
может тут есть ваша модель тиви?
https://products.sel.sony.com/opensource/
много всего вижу есть (секция Television)



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 17:37
· Личное сообщение · #13

на ixbt тема не развиваеться. За то тут, полным ходом идет.



sendersu пишет:
может тут есть ваша модель тиви?
https://products.sel.sony.com/opensource/
много всего вижу есть (секция Television)

Посмотрел. Нету моего
sendersu пишет:
соберите вот ету утилиту
binwalk, Firmware Analysis Tool

Собрал тулзу, зупустил, что то делает и видимо надолго это.
Запустил с ключем -a (пробовал еще -A поиск на запуск ничего не дал)



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 17:51
· Личное сообщение · #14

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

Вот что выдал на фильтр zlib
ввел binwalk -i zlib atv.pkg

43861 0xAB55 zlib compressed data
и так еще кучу строк только биты меняються.
Пока просматривал всь выданный код заметил указание на ext2
Есть смысл сделать лог всего процесса и суда выложить или этого достаточно?

Если взять и текстовым редактором вырезать начало кода до того самого байта на котором выдало zlib и попробовать его распоковать zlibc? Сработает?



Ранг: 481.4 (мудрец), 109thx
Активность: 0.180
Статус: Участник
Тот самый :)

Создано: 08 января 2012 18:05
· Личное сообщение · #15

в теликах никсы, это 100%

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

-----
Реверсивная инженерия - написание кода идентичного натуральному




Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 18:28
· Личное сообщение · #16

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

Я вкладываю и свои знания, пусть небогатые. Делаю все своими руками, вопрос в инструментах- "кто знает какие использовать?"



Ранг: 301.4 (мудрец), 194thx
Активность: 0.170.01
Статус: Участник

Создано: 08 января 2012 18:33 · Поправил: Veliant
· Личное сообщение · #17

Для начала нарежь на куски
Code:
  1. Адрес    Имя  Размер
  2. 00000205 fsys 01400014
  3. 01400225 pnel 0000158C
  4. 014017bd aqda 0000674C
  5. 01407f15 nvrm 00008018
  6. 0140ff39 ueep 000012F4
  7. 01411239 pqda 014c0014
  8. 028d1259 uimg 0003b1C9
  9. 0290c42e firm 0044F1E8

К адресу везде надо прибавить +0x0C

Все секции начинаются с последовательности
Code:
  1. 21 21 79 1A

У большинства там еще байт 8 повторяется где-то
Собственно секция cfig имеет такой же формат, только не зашифрована (очевидно второй dword указывает шифрованный или нет, что можно использовать в дальнейшем если собирать свое)

И еще не известно что за последовательность расположена по адресу +40h размером 152(98h) байта

| Сообщение посчитали полезным: propsan

Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 08 января 2012 19:47
· Личное сообщение · #18

тут интересно поискать по первым байтам что есть что
FILE SIGNATURES TABLE
http://www.garykessler.net/library/file_sigs.html

| Сообщение посчитали полезным: propsan

Ранг: 310.8 (мудрец), 29thx
Активность: 0.430
Статус: Участник

Создано: 08 января 2012 22:18 · Поправил: tundra37
· Личное сообщение · #19

Если там zlib, то скорее всего зашифрованный(проверял утилитой stuns - она находит много маленьких огрызков с бессмыслицей). Короче, без анализа программы - это гадание на кофейной гуще.
Я тут ковыряю реальный zlib и все равно тяжело понять, а тут сплошные неизвестные. Кроме zlib есть еще lzma, но там другая сигнатура. Каталог "частей" похож на те, которые в прошивках некоторых ресиверов. Там вообще один из древних вариантов алгоритма LZSS



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 23:15
· Личное сообщение · #20

sendersu пишет:
тут интересно поискать по первым байтам что есть что
FILE SIGNATURES TABLE
http://www.garykessler.net/library/file_sigs.html

Спасибо за инструмент полезная вещь, но ксожалению pkg ненушелся.
Veliant пишет:
Для начала нарежь на куски

Спасибо за внятный ответ. Все нарезал.
Как вы определили размер этих областей?



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 23:31
· Личное сообщение · #21

tundra37 пишет:
Короче, без анализа программы - это гадание на кофейной гуще.

Какие предложения?
Я пока натравиливаю на вырезанные куски binwalk -
1259875 0x133963 Linux rev -1316613423.5684 ext4 filesystem data, UUID=0f5894d8-bfd1-ae80-bd15-3cf261968b9e (compressed) (extents) (64bit) (large files) (huge files)
1262446 0x13436E MIPSEL MIPS-III ECOFF executable - version 243 ^H.147
1262737 0x134491 start boot sector, code offset 0x16
1264442 0x134B3A MIPSEL-BE Ucode
1264921 0x134D19 mc68k COFF object
1266282 0x13526A 88K BCS executable
1272890 0x136C3A ARJ archive data, v11, original name: \202V\344\352\275O\357,\220\243\003\2272\033\211&\267\206\371\3515\3302\343K[dd\302\342\026I\377<\036\005u+\302\361\224e\261\306]2\360\027\271B}\256s\265\266"\313\264~\026\345+\030,
1272892 0x136C3C ARJ archive data, v157, multi-volume, slash-switched, backup, original name: \344\352\275O\357,\220\243\003\2272\033\211&\267\206\371\3515\3302\343K[dd\302\342\026I\377<\036\005u+\302\361\224e\261\306]2\360\027\271B}\256s\265\266"\313\264~\026\345+\030, 11]
1274072 0x1370D8 start boot sector, code offset 0x33
1276471 0x137A37 compress'd data 4 bits
1276914 0x137BF2 zlib compressed data
1277860 0x137FA4 MIPSEB-LE MIPS-II ECOFF executable - version 213 ^H.142
1278291 0x138153 Linux rev -814474585.39482 ext4 filesystem data, UUID=5263c8e0-c9c9-3cc2-aa3c-15c0e36c0589, volume name "\224\013\273s+\326\374\227\374\314\316;\331\303\3039\232\226\323\331\361\274\022,zf6DO{\343W\206\034;q[\204gk2\315\247\373\347\227\246-c\265\210\220\262>\242D9\225\020\0378\205\221" (needs journal recovery) (extents) (64bit)
1279230 0x1384FE ARJ archive data, v235, backup, original name: f\023\374-\355|\214\235\362\333Bb\320+.\214 \370yP\024N5\363\261w\275\212\314\227}WH*x\276<\014\210\264\037\300@\211\363\331\015\314n\241\254\205\031\242\370h\356X\276Js_\235,
1279232 0x138500 ARJ archive data, v189, original name: \374-\355|\214\235\362\333Bb\320+.\214 \370yP\024N5\363\261w\275\212\314\227}WH*x\276<\014\210\264\037\300@\211\363\331\015\314n\241\254\205\031\242\370h\356X\276Js_\235\303\030,



Ранг: 301.4 (мудрец), 194thx
Активность: 0.170.01
Статус: Участник

Создано: 08 января 2012 23:43
· Личное сообщение · #22

propsan пишет:
Как вы определили размер этих областей?

Они там указаны. Первый dword - имя, второй 0/1, третий - размер

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



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 08 января 2012 23:56
· Личное сообщение · #23

Есть же какието инструменты которые распознают тип шифрования?
Может быть ими попробовать?



Ранг: 441.3 (мудрец), 297thx
Активность: 0.410.04
Статус: Участник

Создано: 09 января 2012 00:11
· Личное сообщение · #24

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



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 января 2012 01:14
· Личное сообщение · #25

из телика достать ее только путем хирургического вмешательства?



Ранг: 65.7 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 09 января 2012 01:21 · Поправил: Halt
· Личное сообщение · #26

Даже если вы узнаете тип шифрования, очень маловероятно что вам это что-то даст. Допустим там архив с паролем ;) Лоадер телевизора при нахождении прошивки засасывает её в себя, дешифрует, запихивает в микроконтроллер. Лоадер вы с микроконтроллера не считаете никак, прошивку тоже. Промышленный шпионаж сейчас очень широко шагает. Особенно вездесущие китайцы, которые, если бы прошивка была легко доступна, понаделали клонов. Иногда считать прошивку получается, но это либо слабая защита, либо ошибка в схемотехнике кристалла микроконтроллера, которая позволяет обойти запрещающие считывание регистры и получить код.
Покопаться конечно можно, вдруг там что-то простое - но особо не надейтесь..

ЗЫ пока писал - вы ответили. С чипа вы прошивку не считает никак. Вообще. Есть вариант вскрыть чип, лазером сбросить биты защиты, которые не дают читать, а потом прочитать, но это выйдет дороже 20 телевизоров, если не больше..



Ранг: 512.7 (!), 360thx
Активность: 0.270.03
Статус: Модератор

Создано: 09 января 2012 01:37
· Личное сообщение · #27

propsan
мда..... а самсунг похоже уже хорошо потоптали
обем плюшек впечатляет

http://samsungtvupgrade.blogspot.com/2010/07/samygo.html
http://bt.loraart.ru/index.php
........
ищите похожий прожект для сони



Ранг: 4.9 (гость)
Активность: 0.010
Статус: Участник

Создано: 09 января 2012 01:53
· Личное сообщение · #28

Ндеее...
Спасибо, буду дальше капать.
На что то полезное еще наткнетесь, нестесняйтес



Ранг: 281.8 (наставник), 272thx
Активность: 0.250.01
Статус: Участник
Destroyer of protectors

Создано: 09 января 2012 02:19
· Личное сообщение · #29

Halt пишет:
Есть вариант вскрыть чип, лазером сбросить биты защиты, которые не дают читать, а потом прочитать, но это выйдет дороже 20 телевизоров, если не больше..

всегда хотел знать какое оборудование для этого необходимо, если можно конкретно.



Ранг: 65.7 (постоянный)
Активность: 0.050
Статус: Участник

Создано: 09 января 2012 04:29 · Поправил: Halt
· Личное сообщение · #30

Ну много я по этой теме не скажу, и конкретики , увы, не будет. Самому было интересно , но тоже только "слышал", "видел", "делают" в основном. Да и самому как-то не доводилось. Хотя когда услышал что это невозможно слить прошивку в принципе - было небольшим шоком, как так... После обычных программ то...
Вот что есть по теме, но думаю вы это все видели уже: пардон за ссылки на хабр
--> Link <--
В конце статьи ссылочки интересные.
но это 100-летний пик, с AMR, которые сейчас везде, сложнее, но только в плане размеров имхо....
снять корпус
можно чем-то таким:
--> Link <--
или кислотой...
опять же тут есть чуть:
--> Link <--
ну и до кучи - но это варварство http://habrahabr.ru/blogs/easyelectronics/127205/
ну и контора, из ссылки в статье
--> Link <--

Имхо дешевле будет нанять команду разработчиков и переписать. )


. 1 . 2 . >>
 eXeL@B —› Электроника —› Определяем чем упакована прошивка (расширение PKG)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати