Урок - Открытие файла-прошивки IDA-ой : Патчестроение : Форум |
vodoo999: |
08.11.09, 01:01 |
Открытие файла прошивки программой-дизассемблером IDA - это первый шаг, необходимый для создания или портирования простых/сложных патчей для телефонов SonyEricsson. Прежде всего мы должны скачать IDA (The Interactive Disassembler) - подойдет версия 4.9 (бесплатная) или 5.х - платная! Первым делом мы конвертируем наш Main-файл прошивки (*.mbn) в формат *.raw с помощью этой программы - babe2raw. Просто перетащите *.mbn файл на babe2raw и программа сама создаст файл *.raw. Устанавливаем IDA, после чего мы можем продолжать: 1. Запускаем IDA Нажимаем на кнопку "Go" (Work on you own) 2. Далее в самой программе IDA жмем (вверху) File -> Open (Файл -> Открыть): Выбираем наш *.raw файл прошивки (тот файл, который только что конвертировали из *.mbn) 3. В графе Processor type (тип процессора) выбираем ARM Processors: ARM710a (процессор, который по умолчанию установлен на всех СЭ) и кликаем на кнопку Set (установить): Дальше кликаем Processor options (настройки процессора) и ставим галочку: "Disable pointer dereferencing" Снова кликаем OK и опять жмем OK.... 4. Здесь мы вводим базу и длину адреса прошивки: -> В "ROM Start Address" и "Loading Address" вы вводим нашу базу прошивке (0x44140000 для ВСЕХ пршивок db2020) -> В "ROM Size" и "Loading Size" - есть оригинальная величина с Шестнадцатеричным (Hex) -калькулятором добавляет к этому 100000 шестнадцатеричных, результат делает здесь, для db2020 - 0x01DC0001 Дальше жмем OK. Когда мы увидим окно-диалог "Generating list of strings" - жмем на Cancel. 5. В меню IDA идем в Options > General... и в графе Number of opcode bytes меняем 0 на 4 и кликаем OK 6. Определяем тип данных: В меню IDA идем в Options > Setup Data Types... и убираем галочки напротив: - Byte и - 2 Word 7. Чтобы изменить вид между ARM и THUMB нажимаем на клавиатуре сочетание клавиш ALT + G и меняем значение на 1, чтобы видеть в Thumb. Чтобы открывать и видеть код нажимаем C (начало функций в XXB5;XX любого байта) После чего идем в меню IDA, жмем File->Save (Фай -> Сохранить) и ждем, пока сохранится... После этого, когда мы хотим закрыть IDA - ставим галочки "Don't pack database" (не паковать датабазу) и "DON'T SAVE the database" (не сохранять датабазу) и кликаем OK. Совет: Только для пользователей платформы DB2020, вы можете использовать этот плагин от den_po: ida_babeldr.rar - Теперь не нужно конвертировать прошивку в raw, не нужно выбирать вручную тип процессора и задавать адреса. © den_po В зависимости от версии вашей IDA (4.х или 5.x) поместите файл babeldr.ldw в папку IDA/loaders перед запуском IDA, и смело переходите к шагу 4. Важно: Данная операция должна быть проделана со всеми файлами main-прошивки, которые вы будете использовать, в независимости от того - оригинальный ли файл FW или измененный. Автор инструкции: © Shadow Player Перевод на русский: vodoo999 и James_LaBrie Оригинал инструкции: www.se-developers.ne Примечание: После этого идем в меню IDA, жмем File->Save и ждем... После этого, когда вы хотите закрыть IDA - ставим галочки "Don't pack database" и "DON'T SAVE the database" и жмем OK. лучше сохранять изменения - т.е. не ставить галочки "Don't pack database" и "DON'T SAVE the database", а просто кликать Ок. Этим самым мы сохраним изменения в датабазе, созданной IDA. Пароль на архивы: Для просмотра содержания пройдите регистрацию [ Редактировано vodoo999 в 9.11.09 23:12 ] Прикрепленный к сообщению файл: ida_babeldr.zip (38.87 kb; 133 hits) Скачать файл babe2raw.zip (3.86 kb; 73 hits) Скачать файл Urok_3.zip (555.26 kb; 95 hits) Скачать файл |
den_po: |
08.11.09, 01:18 |
ща буду брюзжать vodoo999 пишет: Совет: Только для пользователей платформы DB2020, вы можете использовать этот плагин от den_po: кто придумал бред про "только для дб2020"? в целом ничего нового, на форуме всё в той или иной мере обсуждалось не раз. плюс описана куча лишних и ненужных на мой взгляд действий. что делаю я: - для raw указываю тип процессора и адрес загрузки - для mbn не указываю вообще ничего, тупо жму enter в первом диалоге |
Joker XT: |
08.11.09, 09:07 |
ну америкосы всё у меня из ФАКа скопировали и выдали за своё... допустим теже галочки, что снимают с байт и ворд, я их убирал для удобства |
Yoti: |
08.11.09, 15:38 |
Перевод крайне надо причесать. Неуместные речевые повторы, английские куски текста и общая сбивчивасть слова - не гуд. |
Joker XT: |
08.11.09, 17:56 |
а лучше открыть что я писал и скопировать тоже самое будет) кроме примечаний |
UltraShot: |
08.11.09, 18:38 |
кстати да, там же размер сам определяется |
DuXeN0N: |
08.11.09, 20:22 |
vodoo999, галочки с 1 Byte, 2 Word снимать не обязательно |
den_po: |
08.11.09, 20:27 |
DuXeN0N, я уже писал, что вообще дофига чего делать необязательно http://supertrubka.org/newbb_plus/viewtopic.php?topic_id=4456&post_id=150312#150312 |
awg: |
09.11.09, 12:28 |
нечего его шлифовать, по мне тему надо бы вообще снести |
vodoo999: |
09.11.09, 23:42 |
awg писал: нечего его шлифовать, по мне тему надо бы вообще снести снести всегда успеем. Попробую на русский перевести нормально - без англицизмов и повторов. [ Редактировано vodoo999 в 10.11.09 01:06 ] |
URL этой темы: https://mobilefree.justdanpo.ru/newbb_plus/viewtopic.php?topic_id=4456 © 2005-2018 supertrubka.org |