Фреймвор для реверса GHIDRA

Тема в разделе "WASM.SOFTWARE", создана пользователем Rel, 7 янв 2019.

  1. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.242
    q2e74 нравится это.
  2. Rel

    Rel Well-Known Member

    Публикаций:
    2
    Регистрация:
    11 дек 2008
    Сообщения:
    5.242
  3. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.077
    это всё не от хорошей жиЗЪти :)
     
  4. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.954
  5. FoxB

    FoxB Member

    Публикаций:
    0
    Регистрация:
    10 июл 2003
    Сообщения:
    105
  6. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    988
    а как в этой гидре пошагово отладить процесс? и как приатачиться к сущетсвующему?
     
  7. HESH

    HESH Active Member

    Публикаций:
    2
    Регистрация:
    20 мар 2008
    Сообщения:
    143
    Ghidra обладает сходными возможностями с расширенной версией проприетарного пакета IDA Pro, но рассчитан исключительно на анализ кода и не содержит отладчик.

    Примечательно, спустя всего несколько минут после публикации инструментария, эксперты обнаружили уязвимость в реализации серверного компонента. Проблема заключается в том, что Ghidra открывает сетевой порт 18001 для удаленной отладки приложения по протоколу JDWP (Java Debug Wire Protocol). По умолчанию сетевые соединения принимались на всех доступных сетевых интерфейсах, а не на 127.0.0.1, что предоставляло возможность подключиться к Ghidra с других систем и выполнить любой код в контексте приложения.

    (Источник)
     
  8. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    988
    HESH, как можно анализировать без отладчика? О том, что будет открыт порт говориться прямым текстом, поэтому "эксперты обнаружили уязвимость" звучит очень смешно.
     
  9. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.954
    Скрипя зубами, но можно. А новость и правда смешная.
     
  10. q2e74

    q2e74 Active Member

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

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.954
    Я до этого видео успел процессорный модуль, несколько скриптов и плагин сделать :acute:
     
  12. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    988
    А чем гидра зацепила, что не лень было ее пробовать и шаманить?
     
  13. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.954
    Это убийца иды без кавычек. Штука настолько охрененная, что словами описать невозможно.
     
  14. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.077
    https://blog.because-security.com/t/ghidra-wiki/431
    пока до идушки недотяг, но любая мало-мальски приличная тулза лишней не станет :)
     
  15. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.954
    Я бы посоветовал посмотреть сначала \docs\GhidraAPI_javadoc.zip, потом docs\languages\, заглянуть например в содержимое Ghidra\Processors\ (не папки, а именно как это устроено разглядеть под микроскопом), дальше часов хотя бы 50 над самой гидрой просидеть, делая что-нибудь из этого всего (не говоря о тысячах часов над идой, которые тоже неплохо бы налетать перед этим). А вот уже потом может быть сложится объективное мнение, где недотяг, где натяг.
     
  16. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.077
    f13nd, приведи хотя бы короткий список превосходства гидры.
     
  17. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.954
    Процессорный модуль гидры выполнен на движке sleigh, специализированный движок для строительства дизасмов-декомпилеров. Процессорный модуль иды это классическая длл, не использующая никаких движков-фреймворков, хочешь дизасм - напиши его с нуля. В слейте есть специальный язык, на котором описывается логика инструкции. Сделал это для каждой инструкции - декомпиль готов. У иды декомпили навесные и за отдельную плату. И их вроде бы 4 всего. При дизасме с апи доступен этот p-код, его можно анализировать самому. У иды с апи доступны в специальной форме мнемоника и аргументы инструкции. Все, хватит. Хочешь анализатор - почему бы не написать его... с нуля например самому? Иногда доходит до смешного - я написал 3 "дизасма в дизасме" для иды, когда были нужны реальные поля формата инструкции. Вшивый плагин для гидры их блин показывает сразу. Сюда же можно добавить возможность существования нескольких адресных пространств (у иды одно). Количество классов/методов/интерфейсов в справочнике примерно в 2 раза больше.
     
    Последнее редактирование: 28 мар 2019
  18. UbIvItS

    UbIvItS Well-Known Member

    Публикаций:
    0
    Регистрация:
    5 янв 2007
    Сообщения:
    6.077
    f13nd,
    Ты вот можешь официально заявить, что больше к идушке ни ногой? :) + тут работает простая логика == в опенсорц сбрасываются недоделки в надёге хоть как-то их допилить до приличного уровня.
     
  19. f13nd

    f13nd Well-Known Member

    Публикаций:
    0
    Регистрация:
    22 июн 2009
    Сообщения:
    1.954
    Я сделал пока под 1 (но самый трудный из нужных) проц дизасм, нужны еще минимум 2. Пользоваться начал еще недоделанным, потому что блин оно правда лучше динамическую адресацию сворачивает, удивительно, да? Для недоделки. Ему неплохо бы еще плагин для анализа прототипа функции (там по сути 4 списка аргументов, а не один как у интела, поэтому стандартным шаблоном не описать), но есть какие-то траблы с переделкой скрипта в плагин. Может потому что на яве почти никогда не писал, но разберусь потом. Постепенно все что надо восполню и ярлык иды уберу с глаз долой. Оглядываясь на то, что и как приходилось для иды делать в разных ситуациях и прикидывая как бы это было сделано под гидру, как-то даже смешно становится.

    ЗЫ: даже покажу пример. Вот без этой хрени (а это самая-самая базовая и по уму еще улучшать и улучшать), ида совсем 2+2 складывать не может. У гидры это базовая возможность и работает прямо сразу, как инструкции псевдокодом опишешь.
    --- Сообщение объединено, 28 мар 2019 ---
    Посмотрел блог этого мужика, который идой 22 года пользуется и чьим авторитетом меня пытаются задавить, там 10 статей всего за 4 года. И simple x86 emulator это именно оно, та хрень, которую в иде приходится делать чтоб скручивать динамическую адресацию. За a couple of hours до него видимо не дошло, раз не упомянул о псевдокоде совсем.
     

    Вложения:

  20. q2e74

    q2e74 Active Member

    Публикаций:
    0
    Регистрация:
    18 окт 2018
    Сообщения:
    988
    а radare2 и к нему r2pipe? где класс задач под гидру, где под радар?