LINUX.ORG.RU

Grease — утилита для поиска ошибок в бинарных файлах

 , , ,


2

3

Привет, ЛОР!

Компания Galois Inc. представила Grease – программу для статического анализа исполняемых файлов и поиска в них уязвимостей. Grease дизассемблирует исполняемый файл и строит модель его исполнения, после чего анализирует пограничные условия на предмет возможных ошибок. Использовать Grease можно как отдельно, так и плагином к системе обратного инжениринга Ghidra.

Grease поддерживает анализ исполняемых файлов ELF и динамических библиотек, содержащих код ARMv7l, PowerPC или x86_64, а также может анализировать bitcode LLVM.

Код написан на языке Haskell и распространяется под лицензией BSD-3.

>>> Репозитарий на Github

>>> Подробности

★★★★★

Проверено: dataman ()
Последнее исправление: CYB3R (всего исправлений: 3)
Ответ на: комментарий от zxflux

Да хватит бредить. «В ir перегонит» - это та же декомпиляция, выполняемая той же гидрой, пруф: https://github.com/toor-de-force/Ghidra-to-LLVM

Только что править баги в ир будет в миллион раз сложнее, чем в исходниках (оригинальных или декомпилированных).

плюс солвер использует для верификации

Для верификации чего? Вам явно написали, что андер-констраинед екзекьюшон не подходит для верификации. Для неё нужен овер-констреинед экзекьюшон, а это уже ДРУГИЕ тулзы. Которые там тоже есть. Но обсуджаемая - к ним не относится. О чём я, собственно, и пишу.

в чем проблема?

В вашей писанине.

anonmyous ★★
()
Ответ на: комментарий от unC0Rr

Ну и? Ещё 1 чел пришёл кидать «намёки» по 1 фразе в час? Хоть кто-нить из вас мысль свою может закончить и изложить нормально? Откуда же вы берётесь, все как под копирку…

anonmyous ★★
()
Ответ на: комментарий от anonmyous

То есть чушью была просьба расписать юзкейс, так как больше я ничего и не просил. Мда.

Тебе их расписали несколько. Тебе не понравилось почему-то.

Ну и как же? А вы хоть 1 баг в жизни видели, который фиксится чуть сложнее, чем добавлением проверки на нуль-поинтер?

Нет, конечно. Я вообще говнокодер и баги не фикшу из принципа.

Не зная даже, что она вообще должна делать?

Ты это предположение (как и многие другие) вынул из какой-то левой жопы и приписываешь своим собеседникам.

В то время как техники правки бинарников давно описаны и вокруг этого возникла уже достаточно жирная индустрия. В основном, правда, на венде, ввиду необходимости делать кряки к софту или делать вирусы и прочие руткиты (или выковыривать их).

hateyoufeel ★★★★★
() автор топика
Последнее исправление: hateyoufeel (всего исправлений: 1)
Ответ на: комментарий от hateyoufeel

В основном, правда, на венде,

Это детали.

ввиду необходимости делать кряки к софту или делать вирусы и прочие руткиты

А вот это - самое важное. Как видите, в списке нет «делать фиксы». И не спроста. Вирус и руткит - это просто добавление «лишнего» пэйлоада к бинарю. Кряк - как правило, это «выкусывание» определённых проверок. Всё это СОВЕРШЕННО никак не связано с исправлением багов. Так как правка бага в какой-то функции, может изменить её сигнатуру, и потребовать изменения всех коллеров, например. С учётом инлайнинга и ЛТО, бинарь может измениться до полной неузнаваемости в результате таких действий. Не понимаю, почему вам всё это не очевидно.

anonmyous ★★
()
Последнее исправление: anonmyous (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.