Все для Sony Ericsson, патчи, эльфы, моддинг, прошивка
  
Логин: Пароль: Запомнить: Привет гость! Зарегистрируйся или авторизируйся для получения доп. возможностей!
Разделы
PDA версия сайта
TrackIDentify
Новости
Статьи
Файлы
Патчи
Патчи A2
Патчи db2020
Эльфы
Исходники эльфов
Wiki
Форум
Опросы
Обратная связь
Развернуть/Свернуть
 
Развернуть/Свернуть

плагины ida : Патчестроение : Патчи : Форум : Для Sony Ericsson патчи эльфы моддинг прошивка
/  Список форумов
   /  Патчи
      /  Патчестроение
   /  плагины ida
На печать 
Правила 


den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3279
Репутация: 10763
Откуда: Чебоксары




 
  #1 [30.10.10, 04:35] плагины ida   

 
обновил по мелочи jdprean и решил выложить всё, что я публиковал из своих плагинов, в одном месте.

ida babe loader - загрузчик для mbn файлов db2000/2010/2012/2020/pnx5230. для a2 не подходит. с ним в своё время было много непоняток, народ всё какие-то шаманства повторял. при открытии файла не нужно выбирать тип процессора, вообще ничего не нужно, только убедиться, что в верхнем списке выбрано "SonyEricsson firmware file", и нажать OK.

ida cxc loader - такая же штука, что babe loader, но открывает cxc файлы от a2. за исключением типов поддерживаемых файлов, работает так же.

плагины-лоадеры кладутся в ida\loaders

find bl - простой плагин для поиска вызовов текущей функции (ищет bl/blx). ставите курсор на начало функции, вызываете плагин, ждёте окончания автоанализа, смотрите xref'ы.

jdprean - мой первый плагин для анализа арм-кода. разбирает код по нескольким захардкоденым сигнатурам. достаточно тупой, но позволяет автоанализатору ida разобрать довольно внушительную часть прошивки. я сам очень давно им не пользовался, вот, решил попробовать снова. многие считают, что плагин работает очень долго. на самом деле плагин работает относительно быстро (на моём ноутбуке phone_app.cxc от w705 обрабатывает чуть меньше двух минут), а вот автоанализатор ida может после этого очень долго думать. в принципе, автоанализатор не особо мешает работе, так что не обязательно ждать, пока он закончит.

sub/page finder - второй плагин для анализа кода. разбирает гораздо меньше, чем jdprean, но при этом даёт нормальные имена куче структур и функций. очень помогает при исследовании кода и при портировании. чтоб функции имели более понятные имена, рекомендуется перед плагином выполнить скрипт getevents_fromtarget (при наличии таргета в исходниках dyn_const для данной прошивки; см. ссылку ниже).

плагины кладутся в ida\plugins

всё плагины для x86.


до кучи ещё ссылки:
разбор прошивки - скрипты от mnemo, адаптация lost
getevents_fromtarget - скрипт от slawwan, добавляет в базу ida константы из исходников dynconst
скрипт для IDA - обзывание функций из библиотеки от slawwan



Прикрепленный к сообщению файл:

findbl.zip findbl.zip (64.37 kb; 219 hits) Скачать файл
ida_babeldr.zip ida_babeldr.zip (64.04 kb; 145 hits) Скачать файл
ida_cxcldr.zip ida_cxcldr.zip (69.61 kb; 158 hits) Скачать файл
jdprean.zip jdprean.zip (22.37 kb; 196 hits) Скачать файл
subpagefn.zip subpagefn.zip (102.13 kb; 220 hits) Скачать файл


promt is better than google translate
Спасибо сказали: willi_flow, Alex1992, MaxxxS, Happy, Zormax, Melodic_Death, D3mon, plembo, toha257, BigHercules, Alex_E, MAVER145, lisaus, E1kolyan, farid, andrewsolo, enoc, Neodzen, buhh83

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3279
Репутация: 10763
Откуда: Чебоксары




 
  #2 [10.12.10, 14:29] Re: плагины ida   

 
выложить, в общем-то, некуда, поэтому публикую здесь. простенький патч для модуля процессора ARM к IDA, который ставит двоеточия возле имён меток кода

Код:
ROM:00000000 label1:
ROM:00000000                 NOP
ROM:00000002                 NOP
ROM:00000002 ; ---------------------------------------------------------------------------
ROM:00000004 label2          DCD 0x12345678



