Русский / Russian English / Английский

Сейчас на форуме: (+3 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS ·

 eXeL@B —› Основной форум —› Использование IDA Pro (part 2)
. 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 18 . 19 . >>
Посл.ответ Сообщение


Ранг: 2011.1 (!!!!)
Статус: Модератор
retired

Создано: 27 марта 2017 11:54 New!
Цитата · Личное сообщение · #1

Обмен опытом использования и настройки интерактивного дизассемблера и отладчика IDA Pro.
Прошлый топик Использование IDA Pro

| Сообщение посчитали полезным: oxfemale, gent0o0


Ранг: 171.0 (ветеран)
Статус: Участник

Создано: 27 марта 2017 18:09 New!
Цитата · Личное сообщение · #2

mazaxaker пишет:
А на эмуляторе с правами рут никак не отключить?

На эмуляторе не пробовал - он тормозной, на реальном железе (ессно с рутом) - не срабатывает.

Ранг: 80.5 (постоянный)
Статус: Участник

Создано: 28 марта 2017 00:36 New!
Цитата · Личное сообщение · #3

Apokrif пишет:
он тормозной

Я ставил на генимотион девайс sony xperia 4.1.2, довольно быстро стартует и не тормозит. Заметил там сильно тормозят всякие нексусы, гуглы и чем выше андроид тем сильнее торомзить начинает.

Ранг: 33.8 (посетитель)
Статус: Участник

Создано: 4 апреля 2017 16:52 New!
Цитата · Личное сообщение · #4

Здраствуйте.

HexRays SDK использует кто?
интересует формат структуры mbl_array_t


Ранг: 1030.2 (!!!!)
Статус: Участник

Создано: 4 апреля 2017 16:54 New!
Цитата · Личное сообщение · #5

формат закрыт
там только форвард декларация типа

Ранг: 33.8 (посетитель)
Статус: Участник

Создано: 4 апреля 2017 18:53 New!
Цитата · Личное сообщение · #6

Понятно. Думал, мало ли )

Тогда как получить значение (ea_t), если ctree_visitor_t::visit_expr(cexpr_t *e)
e->op == cot_ref или cot_cast ?

в таком случае у нас имеет место быть var_ref_t v:
struct var_ref_t
{
mbl_array_t *mba; ///< pointer to the underlying micro array
int idx;
}

и что с этим делать?
сам плагин ведь берет где-то значения, в частности адрес


Ранг: 1030.2 (!!!!)
Статус: Участник

Создано: 4 апреля 2017 19:16 · Поправил: reversecode New!
Цитата · Личное сообщение · #7

гугл коде екслоера
--> Link <--
Code:
  1. ea_t idaapi type_builder_t::get_vftbl(cexpr_t *e) {
  2.         ea_t vftbl = BADADDR;
  3.  
  4.         if (e->is_expr()) {
  5.                 if ((e->op == cot_cast) && (e->!= NULL))
  6.                         e = e->x;
  7.  
  8.                 if ((e->op == cot_ref) && (e->!= NULL))
  9.                         e = e->x;
  10.  
  11.                 if (e->op == cot_obj) {
  12.                         vftbl = e->obj_ea;
  13.                 }
  14.         }
  15.  
  16.         return vftbl;
  17. }

Ранг: 511.2 (!)
Статус: Модератор

Создано: 4 апреля 2017 20:36 New!
Цитата · Личное сообщение · #8

https://www.hex-rays.com/products/decompiler/manual/sdk/classmbl__array__t.shtml#details

Ранг: 33.8 (посетитель)
Статус: Участник

Создано: 4 апреля 2017 21:24 · Поправил: awlost New!
Цитата · Личное сообщение · #9

sendersu сgасибо, видел все это уже
Ситуация похожа на lexer_t - тоже фиг вам opaque, а не описание.

В свое время, чтобы доработать лексер до распознавания шаблонных типов, пришлось реверсить и патчить
(а заодно и чудовищную UD)

reversecode, и это видел. Не работает этот код

