Процессорный модуль к IDA (неподдерживаемая архитектура)

Тема в разделе "WASM.RESEARCH", создана пользователем ormoulu, 21 ноя 2022.

  1. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Регистрация:
    24 янв 2011
    Сообщения:
    1.208
    Кто-нибудь в последнее время делал модуль к IDA? Processor module к архитектуре которой нет в официальном комплекте имеется ввиду.
    Интересует насколько это заморочно, ну и какие-то может хорошие мануалы есть?
     
  2. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.995
    Не удалось отговорить человека от такого шальняка. Можешь почитать как он протоколировал свои впечатления от процесса, примеры выкладывал.
     
  3. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Регистрация:
    24 янв 2011
    Сообщения:
    1.208
    А декомпиль при наличии модуля начинает работать автоматом или это вообще отдельная функциональность?
     
  4. alex_dz

    alex_dz Active Member

    Публикаций:
    0
    Регистрация:
    26 июл 2006
    Сообщения:
    449
    да, сразу по кнупке F5 :)

    если серьезно - пока Ильфак создал 9 декомпилей https://www.hex-rays.com/decompiler/
    ценник можете сами офигеть https://www.hex-rays.com/cgi-bin/quote.cgi/products

    есть в поставке ида папка hexrays_sdk с 20-ю плагинами, возможно после ознакомления будут свежие идеи...
     
  5. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Регистрация:
    24 янв 2011
    Сообщения:
    1.208
    Кстати а у гхидры как обстоят дела с декомпиляцией самодобавленных архитектур?
     
  6. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.995
    Если опишешь псевдокодом каждую инструкцию, заработает автоматом.
    Есть тонкие механики движка. Сделаешь хорошо - будет нормально декомпилить.
     
  7. ormoulu

    ormoulu Well-Known Member

    Публикаций:
    0
    Регистрация:
    24 янв 2011
    Сообщения:
    1.208
    Это про гхидру, или про иду, или про обе?

    Да мне хоть бы и ненормально, уже успех.
     
  8. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.995
    Конечно гидра.
     
  9. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    999
    f13nd, как в гидре дизасмить, если по коду много переходов между режимами (реальный, протектед и т.д.) и смена из кода размеров секций ? Есть что-то, или скрипт сэйв скрипт сейв и по кругу ?
     
  10. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.995
    Дизасмить - легко. Правки на смены режимов и прочие проявления динамики целиком на плечах пользователя.
     
  11. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    999
    КАК? клавиши "D" и "С" понимаю, не понимаю как на разные куски в одном листиге основного окна дизасма пометить где 16 а где 64. Там же на всё окно сразу определяется архитектура при открытии. Или я не прав?
     
  12. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.995
    Ладер может определять по формату файла, оно как бы вообще чисто для нубовудобства и необязательно. Вообще это должно настраиваться контекстными (воображаемыми) регистрами, типа addrsize или bit64 в x86-модуле гидры (устанавливаешь для области их значение через set register value и дизасм понимает в каком режиме этот код должен исполняться). В иде такое иногда реализуют (типа vle-набора команд в PPC, устанавливается через менюшку alt-g), но не в каждом модуле.
     
    q2e74 нравится это.
  13. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    999
    f13nd, да, через флаги регистра я чет не подумал, надо будет попробовать. Спасибо!