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

 eXeL@B —› Электроника —› исследование прошивки МК Motorola
Посл.ответ Сообщение

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

Создано: 19 февраля 2020 00:06
· Личное сообщение · #1

Доброго времени суток! Возникла необходимость исследовать дамп прошивки микроконтроллера Motorola mc68hc908jb16, в распоряжении есть дамп EEPROM и MROM. Подскажите, пожалуйста, как правильно разместить в адресном пространстве IDA Pro данные файлы, пробовал по разному, но в итоге адекватного дизассемблированного листа так и не получил.


--> MROM <--
--> EEPROM <--
--> datasheet <--




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

Создано: 19 февраля 2020 00:44
· Личное сообщение · #2

Профиля твоего проца в иде нет (смотреть cfg/6808.cfg). Можешь вписать туда свой с мануала, можешь не морочиться: выбирать 6808, адрес флеша 0xBA00, отменить диалог выбора проца и добавить нужные секции и метки вручную.

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




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

Создано: 19 февраля 2020 19:01
· Личное сообщение · #3

Спасибо. Я так попробовал, но даже после этих манипуляций многие байты оказываются неисследованными или просто помечаются как данные. Является ли это показателем того, что все-таки я неправильно разместил прошивку в адресном пространстве в IDA Pro или же так и должно быть? Я знаю, что эти байты можно перевести в код или ASCII-строки нажатием клавиши, но будет ли это правильно?


8e97_19.02.2020_EXELAB.rU.tgz - листинг.png




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

Создано: 19 февраля 2020 22:34
· Личное сообщение · #4

MrVladorg пишет:
байты оказываются неисследованными или просто помечаются как данные

Ты столкнулся со знаменитым высокоскоростным автоанализом иды Можешь снести все и разобрать руками. В плане кода выхлоп там неплохой, но есть спорные моменты. Не знаю эту архитектуру настолько, чтобы судить правдоподобно ли это.

MrVladorg пишет:
Я знаю, что эти байты можно перевести в код или ASCII-строки нажатием клавиши, но будет ли это правильно?

Ида называется интерактивным дизассемблером за это свойство.

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




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

Создано: 19 февраля 2020 23:06
· Личное сообщение · #5

Ясно, спасибо. А подскажите, пожалуйста, насколько вообще возможно сделать плагин, который бы автоматически переводил такие байты в код, а то что-то не охота все это вручную переводить.




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

Создано: 19 февраля 2020 23:17
· Личное сообщение · #6

MrVladorg пишет:
насколько вообще возможно сделать плагин

Зная особенности проца и компиля за пару часов скрипт сделаешь. Но тут прошивка полтора килобайта, есть ли смысл?

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




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

Создано: 19 февраля 2020 23:27
· Личное сообщение · #7

Хотя да, Вы правы. А еще такой вопрос, можно ли как-нибудь не имея под рукой процессора посмотреть как будет работать прошивка?




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

Создано: 19 февраля 2020 23:36
· Личное сообщение · #8

MrVladorg пишет:
можно ли как-нибудь не имея под рукой процессора посмотреть как будет работать прошивка?

Существуют симуляторы-отладчики типа

www.lauterbach.com, downloads > evaluation software, но многого от них не жди. Чтобы прямо взять и стартануть прошивку в эмуляторе, надо сильно заморочиться и кучу всего понаписать. Отдельные участки прошивки отлаживать можно.

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





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

Создано: 19 февраля 2020 23:50 · Поправил: difexacaw
· Личное сообщение · #9

MrVladorg

> можно ли как-нибудь не имея под рукой процессора посмотреть как будет работать прошивка?

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

Code:
  1. Programming and debugger functionality ismade possible by the 
  2. HCS08 microcontroller’s Background Debug Controller (BDC) and In-Circuit Emulator (ICE) 
  3. Debug (DBG) modules.


--> Link <--

Ценник на прогер от 500$ и это за 6MHz

-----
vx





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

Создано: 19 февраля 2020 23:52
· Личное сообщение · #10

difexacaw пишет:
Все нормальные мк имеют эмуляторы в среде разработки.

Вообще-то общепринятая практика использовать синие пилюли отладочные платы, а не дллку для иде.

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





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

Создано: 19 февраля 2020 23:56
· Личное сообщение · #11

f13nd

Практика 80-х годов. Всё делается в симуляторе, на всех ходовых мк. Конечно есть чипы для которых нет IDE и часто даже андок.

-----
vx





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

Создано: 20 февраля 2020 00:02
· Личное сообщение · #12

difexacaw пишет:
Всё делается в симуляторе

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

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



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


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