Прошу прощения. Все работает. Fast LTCG - опасная вещь.
Полностью пересобрал - все кастуется ( cexpr_t = cexpr_t->x (ну или y/z)

офтоп:
но это никак не отменяет того факта, что формат микрокода закрыт.
Если посмотреть внутрь плагина hexrays.plw, то начиная с void *hexdsp_t(int code, ...);
там (на мой взгляд) треш и угар в плане обработчиков (ну 1 в 1 в лексером).
Отсюда вывод - не открывают формат не потому что коммерческая тайна и все такое, а просто стыдно чтоли такое показывать.


Ранг: 1030.2 (!!!!)
Статус: Участник

Создано: 4 апреля 2017 22:31 New!
Цитата · Личное сообщение · #10

что именно не работает ?
плагин по ссылке не работает ?

Добавлено спустя 15 часов 22 минуты
void *hexdsp_t(int code, ...);
что именно там треш и угар ? конкретно ?
микрокод закрыт потому
1) он там действительно постоянно меняется, а ильфак очень консервативен, если открывать то только то что на 100% останется таким как есть
2) как только откроют микрокод, рейсу хана, реверс сразу же будет на 100% done

Ранг: 80.5 (постоянный)
Статус: Участник

Создано: 12 апреля 2017 00:00 New!
Цитата · Личное сообщение · #11

reversecode, а как добавить в ида к dbgserver символы андроид либ, чтобы при отладке имена их функций показывались ?


Ранг: 1030.2 (!!!!)
Статус: Участник

Создано: 12 апреля 2017 10:08 New!
Цитата · Личное сообщение · #12

скриншот что вы там отлаживаете
виртуал функции или статик ?

Ранг: 40.0 (посетитель)
Статус: Участник

Создано: 12 апреля 2017 13:24 New!
Цитата · Личное сообщение · #13

Всем привет

Кто не будь пользуется или пользовался этим вот плагином для IDA https://www.youtube.com/watch?v=kNK48VfMVqg

Для какой версии IDA он подходит? Я видел что под видео написано
THUMB Decompiler plugin for IDA Pro 6.1

Но у меня на 61 нет его в списке плагинов а снизу вот что пишет https://cloud.mail.ru/public/HCQJ/JcuwyjDp7

Толи я не то скачал что надо может кто дать нормальный плагин? decomp.dll и armludde.plw из папки с плагином я кидаю сюда https://cloud.mail.ru/public/4bQk/ddwUYtoV4 как и обычно


Ранг: 1030.2 (!!!!)
Статус: Участник

Создано: 12 апреля 2017 13:39 New!
Цитата · Личное сообщение · #14

а зачем он нужен ? декомпилятор для АРМ и так есть в последней утекшей версии ИДА

| Сообщение посчитали полезным: sss123


Ранг: 40.0 (посетитель)
Статус: Участник

Создано: 12 апреля 2017 14:16 New!
Цитата · Личное сообщение · #15

reversecode
Да так просто хотел установить этот плагин что б был )))) Я его ранее ставил и он работал да я забыл просто как я его ставил и на какую версию ида

А еще вопросик можете подсказать плагины для ида для сравнения файлов кроме бин дифа
Бин дифф у меня почему то не ставится вот чего пишет https://cloud.mail.ru/public/9WqZ/5bV3AUcx4 у вас не было такого?

Про то что есть плагин бин дифф для ида я в курсе но хотелось бы узнать есть ли еще подобные плагины?


Ранг: 1030.2 (!!!!)
Статус: Участник

Создано: 12 апреля 2017 14:20 New!
Цитата · Личное сообщение · #16

цель установить какойто арм декомпилер что бы было ? странная цель
если бы дествительно он нужен был(декомпилятор) то быстро бы нашли самый свежый

диф плагинов ? вагон и маленькая тележка плагинов
гугл ими забит, пробовали искать ?
к примеру --> Link <--

Добавлено спустя 1 минуту
еще
--> Link <--

Ранг: 80.5 (постоянный)
Статус: Участник

Создано: 22 апреля 2017 02:33 New!
Цитата · Личное сообщение · #17

Ребята, а как в ида менять значения регистров далвика ? Хотел через дамп, к примеру, найти значение регистра v1, но как правильно адрес их определять, думал так (int)v1 в watch view, но выдает явно не то.
Еще можно как-то бряк на чтение поставить какой-нибудь переменной класса в далвике ?

Ранг: 80.5 (постоянный)
Статус: Участник

Создано: 25 апреля 2017 09:28 New!
Цитата · Личное сообщение · #18

И вот еще странный баг, если ставить массово бряки через меню function windows, то они ставятся, но оказываются отключенными после запуска проги все оранжевые. Если руками переставить, то начинают работать.
Как бы массово ставить их, чтобы не отключались при старте ? Оранжевый цвет их это ведь тоже отключено как и зеленый ?

