|
Cortex-M3 EFM32 |
|
|
|
May 27 2018, 05:06
|
Группа: Участник
Сообщений: 12
Регистрация: 27-05-18
Пользователь №: 104 674

|
Здравствуйте уважаемые. Помоги решить данную задачу. Есть процессор Cortex-M3 ARM 7, на нем программа, которая включается по коду нажатиями на кнопки. Исходника самой программы нет, но есть слитая программа в бине. Как найти в коде дизассемблированном строку, где этот код вводится. Как он может выглядеть в коде дизассемблера IDA. Смотрел по кнопкам на какие ноги процесса они идут. Такого вообще в коде нет. И возможно ли это ? Помогите уважаемые гуру. весь код такого плана.
|
|
|
|
|
May 27 2018, 10:58
|

Профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831

|
Цитата(gem @ May 27 2018, 08:06)  И возможно ли это ? Возможно, но я вижу только два варианта: 1) реверс-инжениринг за очень космические деньги, 2) разработка прошивки с нуля, что тоже ни разу не бесплатно. В подавляющем большинстве случаев выгоднее выбрать вариант 2. Я не шучу! Цитата Как он может выглядеть в коде дизассемблера IDA. Смотрел по кнопкам на какие ноги процесса они идут. Такого вообще в коде нет. На эти вопросы НИКТО не сумеет ответить, кроме разработчика прошивки. И то не факт ...
--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
|
|
|
|
|
May 27 2018, 11:08
|
Группа: Участник
Сообщений: 12
Регистрация: 27-05-18
Пользователь №: 104 674

|
Цитата(Forger @ May 27 2018, 10:58)  Возможно, но я вижу только два варианта: 1) реверс-инжениринг за очень космические деньги, 2) разработка прошивки с нуля, что тоже ни разу не бесплатно.
В подавляющем большинстве случаев выгоднее выбрать вариант 2.
Я не шучу!
На эти вопросы НИКТО не сумеет ответить, кроме разработчика прошивки. И то не факт ... Допустим второй вариант, цена вопроса приблизительно от и до.
|
|
|
|
|
May 27 2018, 11:29
|

Местный
  
Группа: Участник
Сообщений: 492
Регистрация: 12-11-11
Пользователь №: 68 264

|
Некогда когда-то, брал бинарник, прошивал его в STM32 и по нему отлаживался (как-то). Хотел поправить кое-что в прошивке ST-Link, который по сети слитый гуляет. Но не помню как отлаживал, если честно. Да и не добился нужного результата по причине отсутствия времени (а потом и желания). Мысли вслух. 1. По схеме понять, с каких GPIO считываются показания нажатий кнопок. 2. Найти все места, где происходит обращение к нужному регистру GPIO в пространстве ввода/вывода и анализировать программное окружение каждого из них. 3. Отлаживаться в железе через аппаратный отладчик, поставив условную точку останова по изменению данных подозреваемой переменной состояния нажатия кнопки (она по-любому где-то будет). 4. Profit?
P.S. Можете на Си накатать простейшую программу, скомпилировать ее, слинковать ее в .bin и потренироваться на простом примере. Там суть и поймете (при наличии светлой головы, конечно же).
|
|
|
|
|
May 27 2018, 11:30
|

Профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 22-02-05
Пользователь №: 2 831

|
Цитата(Эдди @ May 27 2018, 14:25)  Всяко дешевле будет, чем другие два варианта! Не факт! Например, если речь идет про крупно серийное изделие, то никто вам не продаст исходники. С другой стороны, если голая прошивка ТС досталась просто так, то велика вероятность, что и исходники вообще "валяются" на каком-нить гитхабе ))
--------------------
Кругозор некоторых людей - круг с нулевым радиусом. Они называют его "точкой зрения".
|
|
|
|
|
May 27 2018, 11:37
|
Группа: Участник
Сообщений: 12
Регистрация: 27-05-18
Пользователь №: 104 674

|
Купить у автора, не вариант. Да еще знать бы автора. Потому как кто продает и автор, я думаю разные люди. Проще и дешевле готовое изделие купить. Вопрос, а ради чего ?) чтобы пароль поменять ?) Сомневаюсь что есть исходник в паблике, но ход мыслей понял.
Сообщение отредактировал gem - May 27 2018, 11:38
|
|
|
|
|
May 27 2018, 13:02
|
Группа: Участник
Сообщений: 12
Регистрация: 27-05-18
Пользователь №: 104 674

|
Цитата(Эдди @ May 27 2018, 12:25)  Есть еще третий вариант: найти автора прошивки и предложить ему заплатить за исходники. Всяко дешевле будет, чем другие два варианта! Найти бы его автора  А так я вижу что все теже на манеже, может и автор найдется.
Сообщение отредактировал gem - May 27 2018, 13:03
|
|
|
|
|
May 27 2018, 13:21
|
Гуру
     
Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143

|
Цитата(Forger @ May 27 2018, 16:15)  А что это за девайс такой, что прошивка есть, а исходников нем? Да обычная контрактная разработка, есть железо, есть прошивка. За исходники, т.е. за возможность допиливать под себя, как правило требуют заметно больше денег, либо это оговаривается отдельно при заказе контрактной разработки. ЗЫ. Реверсировать можно, если есть опыт и куча времени, но если там автор решил чуток подзапутать, то проще новую прогу писать, как уже было сказано..
|
|
|
|
|
May 27 2018, 15:25
|

Местный
  
Группа: Участник
Сообщений: 492
Регистрация: 12-11-11
Пользователь №: 68 264

|
Цитата(VladislavS @ May 27 2018, 19:19)  Что-то мне кажется, что спрашивать тут как на...ть нашего коллегу разработчика это как минимум неэтично, а как максимум противозаконно. Что-то мне кажется, что, судя по вопросам ТС, у него не получится свершить подобного рода злодеяние Даже если устройство и не сильно сложное, время для реверса нужно много + никаких гарантий, естественно. Ну а по деньгам - 300-400 тысяч, ТС, если предложите, возможно пару человек и заинтересуются (именно реверсом)
|
|
|
|
|
May 27 2018, 15:58
|
Группа: Участник
Сообщений: 12
Регистрация: 27-05-18
Пользователь №: 104 674

|
Интересно, давайте развивать. Дальше кто больше ?) Где коллега тут и кто его решил на.....ть так я и не понял. Я может знания проверяю и ищю себе хорошего программиста  Никаких гарантий и цена 300-400  ) Сами в это верите?
Сообщение отредактировал gem - May 27 2018, 16:11
|
|
|
|
|
May 27 2018, 16:42
|
Гуру
     
Группа: Свой
Сообщений: 2 223
Регистрация: 3-03-06
Из: Tomsk
Пользователь №: 14 925

|
Цитата(Forger @ May 27 2018, 17:58)  1) реверс-инжениринг за очень космические деньги, Откуда там космические деньги? Есть схема, есть прошивка, и есть два простых варианта - сравнение с набранным кодом или какое-то ветвление при нажатии кнопок. В первом варианте несколько часов работы, во втором день-два в самом худшем случае. Вероятность попасть на третий вариант, самомодифицирующийся код - минимальна.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|