Приветствуем на Форум Херсона. Форум Херсонской молодежи.. На данный момент Вы находитесь на форуме как Гость и имеете очень ограниченные возможности и права. Что бы писать или отвечать в темах, загружать картинки, файлы на форуме Вам нужно зарегистрироваться, что совершенно бесплатно. Регистрация очень быстрая, не откладывайте эту процедуру! Если возникнут проблемы с регистрацией напишите нам. |
|
|
Опции темы |
30.09.2011, 10:30 | #1 (Ссылка на пост) | ||||||||
Свой В Доску
Пол:
Благодарил(а): 445
Благодарили 556 раз в 232 постах
Галерея:
0
Вес репутации: 19
|
диасемблировать HEX файл
Нужно в прошивке найти контрольную сумму и изменить
|
||||||||
|
30.09.2011, 21:36 | #2 (Ссылка на пост) | |||||||||
Свой В Доску
Пол:
Благодарил(а): 3,972
Благодарили 618 раз в 279 постах
Галерея:
0
Вес репутации: 19
|
несовсем ясно, что имеется ввиду под дизассемблировать HEX файл. intel HEX, это текстовый файл, так написано в википедии, и насколько я понял после прошивки остаются только двоичные данные или имелось ввиду дизасмить бинарь который проверяет себя на контрольную сумму? А что за прошивка и что меняете если не секрет?
Почесав затылок, юзер дописал через 15 минут а не, почитал, дизасмят двоичные в аски виде в мнемокоды. а вот на википедии той же Цитата:
|
|||||||||
|
01.10.2011, 00:30 | #3 (Ссылка на пост) | ||||||||
Щас сменю себе статус
Пол:
Благодарил(а): 227
Благодарили 420 раз в 278 постах
Галерея:
0
Вес репутации: 22
|
берёш нех редактор и меняеш) в чём проблема) так переделывал некоторые данные лет 5 назад когда баловался ))))
|
||||||||
|
01.10.2011, 08:36 | #4 (Ссылка на пост) | ||||||||
Свой В Доску
Пол:
Благодарил(а): 3,972
Благодарили 618 раз в 279 постах
Галерея:
0
Вес репутации: 19
|
нех редактор имеет такое же отношение к формату нех как я к балету.
|
||||||||
|
01.10.2011, 20:23 | #5 (Ссылка на пост) | ||||||||
Si vis pacem, para bellum
Пол:
Адрес: Херсон
Благодарил(а): 9,965
Благодарили 31,504 раз в 8,875 постах
Галерея:
0
Вес репутации: 345
|
А как насчет того чтобы немножко конкретизировать вопрос?!
Какая архитектура? какая контрольная сумма? Какой формат? Для чего менять? Если речь идет об текстовом intel-hex - там каждая строка заканчивается своей однобайтовой контрольной суммой (афаир, однобайтовое число, которое дополняет до какой-то константы остаток от деления на 256 суммы всех значащих байтов строки). Если контрольная сумма прошивки под ядро ARM - там кажись она из таблицы векторов прерываний считается. Уточняй вопщем, а то нихрена не ясно. Балерун? )
__________________
У світі багато брудного й заразного, Але той хто хоче - лишається чистим. |
||||||||
|
01.10.2011, 20:46 | #6 (Ссылка на пост) |
Извините, я на тракторе!
Пол:
|
На одном форуме по программизму МК и прочей чухни как-то подымался этот вопрос
Чувак обещал подарить миллион баксов тому, кто из дубового стола обратно сделает ДУБ и пол кило железной руды (:
__________________
Какая разница из какого места растут руки, если они золотые. |
|
01.10.2011, 21:56 | #7 (Ссылка на пост) | ||||||||
Si vis pacem, para bellum
Пол:
Адрес: Херсон
Благодарил(а): 9,965
Благодарили 31,504 раз в 8,875 постах
Галерея:
0
Вес репутации: 345
|
Debian, нуачо, чтобы поменять кусочек - всю дизассемблить не надо (кстати нужно различать "дизассемблировать" и "декомпилировать", это две большие разницы). Сам неединожды практиковал когда всё было совсем плохо, один раз даже с помощью загрузочного вируса через ModBUS-сеть. Так что "гланды через анус" - это еще не так уж и страшно ))
__________________
У світі багато брудного й заразного, Але той хто хоче - лишається чистим. |
||||||||
|
01.10.2011, 22:16 | #8 (Ссылка на пост) |
Извините, я на тракторе!
Пол:
|
CRC обычно хранят не в прошивке, а пересчитывают перед самой процедурой прошивки...
тут вапрос изначально неправильно поставлен... зная нужное значение CRC, надо в HEX редакторе изменить файл так, чтобы 1. он не потерял работоспособность 2. сходилась сумма профит!
__________________
Какая разница из какого места растут руки, если они золотые. |
|
02.10.2011, 00:33 | #9 (Ссылка на пост) | |||||||||
Si vis pacem, para bellum
Пол:
Адрес: Херсон
Благодарил(а): 9,965
Благодарили 31,504 раз в 8,875 постах
Галерея:
0
Вес репутации: 345
|
Тут вопрос поставлен никак )
Цитата:
У ARMов CORTEXов, например, после табицы векторов есть поле, кажись 4 байта, которое после сборки хекса/бина/эльфа забито нулями, но прошиватор тудой (как ты и написал) генерит ЦРЦ и шьет с ним. Ежели потом вычитывать - там не нули, а ЦРЦ, которую, в принципе, можно относительно невозбранно поменять ручками. Вот как бэ как-то так.
__________________
У світі багато брудного й заразного, Але той хто хоче - лишається чистим. Последний раз редактировалось VoVaN, 02.10.2011 в 00:41. |
|||||||||
|
02.10.2011, 10:55 | #10 (Ссылка на пост) | ||||||||
Свой В Доску
Пол:
Благодарил(а): 445
Благодарили 556 раз в 232 постах
Галерея:
0
Вес репутации: 19
|
эээ. тему создавал спехом так что разъясню.
когда еще учился мы программировали контроллеры писали код на си и оно нам компилировало hex файл который мы и зашивали в контроллер. Собственно вопрос! Возможно ли обратный процесс! Потому как есть устройство1 и прошивка под него. есть устройство2 по железу идентично устройству1 но прошивка устройства2 не подходит устройству1. на форумах пишут нужно чуть чуть подрихтовать прошивку устройства2 и она становиться легко и просто на железо устройства1 в принципе мы уже прошивку отредактировали , осталось в понедельник затестить)))) |
||||||||
|
02.10.2011, 12:11 | #11 (Ссылка на пост) | ||||||||
Свой В Доску
Пол:
Благодарил(а): 3,972
Благодарили 618 раз в 279 постах
Галерея:
0
Вес репутации: 19
|
в нех редакторе будете аски коды править? извращенец )
Как уже написали выше декомпилировать точно неполучится, а дизасемблировать тут вопрос. дело в том, что например в х86 архитектуре машинная инструкция состоит из опционального кода (опкода) - это команда, и операнда(ов) - это данные, которыми команда оперирует. есть такое понятие как непосредственный операнд, это данные которые находятся внутри инструкции, тоесть команды и данные идут в перемешку. В опкоде хранится инфа о размере этих данных, поэтому дизассемблер и сам процессор точно знает где будет следующая инструкция и процессор даже меняет адрес в регистре указателе инструкций на следующую прежде, чем начнет выполнять текущую. В случае же с нех форматом, смущает тип записи "данные", и инфа эта после прошивки теряется. как контроллер знает где код а где дата, видимо в перемешку не идут и хранятся в разных областях? если так, тогда корректный ассемблерный листинг получить несложно. всё предположение, я не сильно в околоконтроллерах разбераюсь, вот почитать хочу. |
||||||||
|
Сказали Спасибо пользователю intel64 за этот пост: | D-link (02.10.2011) |
02.10.2011, 19:54 | #12 (Ссылка на пост) | ||||||||
Si vis pacem, para bellum
Пол:
Адрес: Херсон
Благодарил(а): 9,965
Благодарили 31,504 раз в 8,875 постах
Галерея:
0
Вес репутации: 345
|
Почему нет? Нормальные кекс-редакторы позволяют это делать вполне комфортно. В отличии от блохнота, в котором можно не увидеть где-то лишний пробел или какой-то битый непечатаемый символ )
__________________
У світі багато брудного й заразного, Але той хто хоче - лишається чистим. |
||||||||
|
02.10.2011, 20:10 | #13 (Ссылка на пост) | ||||||||
Свой В Доску
Пол:
Благодарил(а): 3,972
Благодарили 618 раз в 279 постах
Галерея:
0
Вес репутации: 19
|
VoVaN, гг, блокнот аски коды транслирует в реальные значения, которые будут прошиваться а кекс редактор вам показывает аски коды символов этих реальных значений. вы что, для того чтоб изменить к примеру 0E на 0F в блокноте, будете в hex редакторе аски коды этих 2-х символов править? ))
|
||||||||
|
02.10.2011, 21:28 | #14 (Ссылка на пост) | |||||||||
Si vis pacem, para bellum
Пол:
Адрес: Херсон
Благодарил(а): 9,965
Благодарили 31,504 раз в 8,875 постах
Галерея:
0
Вес репутации: 345
|
Цитата:
Я не знаю, когда вы в последний раз работали с хекс-редакторами, но даже досовский Hackers viewer позволял вводить данные не только хекс-кодами, но и асками. ПС Я конечно допускаю что кому-то это может показаться неудобным из-за некоторой избыточности информации, но меня не напрягает. Тем более на работе юзаю немножко более другой кекс-редактор, там с плейн-текстом работать удобнее, чем в вин-кексе. ППС Обожаю, когда мне начинают доказывать, что то что я делаю - невозможно в принципе, а то что у меня работает - не должно работать по определению.
__________________
У світі багато брудного й заразного, Але той хто хоче - лишається чистим. |
|||||||||
|
02.10.2011, 21:47 | #15 (Ссылка на пост) | ||||||||
Свой В Доску
Пол:
Благодарил(а): 3,972
Благодарили 618 раз в 279 постах
Галерея:
0
Вес репутации: 19
|
|||||||||
|
02.10.2011, 21:52 | #16 (Ссылка на пост) | ||||||||
Si vis pacem, para bellum
Пол:
Адрес: Херсон
Благодарил(а): 9,965
Благодарили 31,504 раз в 8,875 постах
Галерея:
0
Вес репутации: 345
|
1:1
__________________
У світі багато брудного й заразного, Але той хто хоче - лишається чистим. |
||||||||
|
02.10.2011, 21:54 | #17 (Ссылка на пост) | ||||||||
Свой В Доску
Пол:
Благодарил(а): 3,972
Благодарили 618 раз в 279 постах
Галерея:
0
Вес репутации: 19
|
кстати вот по теме немножко инфы. для того чтобы дизассемблировать raw прошивку или hex формат, надо дизасму обязалово скормить стартовый адрес. Инфа о нем не хранится в файле, а как конкретный контроллер знает откуда стартовать, нужно читать даташит на него.
|
||||||||
|
04.10.2011, 14:27 | #18 (Ссылка на пост) | ||||||||
Свой В Доску
Пол:
Благодарил(а): 445
Благодарили 556 раз в 232 постах
Галерея:
0
Вес репутации: 19
|
спасибо все работает закройте тему!
|
||||||||
|
Здесь присутствуют: 1 (пользователей - 0 , гостей - 1) | |
Опции темы | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Файл запуска San Andreas | Metal Invader | Игры | 0 | 01.04.2009 16:05 |
Подскажите что это за файл такой | Rammf | Операционные системы | 6 | 25.10.2007 12:18 |
Файл подкачки: что, где и как? | Eclipse | Убей в себе ламера | 5 | 16.05.2007 22:21 |
Как перекодировать видео фаил??? | beaves | Програмное обеспечение | 10 | 04.02.2006 22:00 |