Прикрепленный к сообщению файл:

idaarmw32patch.zip idaarmw32patch.zip (6.69 kb; 71 hits) Скачать файл


promt is better than google translate
Спасибо сказали: Therion, anarkes, Alex1992, CaH4e33, D3mon, farid, Ax, VovanLS, MAVER145, michel1907

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3279
Репутация: 10763
Откуда: Чебоксары




 
  #3 [03.02.11, 14:11] Re: плагины ida   

 
в ida 5.3 макрос MOVL заменили на MOV, чтоб не было путаницы с командой MOVLS (команды MOV в thumb дополняются битом "S"). можно было бы переименовать макрос movl, но мне больше нравится другое решение. я написал плагин, который отображает макрос по-старому.
надеюсь, другие макросы/команды он не трогает :D
ну и заодно плагин предотвращает перевод в команды последовательностей нулей.



Прикрепленный к сообщению файл:

armmovl.zip armmovl.zip (21.46 kb; 61 hits) Скачать файл


promt is better than google translate
Спасибо сказали: VovanLS, MNS81, MAVER145, agnalp, jonico, farid

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3279
Репутация: 10763
Откуда: Чебоксары




 
  #4 [14.08.11, 23:17] Re: плагины ida   

 
wraprenamer - плагин для переименования обёрток на лету.
к примеру, вызывается в каком-то месте функция
Код:
44F09640                 LDR     R0, [SP,#0x24+var_24]
44F09642                 BL      sub_45109760
44F09646                 CMP     R0, #1

а функция эта - обёртка для обозванной функции
Код:
45109760 sub_45109760:                           ; CODE XREF: sub_44F095BC+86p
45109760                 LDR     R3, =(BookObj_GetDisplayOrientation+1)
45109762                 BX      R3 ; BookObj_GetDisplayOrientation
45109762 ; End of function sub_45109760
45109762
45109764 off_45109764    DCD BookObj_GetDisplayOrientation+1 ; DATA XREF: sub_45109760r

так вот sub_45109760 будет автоматически переименована в j_BookObj_GetDisplayOrientation даже без перехода на неё
Код:
44F09640                 LDR     R0, [SP,#0x24+var_24]
44F09642                 BL      j_BookObj_GetDisplayOrientation
44F09646                 CMP     R0, #1



Добавлено 14.8.11 23:35

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


Добавлено 15.8.11 00:26

ну и ещё обёртка. есть ещё пара необратабываемых вариантов, но я не уверен, буду ли их добавлять:

ldr pc, =...

push {lr}
bl ...
pop {pc}



Прикрепленный к сообщению файл:

ida_wraprenamer.zip ida_wraprenamer.zip (65.62 kb; 84 hits) Скачать файл


promt is better than google translate
Спасибо сказали: blacklizard, toha257, GaS, KIBER-DEMON, MNS81, MAVER145, Se-MaG, E1kolyan, D3mon, Vov4ик, MaxxxS, pavelsh, -Sotik-, enoc, MiFa, farid, iksrman

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3279
Репутация: 10763
Откуда: Чебоксары




 
  #5 [02.09.11, 17:37] Re: плагины ida   

 
обновил wraprenamer:
- не обзывает обёртки для unk_*
- нормальное определение для адресов, если указатель лежит не сразу после thumb обёртки
- удаление имени обёртки при удалении имени фукнции




promt is better than google translate
Спасибо сказали: MiFa, Vov4ик, KIBER-DEMON, MNS81, farid, vetel, michel1907

den_po


Developer/Admin


Регистрация: 27.3.06
Сообщений: 3279
Репутация: 10763
Откуда: Чебоксары




 
  #6 [11.03.12, 00:53] Re: плагины ida   

 
обновил wraprenamer. теперь в конце имени обёртки добавляется не порядковый номер, а адрес. без этого плагин переименовывал не больше 100 обёрток на каждую функцию




promt is better than google translate
Спасибо сказали: MNS81, E1kolyan, MAVER145, Boysie, a6b6, KIBER-DEMON, D3mon, farid, Vov4ик, Legas2, MaxxxS, Neodzen, michel1907, Melodic_Death



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

Главная Новости Статьи Файлы Патчи Форум Опросы PDA
- Генерация страницы: 0.13 секунд | 12 Запросов | HTML: 42.93 КБ -