Форум Херсона. Форум Херсонской молодежи, флейм, фотографии Херсона, политика в Херсоне, сетевой форум, сети Херсона


Приветствуем на Форум Херсона. Форум Херсонской молодежи..

На данный момент Вы находитесь на форуме как Гость и имеете очень ограниченные возможности и права. Что бы писать или отвечать в темах, загружать картинки, файлы на форуме Вам нужно зарегистрироваться, что совершенно бесплатно. Регистрация очень быстрая, не откладывайте эту процедуру!

Если возникнут проблемы с регистрацией напишите нам.

Галерея форума Блоги пользователей Список банов
Вернуться   Форум Херсона. Форум Херсонской молодежи. > > >
Регистрация СправкаСтатистика Пользователи Календарь Сообщения за день

Тема: диасемблировать HEX файл Ответить в теме
Ваше имя пользователя: Для входа нажмите здесь
Проверка вопроса системы антиспама "NoSpam!"
Краще місто в Україні?
Image Verification
Пожалуйста, введите шесть букв и/или цифр, которые изображены на картинке.

Заголовок:
  
Сообщение:
Иконки для сообщения
Вы можете выбрать иконку, характеризующую сообщение:
 

Дополнительные опции
Другое

Просмотр темы (Новые вначале)
04.10.2011 14:27
D-link спасибо все работает закройте тему!
02.10.2011 21:54
intel64 кстати вот по теме немножко инфы. для того чтобы дизассемблировать raw прошивку или hex формат, надо дизасму обязалово скормить стартовый адрес. Инфа о нем не хранится в файле, а как конкретный контроллер знает откуда стартовать, нужно читать даташит на него.
02.10.2011 21:52
VoVaN
Цитата:
Сообщение от intel64 Посмотреть сообщение
аски код и есть хекс код, ты видимо хотел сказать символами
Цитата:
Сообщение от intel64 Посмотреть сообщение
я предпологал что речь пойдет о текстовом процессоре в хекс редакторе
1:1
02.10.2011 21:47
intel64
Цитата:
Сообщение от VoVaN Посмотреть сообщение
хекс-кодами, но и асками
аски код и есть хекс код, ты видимо хотел сказать символами. я предпологал что речь пойдет о текстовом процессоре в хекс редакторе. ладно ты реально крутой тип, сделал меня.
02.10.2011 21:28
VoVaN
Цитата:
Сообщение от intel64 Посмотреть сообщение
кекс редактор вам показывает аски коды символов этих реальных значений
Вложение 167826

Цитата:
Сообщение от intel64 Посмотреть сообщение
вы что, для того чтоб изменить к примеру 0E на 0F в блокноте, будете в hex редакторе аски коды этих 2-х символов править? ))
Конечно!
Я не знаю, когда вы в последний раз работали с хекс-редакторами, но даже досовский Hackers viewer позволял вводить данные не только хекс-кодами, но и асками.

ПС Я конечно допускаю что кому-то это может показаться неудобным из-за некоторой избыточности информации, но меня не напрягает. Тем более на работе юзаю немножко более другой кекс-редактор, там с плейн-текстом работать удобнее, чем в вин-кексе.

ППС Обожаю, когда мне начинают доказывать, что то что я делаю - невозможно в принципе, а то что у меня работает - не должно работать по определению.
02.10.2011 20:10
intel64 VoVaN, гг, блокнот аски коды транслирует в реальные значения, которые будут прошиваться а кекс редактор вам показывает аски коды символов этих реальных значений. вы что, для того чтоб изменить к примеру 0E на 0F в блокноте, будете в hex редакторе аски коды этих 2-х символов править? ))
02.10.2011 19:54
VoVaN
Цитата:
Сообщение от intel64 Посмотреть сообщение
в нех редакторе будете аски коды править?
Почему нет? Нормальные кекс-редакторы позволяют это делать вполне комфортно. В отличии от блохнота, в котором можно не увидеть где-то лишний пробел или какой-то битый непечатаемый символ )
02.10.2011 12:11
intel64
Цитата:
Сообщение от VoVaN Посмотреть сообщение
Балерун? )
в нех редакторе будете аски коды править? извращенец )

Цитата:
Сообщение от D-link Посмотреть сообщение
когда еще учился мы программировали контроллеры писали код на си и оно нам компилировало hex файл который мы и зашивали в контроллер.
Как уже написали выше декомпилировать точно неполучится, а дизасемблировать тут вопрос. дело в том, что например в х86 архитектуре машинная инструкция состоит из опционального кода (опкода) - это команда, и операнда(ов) - это данные, которыми команда оперирует. есть такое понятие как непосредственный операнд, это данные которые находятся внутри инструкции, тоесть команды и данные идут в перемешку. В опкоде хранится инфа о размере этих данных, поэтому дизассемблер и сам процессор точно знает где будет следующая инструкция и процессор даже меняет адрес в регистре указателе инструкций на следующую прежде, чем начнет выполнять текущую. В случае же с нех форматом, смущает тип записи "данные", и инфа эта после прошивки теряется. как контроллер знает где код а где дата, видимо в перемешку не идут и хранятся в разных областях? если так, тогда корректный ассемблерный листинг получить несложно. всё предположение, я не сильно в околоконтроллерах разбераюсь, вот почитать хочу.
02.10.2011 10:55
D-link эээ. тему создавал спехом так что разъясню.
когда еще учился мы программировали контроллеры писали код на си и оно нам компилировало hex файл который мы и зашивали в контроллер.

