The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

АНБ опубликовало Ghidra, инструментарий для обратного инжиниринга

06.03.2019 09:08

Агентство национальной безопасности США во время проведения конференции RSA объявило об открытии доступа к инструментарию для проведения обратного инжиниринга Ghidra, который включает интерактивный дизассемблер с поддержкой декомпиляции в код на языке Си и предоставляет мощные средства для анализа исполняемых файлов. Код написан на языке Java и и в ближайшее время будет открыт под свободной лицензией Apache 2.0 (уже началось размещение кода на GitHub). Продукт доступен для загрузки с сайта ghidra-sre.org (сайт недоступен из российских подсетей).

Проект развивается на протяжении почти 20 лет и активно применяется спецслужбами США для выявления закладок, анализа вредоносного кода, изучения различных исполняемых файлов и разбора скпомпилированного кода. По своим возможностям продукт сопоставим с расширенной версии проприетарного пакета IDA Pro, но рассчитан исключительно на анализ кода и не включает в себя отладчик. С другой стороны, в Ghidra имеется поддержка декомпиляции в псевдокод, напоминающий язык Си (в IDA данная возможность доступна через сторонние плагины), а также более мощные средства для совместного анализа исполняемый файлов.

Основные особенности:

  • Поддержка различных наборов процессорных инструкций и форматов исполняемых файлов;
  • Поддержка анализа исполняемых файлов для платформ Linux, Windows и macOS;
  • В состав входят дизассемблер, ассемблер, декомпилятор, генератор графа хода выполнения программы, модуль для выполнения скриптов и большой набор вспомогательных инструментов;
  • Возможность выполнения в интерактивном и автоматическом режимах;
  • Поддержка плагинов с реализацией новых компонентов;
  • Поддержка автоматизации действий и расширения существующей функциональности через подключения скриптов на языках Java и Python;
  • Наличие средств для совместной работы групп исследователей и координации работы при обратном инжиниринге очень крупных проектов.

Интересно, что через несколько часов после публикации Ghidra в пакете нашли уязвимость в реализации отладочного режима (отключен по умолчанию), в котором открывается сетевой порт 18001 для удалённой отладки приложения по протоколу JDWP (Java Debug Wire Protocol). По умолчанию сетевые соединения принимались на всех доступных сетевых интерфейсах, а не на 127.0.0.1, что позволяло подключиться к Ghidra с других систем и выполнить любой код в контексте приложения. Например, можно подключиться отладчиком, прервать выполнение через установку точки останова и подставить для дальнейшего исполнения свой код при помощи команды "print new", например, "print new java.lang.Runtime().exec('/bin/mkdir /tmp/dir')".

Дополнительно можно отметить публикацию почти полностью переработанного выпуска открытого интерактивного дизассемблера REDasm 2.0. Программа отличается расширяемой архитектурой, позволяющей подключать обработчики дополнительных наборов инструкций и форматов файлов в форме модулей. Код проекта написан на языке С++ (интерфейс на базе Qt) и распространяется под лицензией GPLv3. Поддерживается работа в Windows и Linux.

