Сейчас на форуме: bezumchik, tyns777, Lohmaty (+6 невидимых)

 eXeL@B —› Вопросы новичков —› исследование прошивки
Посл.ответ Сообщение

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

Создано: 09 марта 2019 00:42
· Личное сообщение · #1

Приветствую
Хотел спросить совета по поводу исследования прошивки в статике.
В общем есть мозги двигателя с процессором Motorolla 563. Для друга нужно было найти алгоритм хэша, который в них используется. Алгоритм повезло найти, но в программе по диагностике этого двигателя.
Задача выполнена, но мне стало интересно насколько сложно было бы найти этот алгоритм в прошивке, если бы его не было бы в программе. Раньше с исследованием прошивок вообще не сталкивался.
Но у меня сейчас есть на руках алго, каким он точно должен быть, что по идее должно облегчить изучение вопроса. То что алго есть в прошивке, подтверждает наличие в ней строки, которая используется в алгоритме. Подгрузил прошивку в ИДУ (выбрал PowerPC и процессор mpc5xx), но обычные методы поиска не помогают. Ссылок на строку нет, поиск по известным константам тоже ни чего не дал - слишком много совпадений.
Насколько вообще сложно и вообще реально исследовать прошивку в статике (т.е. просто загрузив ее в ИДУ)? И что можно почитать для начала по этому вопросу?
Получил один совет - использовать JTAG для отладки процессора, но для меня это так же темный лес + доступ к блоку возможен только через teamviewer




Ранг: 271.2 (наставник), 331thx
Активность: 0.321.49
Статус: Участник

Создано: 09 марта 2019 04:00 · Поправил: f13nd
· Личное сообщение · #2

Имеется в виду кс или хеш, используемый в цп? То, что в прошивке есть какой-то крипторафический алгоритм еще не говорит о том, что он используется там, где надо. И обычно никаких строк, указывающих на алгоритм, в прошивках эбу не бывает - их просто некуда выводить. Анализировать прошивку в статике можно, но с ограничениями. Есть вещи, которые в статике почти невозможно выяснить и хорошо если что-то можно сделать не выясняя их. Попытка зацепить jtag/aud отладчик может обернуться очень увлекательным приключением, а главное мало кто может здесь что-то подсказать и еще меньше станут подсказывать.

-----
2 оттенка серого




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

Создано: 09 марта 2019 22:29
· Личное сообщение · #3

f13nd
это не кс.
там для редактирования некоторых параметров нужно ввести типа инженерного пароля. пароль проверяется в эбу. пароль представляет собой что-то типа хэша от некоторых параметров типа SN, part number и других. в оригинальной проге для диагностики был типа модуль симуляции этого эбу, откуда я и дернул алго. мне просто интересно стало посмотреть как он реализован в прошивке (у меня есть полый дамп) и как его можно было бы найти, если бы не было такого подарка от разрабов.
зацепится решил за строка которая используется в алго. в дампе она присутствует, но она расположена между процедур которые распознала ИДА и ссылок на нее нет.

Добавлено спустя 4 минуты
вообще я даже ни где не смог найти полного списка команд, чтобы хотя бы понимать что происходит в распознанных ИДОй процедурах




Ранг: 271.2 (наставник), 331thx
Активность: 0.321.49
Статус: Участник

Создано: 10 марта 2019 03:49 · Поправил: f13nd
· Личное сообщение · #4

zds пишет:
представляет собой что-то типа хэша от некоторых параметров типа SN, part number и других

Откуда уверенность, что в прошивке есть алгоритм? Эти значения статические. Иденты часто прошивка не берет напрямую с адесного пространства флеша, предварительно переносит в память, переносить может несколько раз. Если на них совсем нету кросс референсов, значит адресуются динамически и надо что-то придумывать для дополнительного анализа, если ида не могёт. Это и есть главный минус статики. В твоем случае я бы плясал от сервиса, которым ключ передается, с него проще добраться до алгоритма, если он есть, чем с идентов.
zds пишет:
найти полного списка команд, чтобы хотя бы понимать что происходит в распознанных ИДОй процедурах

Options - General - Auto comments или мануалы на наборы инструкций этого семейства контроллеров или базовые для ppc.

ЗЫ: кстати в параллельной ветке есть црушная GHIDRA, в которой есть декомпилер ppc, с ней может оказаться попроще чем с идой.

-----
2 оттенка серого


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

Ранг: -0.9 (гость)
Активность: 0=0
Статус: Участник

Создано: 10 мая 2019 13:15
· Личное сообщение · #5

Помогите!
Нужна Acer Liquid S2 - Официальная прошивка.
Должны были сделать, все как на зло заняты.
Думаю с вашей помощью всё получится.


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


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