Собственно вопрос! Возможно ли обратный процесс!

Потому как есть устройство1 и прошивка под него. есть устройство2 по железу идентично устройству1 но прошивка устройства2 не подходит устройству1. на форумах пишут нужно чуть чуть подрихтовать прошивку устройства2 и она становиться легко и просто на железо устройства1

в принципе мы уже прошивку отредактировали , осталось в понедельник затестить))))
02.10.2011 00:33
VoVaN
Цитата:
Сообщение от Debian Посмотреть сообщение
тут вапрос изначально неправильно поставлен
Тут вопрос поставлен никак )

Цитата:
Сообщение от Debian Посмотреть сообщение
CRC обычно хранят не в прошивке, а пересчитывают перед самой процедурой прошивки...
Ээ, а где ж оно хранится О_о

У ARMов CORTEXов, например, после табицы векторов есть поле, кажись 4 байта, которое после сборки хекса/бина/эльфа забито нулями, но прошиватор тудой (как ты и написал) генерит ЦРЦ и шьет с ним. Ежели потом вычитывать - там не нули, а ЦРЦ, которую, в принципе, можно относительно невозбранно поменять ручками. Вот как бэ как-то так.
01.10.2011 22:16
Debian CRC обычно хранят не в прошивке, а пересчитывают перед самой процедурой прошивки...

тут вапрос изначально неправильно поставлен...
зная нужное значение CRC, надо в HEX редакторе изменить файл так, чтобы
1. он не потерял работоспособность
2. сходилась сумма

профит!
01.10.2011 21:56
VoVaN Debian, нуачо, чтобы поменять кусочек - всю дизассемблить не надо (кстати нужно различать "дизассемблировать" и "декомпилировать", это две большие разницы). Сам неединожды практиковал когда всё было совсем плохо, один раз даже с помощью загрузочного вируса через ModBUS-сеть. Так что "гланды через анус" - это еще не так уж и страшно ))
01.10.2011 20:46
Debian На одном форуме по программизму МК и прочей чухни как-то подымался этот вопрос

Чувак обещал подарить миллион баксов тому, кто из дубового стола обратно сделает ДУБ и пол кило железной руды (:
01.10.2011 20:23
VoVaN А как насчет того чтобы немножко конкретизировать вопрос?!
Какая архитектура? какая контрольная сумма? Какой формат? Для чего менять?
Если речь идет об текстовом intel-hex - там каждая строка заканчивается своей однобайтовой контрольной суммой (афаир, однобайтовое число, которое дополняет до какой-то константы остаток от деления на 256 суммы всех значащих байтов строки). Если контрольная сумма прошивки под ядро ARM - там кажись она из таблицы векторов прерываний считается. Уточняй вопщем, а то нихрена не ясно.

Цитата:
Сообщение от intel64 Посмотреть сообщение
нех редактор имеет такое же отношение к формату нех как я к балету.
Балерун? )
01.10.2011 08:36
intel64 нех редактор имеет такое же отношение к формату нех как я к балету.
01.10.2011 00:30
love_is берёш нех редактор и меняеш) в чём проблема) так переделывал некоторые данные лет 5 назад когда баловался ))))
30.09.2011 21:36
intel64 несовсем ясно, что имеется ввиду под дизассемблировать HEX файл. intel HEX, это текстовый файл, так написано в википедии, и насколько я понял после прошивки остаются только двоичные данные или имелось ввиду дизасмить бинарь который проверяет себя на контрольную сумму? А что за прошивка и что меняете если не секрет?

Почесав затылок, юзер дописал через 15 минут
а не, почитал, дизасмят двоичные в аски виде в мнемокоды. а вот на википедии той же
Цитата:

Запись конца файла

Файлы формата Intel HEX должны иметь запись Конца Файла (EOF). Пример записи:
:00000001FF где:
  • 00 Количество байт записи
  • 0000 Поле игнорируется. Не имеет значения, что там записано, но обычно всегда равно 0
  • 01 Тип записи 01 (Конец Файла)
  • FF Контрольная сумма, вычисленная как 01h + NOT(00h + 00h + 00h + 01h).
не то?
30.09.2011 10:30
D-link
диасемблировать HEX файл

Нужно в прошивке найти контрольную сумму и изменить

Ваши права в разделе
Вы не можете создавать темы
Вы можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.

Время на сервере: 11:51.

Регистрация Справка Пользователи Календарь Сообщения за день

vBulletin 3, Copyright © 2000-2024, Jelsoft Enterprises Ltd.
Русский перевод: zCarot, Vovan & Co