В базовой поставке поддерживаются форматы PE, ELF, DEX (Android Dalvik), форматы прошивок Sony Playstation, XBox, GameBoy и Nintendo64. Из наборов инструкций поддерживаются x86, x86_64, MIPS, ARMv7, Dalvik и CHIP-8. Из возможностей можно отметить поддержку интерактивного просмотра в стиле IDA, анализ многопоточных приложений, построение наглядного графа хода исполнения, движок обработки цифровых подписей (работа с файлами SDB) и средства для ведения проекта.



  1. Главная ссылка к новости (https://www.nsa.gov/News-Featu...)
  2. OpenNews: АНБ планирует открыть код инструментария для обратного инжиниринга
  3. OpenNews: Проект biew объявил о переименовании в beye
  4. OpenNews: Новая версия фреймворка для обратного инжиниринга - radare2 0.9.6
  5. OpenNews: Выпуск платформы динамической трассировки приложений Frida и отладчика CryptoShark
  6. OpenNews: Компания Avast открыла исходные тексты декомпилятора машинного кода
Лицензия: CC-BY
Тип: Программы
Ключевые слова: debug, nsa, ghidra, disassembler, redasm
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Раскрыть все сообщения | RSS
 
  • 1.2, Аноним (2), 10:10, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]
  • –11 +/
    Дельно опубликовал

    403 ERROR
    The request could not be satisfied.

     
     
  • 2.5, Аноним (2), 10:14, 06/03/2019 [^] [ответить]    [к модератору]
  • +6 +/
    > The request could not be satisfied.

    Это для дорогих россиян. Через Tor грузи.

     
     
  • 3.121, h4tr3d (ok), 05:32, 08/03/2019 [^] [ответить]    [к модератору]
  • +/
    Не только. Из Канады достучаться тоже не могу.
     
     
  • 4.124, Аноним (124), 22:02, 08/03/2019 [^] [ответить]    [к модератору]
  • +/
    А я могу. Может у тебя интернет не очень-то и канадский?
     
     
  • 5.125, h4tr3d (ok), 23:18, 08/03/2019 [^] [ответить]    [к модератору]
  • +/
    > А я могу. Может у тебя интернет не очень-то и канадский?

    Скорее Rogers опять (или точка) гонит.

     
  • 3.123, Аноним (123), 21:34, 08/03/2019 [^] [ответить]     [к модератору]  
  • +/
    как же хорошо, что интернет разрабатывали романтики-академики если бы это сдеда... весь текст скрыт [показать]
     
  • 2.40, GG (ok), 13:17, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    УМВР
     
  • 2.59, Аноним (-), 15:30, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Тебя затролили. :-)
     
  • 1.4, Деннис Ритчи (?), 10:13, 06/03/2019 [ответить] [показать ветку] [···]     [к модератору]  
  • –4 +/
    Если бы все опенсорсили свои труды - то и не было бы таких продуктов Хотя ино... весь текст скрыт [показать]
     
     
  • 2.6, Аноним (2), 10:14, 06/03/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Дениска, не опозоришься. Ибо, то, что реверсится, не сильно похоже на оригинал.
     
     
  • 3.12, Аноним (12), 10:43, 06/03/2019 [^] [ответить]    [к модератору]  
  • –3 +/
    > то, что я отреверсил, не сильно похоже на оригинал.

    Не повезло. Бывает, в бинарях остаются даже дебажные сообщения с именами функций.

     
     
  • 4.16, Аноним (2), 10:59, 06/03/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    Блин, так цель-то надо не "отладка" (debug) выбирать, а "выпуск" (release). Кто ж вам программирование-то преподает?
     
     
  • 5.26, Аноним (12), 11:18, 06/03/2019 [^] [ответить]     [к модератору]  
  • –1 +/
    А я за то, что бы они делали, как делают Это позволяет мне реверсить бинари в... весь текст скрыт [показать]
     
     
  • 6.45, fi2fi (?), 14:12, 06/03/2019 [^] [ответить]     [к модератору]  
  • +1 +/
    имена переменных - точно обрезаются, а имена функций после стрип - только для им... весь текст скрыт [показать]
     
     
  • 7.53, Аноним (12), 14:36, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    > имена переменных - точно обрезаются, а имена функций после стрип - только
    > для импорта/экспорта.

    Да какой стрип. Там в исходниках DbgPrint(__func__) ))))

     
  • 7.65, benu (ok), 15:54, 06/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    >откуда майл.ру пиз*л код<

    А с этого места можно подробнее?

     
  • 3.42, Cradle (?), 13:38, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    переодически приходится реверсить, и могу сказать что очень хорошо там видно откуда у программиста руки росли
     
     
  • 4.83, Аноним (83), 19:00, 06/03/2019 [^] [ответить]     [к модератору]  
  • +/
    Я скажу даже больше - там ещё лучше видно откуда руки растут, т к какое-нибудь ... весь текст скрыт [показать]
     
     
  • 5.103, Аноним (103), 08:58, 07/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    "Потому что если собрать в релизе, оно падает" (с))))
     
  • 2.75, Аноним (75), 16:40, 06/03/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    Дениска Попов, перелогинься. ;)
     
  • 1.7, Аноним (2), 10:18, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –3 +/
    Некоторые упоминания в хелпе сабжа (CentOS, Java 11, WinRAR) как-бы намекают на его уровень ...
     
  • 1.8, Аноним (8), 10:33, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –3 +/
    Может ли гидра отреверсить себя?
     
     
  • 2.13, Аноним (12), 10:44, 06/03/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    "Код написан на языке Java".
     
  • 2.22, Аноним (22), 11:07, 06/03/2019 [^] [ответить]    [к модератору]  
  • +3 +/
    Конечно может. И не только себя, но и тебя.
     
     
  • 3.33, Аноним (33), 12:05, 06/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Представил тентакли гидры... бррр.
     
     
  • 4.80, Аноним (-), 18:05, 06/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Представил xeнтaй? Получил десяточку!
     
     
  • 5.90, тов. майор (?), 21:14, 06/03/2019 [^] [ответить]    [к модератору]  
  • +3 +/
    С конфискацией носителей хентая
     
  • 1.11, Аноним (-), 10:40, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –1 +/
    Это всё для голимой проприетарщины и выньтела. Для опенсорса оно чем может быть полезно?
     
     
  • 2.14, Аноним (12), 10:46, 06/03/2019 [^] [ответить]    [к модератору]  
  • +10 +/
    По-твоему, что бы появился опенсорс -- достаточно исписать весь интернет сообщениями "ждём ебилдов"?
     
     
  • 3.17, Аноним (2), 11:00, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Чтобы появился опенсорс, нужны умные.
     
     
  • 4.29, Аноним (12), 11:25, 06/03/2019 [^] [ответить]    [к модератору]  
  • +3 +/
    и доверчивые?
     
  • 3.21, Аноним (21), 11:07, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    А как же ещё аффтар узнает что кто-то ждёт ебилдов.
     
     
  • 4.28, Аноним (12), 11:24, 06/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Можно на улице спрашивать у каждого встречного.
     
  • 2.111, Мишаня_тупой_ватник (?), 16:55, 07/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Оно само становится опенсорсом. Поэтому фикс: Чем опенсорс может быть полезен для опенсорса?
     
  • 1.19, Аноним (21), 11:05, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    И о всех кто скачает прогу узнают в АНБ. А всех кто будут активно пользоваться привлекут на работу.
     
     
  • 2.31, Гентушник (ok), 11:47, 06/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    > А всех кто будут активно пользоваться привлекут на работу.

    А как они об этом узнают? Или вы предлагаете прям качать бинари с сайта АНБ и запускать их на своём компьютере?

     
     
  • 3.57, Аноним (12), 14:53, 06/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Зачем на своём компьютере запускать? Знакомимся с барышней и напрашиваемся в гости пореверсить.
     
     
  • 4.130, Аноним (130), 22:40, 10/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Зачем знакомиться когда можно дистанционно ее точку доступа заиметь
     
  • 3.82, Аноним (82), 18:51, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Самое дельное замечание. Сказано все.
     
  • 3.84, Аноним (84), 19:24, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Вот как будто все так и кинулись искать в коде закладки.. Тем более, что закладки могут быть очень неявными.
     
     
  • 4.85, Аноним (84), 19:26, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    апдейт: уже нашли, #46
     
  • 2.100, Tifereth (?), 06:24, 07/03/2019 [^] [ответить]     [к модератору]  
  • +/
    Тю Да пусть знают имя того одноразового VPS, который послужил прокси в ряду др... весь текст скрыт [показать]
     
     
  • 3.101, Аноним (101), 07:06, 07/03/2019 [^] [ответить]     [к модератору]  
  • –2 +/
    Эти одноразовые VPS случайно не банковской картой оплачиваются Значит проходит ... весь текст скрыт [показать]
     
  • 2.104, Аноним (104), 09:58, 07/03/2019 [^] [ответить]    [к модератору]  
  • –4 +/
    Из России качать не дают. 403.
     
     
  • 3.117, Led (ok), 23:53, 07/03/2019 [^] [ответить]    [к модератору]  
  • +4 +/
    "Это только на пользу".
     
  • 2.106, bOOster (ok), 10:46, 07/03/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Для параноиков - запускай когда ethernet/wifi отключен.
     
  • 1.20, Аноним (101), 11:06, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +21 +/
    Ага. Удачи декомпилить приложение на движке хромиум. Во времена приложений в сотню килобайт приложение можно было полностью понять. Во времена приложений в 1 мегабайт люди уже искали лишь интересующие куски. В нынешние же времена даже проверяя исходник можно сдохнуть, потому, что ресурсы мозга не бесконечны.
     
     
  • 2.47, Аноним (47), 14:14, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Приложение на движке хромиум распространяется в исходном коде (javascript) достаточно его распаковать и деобфусцировать
     
     
  • 3.52, Аноним (101), 14:27, 06/03/2019 [^] [ответить]     [к модератору]  
  • +/
    Вовсе не обязательно На HTML JS вполне может быть один лишь GUI, а весь функцио... весь текст скрыт [показать]
     
  • 3.56, Аноним84701 (ok), 14:52, 06/03/2019 [^] [ответить]     [к модератору]  
  • +4 +/
    Корова в котлетах тоже поставляется в исходном виде -- в принципе, можно собрать... весь текст скрыт [показать]
     
     
  • 4.114, пох (?), 18:13, 07/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    вранье, ни разу кроме крысы ничего не собралось. да и та не вся - куски получше, видать, еще до производства тырят.
     
  • 2.129, Аноним (130), 22:39, 10/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Это которое crx и unzip распаковывается? :)
     
  • 1.35, Аноним (35), 12:14, 06/03/2019 [ответить] [показать ветку] [···]     [к модератору]  
  • –5 +/
    Ага, а потом оказывается запускаешь такой - не находит никаких проблем в твоем п... весь текст скрыт [показать]
     
     
  • 2.36, Аноним (36), 12:39, 06/03/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    Чем конкретно он вам навредил?
     
     
  • 3.48, Аноним (48), 14:14, 06/03/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    вспоминается пропихивание бэкдоров в OpenBSD..
     
     
  • 4.97, хотел спросить (?), 01:36, 07/03/2019 [^] [ответить]    [к модератору]  
  • +/
    А как насчет лоббирования депонирования ключей?
    Вроде пробегала такая тема...
    https://lukatsky.blogspot.com/2016/08/blog-post_8.html
     
  • 2.71, IRASoldier (?), 16:35, 06/03/2019 [^] [ответить]    [к модератору]  
  • –1 +/
    Анализ опенсорцев ниасилил, продвинутый мембер IT-комьюнити?
     
  • 2.87, Аноним (-), 20:21, 06/03/2019 [^] [ответить]     [к модератору]  
  • +3 +/
    Проснись, п да, нас обокрали SELinux от врагов IT комьюнити уже впилен в эти... весь текст скрыт [показать]
     
     
  • 3.116, пох (?), 18:21, 07/03/2019 [^] [ответить]     [к модератору]  
  • –1 +/
    вообще-то нет у локалхостоюзеров и ведроидовладельцев, понятен, нет А кто с fe... весь текст скрыт [показать]
     
  • 1.37, YetAnotherOnanym (ok), 12:40, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    <trollmode>А Управление "К" МВД РФ имеет аккаунт на Гитхабе?</trollmode>
     
     
  • 2.51, Аноним (51), 14:20, 06/03/2019 [^] [ответить]    [к модератору]  
  • +1 +/
    Имеет, допуск по номеру служебного удостоверения.
     
  • 1.39, Аноним (39), 12:47, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +2 +/
    Могли бы назвать этот софт именем IUDA - Interactive Universal DisAssembler and Debugger.
     
  • 1.46, AnonPlus (?), 14:14, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +3 +/
    Уже нашли удалённое исполнение кода
    https://github.com/NationalSecurityAgency/ghidra/issues/6

    Тесты скорости по сравнению с идой

    формат / размер / ида / гидра
    ELF SO / 50K / 1 сек / 1 сек
    ELF SO / 100K / 1 сек / 3 сек
    ELF SO / 550K / 5 сек / 13 сек
    ELF SO / 1,2M / 13 сек / 1 мин 8 сек
    ELF SO / 32M / 22 сек / 1 мин 23 сек
    ELF SO + DWARF / 40M / 4 мин 7 сек / 23 мин 21 сек
    PE DLL / 3M / 58 сек / 67 сек
    PE DLL / 3M / 32 сек / 37 сек
    PE DLL + RTTI / 30M / 26 сек / 16 мин 10 сек

     
     
  • 2.92, Аноним (8), 22:19, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    С ретдеком лучше сравни.
     
  • 2.105, Аноним (104), 10:01, 07/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Сравнивали с IDA, или с Hex-Rays?
     
  • 2.115, KonstantinB (ok), 18:16, 07/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Это не удаленное исполнение кода, а обычный remote debug.

    То, что он слушает 0.0.0.0 по дефолту, это, конечно, нехорошо, да.

     
  • 1.73, Аноним (73), 16:37, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –7 +/
    Вот так Конь с беЗПлатным сырцом
     
     
  • 2.74, Аноним (-), 16:39, 06/03/2019 [^] [ответить]    [к модератору]  
  • +4 +/
    Зато наши стрибога прям в ядро запилили) И горе тем, кто им воспользуется...
     
     
  • 3.81, Аноним (81), 18:45, 06/03/2019 [^] [ответить]    [к модератору]  
  • –7 +/
    Ты имеешь в виду НЕ воспользуется? У данного алгоритма объективно все шансы на победу над зонтом.
     
  • 1.86, Аноним (86), 19:52, 06/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Может наконец допилят GUI для домохозяек к radare2
     
     
  • 2.91, andy (??), 21:53, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Есть clutter
     
     
  • 3.93, Аноним (86), 22:23, 06/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Не готов, убого и хуже Hopper Disassembler.
     
  • 1.94, Аноним (94), 22:25, 06/03/2019 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Как быстро собрать список ламеров, которые полезут туда p s Я б на всякий случ... весь текст скрыт [показать]
     
     
  • 2.95, Аноним (86), 23:32, 06/03/2019 [^] [ответить]    [к модератору]  
  • +2 +/
    Ну если вы работает в игиле то это и понятно.
     
  • 1.99, Аноним (99), 04:52, 07/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > Интересно, что через несколько часов после публикации Ghidra в пакете нашли уязвимость

    АНБ опубликовал инструмент с уявзимостью. Какая ирония.

     
     
  • 2.122, Аноним (122), 20:26, 08/03/2019 [^] [ответить]     [к модератору]  
  • +/
    Смею предположить, что персонал АНБ сгруппирован в отделы и внутри отдела можно ... весь текст скрыт [показать]
     
  • 1.102, Аноним (2), 07:31, 07/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • –2 +/
    Пока полностью не откроют исходники, скачивать и запускать данный продукт не рекомендуется.
     
     
  • 2.109, Аноним (109), 13:13, 07/03/2019 [^] [ответить]    [к модератору]  
  • +/
    Спасибо Кэп.
     
  • 1.120, h4tr3d (ok), 04:42, 08/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > ghidra-sre.org

    Из Канады, какбе тоже недоступен. TOR врубил - открылся.

     
  • 1.126, Аноним (126), 21:00, 09/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    С чего это АНБ стало вдруг таким добреньким ? Не иначе как зонды стучащие встроили в своё поделие)
     
  • 1.128, Медведев (?), 22:32, 10/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Таки тётя Ида останется без денег :)
     
  • 1.131, Fedd (ok), 16:49, 11/03/2019 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Годнота, REDasm тоже перспективный, интерфейс понравился
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2019 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor