Сейчас на форуме: Dart Raiden, Alf, bedop66938 (+6 невидимых) |
eXeL@B —› Электроника —› Novatek NT96650(MIPS32 24Kec), разобрать прошивку (видеорегистратор) |
Посл.ответ | Сообщение |
|
Создано: 02 октября 2014 01:20 · Поправил: carver · Личное сообщение · #1 скачал с оффсайта прошивку под видеорегистратор, ls430w_EN_11_201404090_64GBsupport.zip LS430W_201401230FW_E00_EC.zip LS430W-A0E-10.rar ls330w_20140507_e00.zip пытаюсь загрузить в IDA, шоб понимать шо и где выйдет поправить, но столкнулся с двумя проблемами. 1) ИДА типа мипс умеет, но 24K, уже не шарит. вообщем пока отступаю 4 байта, и вручную дальше. 2) во всех прошивках, на этот проц(код то референсный), есть адресс, после которого код заканчивается, идет magic BCL1, dword 9, два размера, а потом каша. каша похожая на какой-то архиватор, шо преподавали в китайской школе. в начале прошивки, есть адресс/размер каши. вообщем, понятное дело, два вопроса, 1) я так понимаю без большого напряга - иду заставить понимать остальные MISP опкоды - не выйдет. так-что пропускаем, 2) и вопрос больше в том, как в новатековских прошивках (читай туева туча видеорегистаторов) разобрать ту кашу, що идет после BCL1, и превратить ее в код с данными. |
|
Создано: 02 октября 2014 01:37 · Личное сообщение · #2 |
|
Создано: 02 октября 2014 02:23 · Поправил: carver · Личное сообщение · #3 |
|
Создано: 02 октября 2014 07:30 · Личное сообщение · #4 carver пишет: разобрать ту кашу, що идет после BLC1, и превратить ее в код с данными. carver пишет: ls430w_EN_11_201404090_64GBsupport.zip дароф, первое что в голову пришло rghost.ru/58308980 зы: у мну все еще есть промеры, могу сдампить флеху.. | Сообщение посчитали полезным: carver |
|
Создано: 02 октября 2014 08:15 · Поправил: carver · Личное сообщение · #5 Привет, тоже думал что XOR, но по байтам не сходилось. счас вот нашел красивый пример со старой прошивки, в LS300W20130328 (LS300W_130328.zip) идет чистый текст: Code:
"clamped=%d,M=%d,D=%d\r\n", "Date is saved\r\n", "A:\engmode", "CALIBRATION", "^R Wait background task idle timeout \r\n", "MOVIE", "%s::%s():%d: Capture image!\r\n" а в BG1404090EN11(ls430w_EN_11_201404090_64GBsupport.zip) уже такая каша Code:
если смотеть на строку "^R Wait background task idle timeout \r\n" то похоже что в ls430w где-то есть табличка, превращающая B9 09 AA 72 и B9 05 DD 3F в "ackground task" что реально записанно в дампе, интересный вопрос. попробую погуглить от любого и сравнить, может там есть что-то недостающее. Добавлено спустя 1 час 26 минут ida и mips24k, по идее 0x70A31002 - должно быть mul r2,r5,r3 наверное просто не понимает. Code:
|
|
Создано: 02 октября 2014 10:15 · Личное сообщение · #6 Code:
| Сообщение посчитали полезным: carver |
|
Создано: 02 октября 2014 17:24 · Поправил: carver · Личное сообщение · #7 спасибо, не могу обяснить почему, но в старом IDB файле mul не распознавался, запустил старую иду, там все ОК, теперь и последняя общедоступная распознает. можешь еще проверить, у меня парой байт дальше, идет опкод 0x7C86200A он должен распознаватся как lwx r4, r6(r4), но я даже слова lwx в mips.w32 не найду. Code:
|
|
Создано: 02 октября 2014 17:45 · Поправил: LinXP · Личное сообщение · #8 |
|
Создано: 02 октября 2014 18:05 · Поправил: reversecode · Личное сообщение · #9 http://www.onlinedisassembler.com/odaweb/CBbWnx/0 это похоже на cavium octeon 2 ida не поддерживает, llvm вроде тоже нет вроде гцц только |
|
Создано: 02 октября 2014 23:32 · Личное сообщение · #10 LinXP да, нужен был дамп флешки. там вначале есть загрузчик, который тоже с пожатым BLC1, попробую сначала с его алгоритмом разобратся. там сразу видна процедура что распаковывает. дамп для такого же проца, нашел на taker.im , даже два, по слову "дамп" в топике GW1 находятся http://www.taker.im/phpBB2/topic/152615-g1w-%D0%BD%D0%B0-ntk-96650/page__st__560 в mobius "шифрованный" блок - тоже в наличии. binwalk у меня есть старый, под виндовс. reversecode спасиба за линк. вроде раньше видел, но про mips не обратил внимание. |
|
Создано: 02 октября 2014 23:37 · Личное сообщение · #11 |
|
Создано: 03 октября 2014 02:22 · Поправил: carver · Личное сообщение · #12 да, уже все получилось. подгрузил в симулятор бут, а вместо его запакованной части - запакованную прошивку, запустил бут и тот все распаковал. вообщем, по вопросам, новатековскую BCL1 распаковал. счас пытаюсь осилить скриптик, шоб сделал idc.SetManualInsn? по неизвестным для IDA коммандам. думаю пока достаточно, шоб повтыкать шо там и как. шо такое октеон2? - х.з. у меня же говночайна, какой там мипс64 или 32Core ? там все по 20 баксов, но нада покупать три штуки, одна не вкючится, вторая сломается, а третья будет работать как фирма, но в сумме все обойдется в два раза дешевлле. |
|
Создано: 03 октября 2014 09:22 · Поправил: reversecode · Личное сообщение · #13 они добавляли в gdb, mips инструкции которые у вас не декодятся octeon2 64битный, но видимо он умеет и как 32 работать судя по патчам lwx и до octeon2 поддерживались, но поддерживаются и octeon2 поэтому кавиум только подправил, добавил и поддержку octeon2, ну и новых инструкций добавили Code:
|
|
Создано: 03 октября 2014 17:47 · Поправил: sfinks_2002 · Личное сообщение · #14 |
|
Создано: 03 октября 2014 18:48 · Личное сообщение · #15 |
eXeL@B —› Электроника —› Novatek NT96650(MIPS32 24Kec), разобрать прошивку (видеорегистратор) |