Ранг: 57.9 (постоянный)
Статус: Участник

Создано: 26 апреля 2017 20:16 New!
Цитата · Личное сообщение · #19

Оранжевый значит "хотела поставить, но не шмогла". А почему - хз.

Ранг: 80.5 (постоянный)
Статус: Участник

Создано: 27 апреля 2017 02:20 New!
Цитата · Личное сообщение · #20

reverser, она почему-то ставит read-write бряки через меню списка функций, а если именно в коде ставлю бряк, то нормально на исполнение ставится. Почему так не пойму.


Ранг: 322.8 (мудрец)
Статус: Участник

Создано: 27 апреля 2017 09:09 New!
Цитата · Личное сообщение · #21

mazaxaker, ну скрипт напиши, чтоб ставились бряки именно в коде на каждой функе.

Ранг: 80.5 (постоянный)
Статус: Участник

Создано: 27 апреля 2017 15:28 New!
Цитата · Личное сообщение · #22

DenCoder, так и сделал, сгенерил idc скрипт средствами иды и поменял тип бряка автозаменой.
Но еще интересует как менять значения регистров при отладке далвика, я смотрю они не меняются. Еще почему-то в далфике дебаге нет опции перетащить выполнение на другую команду, типа как при отладке виндовых прог опция set eip.


Ранг: 322.8 (мудрец)
Статус: Участник

Создано: 27 апреля 2017 17:21 New!
Цитата · Личное сообщение · #23

mazaxaker пишет:
Но еще интересует как менять значения регистров при отладке далвика

пытались это понять для 6.8 - оно есть, но не работает

Ранг: 80.5 (постоянный)
Статус: Участник

Создано: 27 апреля 2017 17:42 New!
Цитата · Личное сообщение · #24

DenCoder пишет:
оно есть, но не работает

Я пробовал через watch view выяснить адрес регистра так (int)v1, но выдает число, которое больше чем адреса в hex дампе, думал по адресу в дампе править.


Ранг: 322.8 (мудрец)
Статус: Участник

Создано: 27 апреля 2017 18:01 · Поправил: DenCoder New!
Цитата · Личное сообщение · #25

А есть функции из idc. По описанию то самое, что надо для этого, но не работает.

Ранг: 80.5 (постоянный)
Статус: Участник

Создано: 27 апреля 2017 21:11 New!
Цитата · Личное сообщение · #26

DenCoder, я смотрю там тока получать данные, инструкций вида *set* не нашел.

Ранг: 101.8 (ветеран)
Статус: Участник

Создано: 28 апреля 2017 18:35 New!
Цитата · Личное сообщение · #27

При установке IDA 6.8 в win7 не читается плагин python.plw.
Ида пишет 'C:\Program Files\IDA 6.8\plugins\python.plw: can't load file'.
Установку делал по умолчанию, ничего в настройках не менял.
Внизу окна вместо строки Python стоит IDC.
В папке плагинов искомый python.plw есть - он установился с самого начала,
но не видится.
В winXP этот же пакет встаёт без всяких выкрутасов: строка Python имеется.
Может кто подскажет в этой связи?

| Сообщение посчитали полезным: Scor


Ранг: 23.7 (новичок)
Статус: Участник

Создано: 28 апреля 2017 19:58 New!
Цитата · Личное сообщение · #28

ksol
https://www.sendspace.com/file/6sa26f


Ранг: 322.8 (мудрец)
Статус: Участник

Создано: 29 апреля 2017 00:54 New!
Цитата · Личное сообщение · #29

ksol пишет:
При установке IDA 6.8 в win7 не читается плагин python.plw.

У меня на Win7 x64 всё поставилось нормально. Не в самой оси, значит, дело. Возможные причины - сборка/не сборка, компоненты

Ранг: 101.8 (ветеран)
Статус: Участник

Создано: 29 апреля 2017 15:06 New!
Цитата · Личное сообщение · #30

Переустановил - всё встало нормально. На пришедший вместе с Идой Python 2.7.6
устанавливается фреймворк keystone, а Ида спокойно принимает плагин keypatch.py.
Но это всё в win7. Хотел это же сделать в winXP, но ни в какую! Здесь keystone
не встаёт нормально в Питон.
. 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 18 . 19 . >>
 eXeL@B —› Основной форум —› Использование IDA Pro (part 2)

Видеокурс ВЗЛОМ