eXeL@B —› Софт, инструменты —› decompiler to LLVM IR |
Посл.ответ | Сообщение |
|
Создано: 27 февраля 2014 10:53 · Личное сообщение · #1 главная roadmap These are in no particular order: 1.Finish basic type recovery to distinguish between structs/stack/class variables and pointer types 2.Add support for detecting and defining how variables are passed through functions. 3.Copy data elements from executable into IR output to make it run in lli. 4.Target support - x86, mips, and PPC 5.Add recursive decent parser and capture all control flow (including annotations of invariants for loops) 6.More advanced type recovery using library and system calls 7.Indirect control flow smt/sat solver 8.Support for conditional instructions 9.Support for multi-def instructions 10.Support for conditionals 11.High level type recovery 12.Optimizing codeinvisel tables 13.Exception handlers, interrupts, signals and other things that can affect control flow 14.Recovery of complex language structs (slices in python or c++ classes) пример вконце | Сообщение посчитали полезным: VodoleY, DenCoder |
|
Создано: 27 февраля 2014 14:16 · Личное сообщение · #2 |
|
Создано: 27 февраля 2014 21:58 · Личное сообщение · #3 Вот еще товарищи тем же самым занимались: Но к сожалению пока ничего не выложили: |
|
Создано: 03 апреля 2014 14:12 · Поправил: bbuc · Личное сообщение · #4 Сегодня выложили исходники Dagger: Right now, only X86-64 is supported; the best working object file format being mach-o | Сообщение посчитали полезным: r_e |
|
Создано: 03 апреля 2014 20:26 · Поправил: matrix · Личное сообщение · #5 |
|
Создано: 03 апреля 2014 20:35 · Личное сообщение · #6 |
|
Создано: 03 апреля 2014 21:40 · Личное сообщение · #7 |
|
Создано: 04 апреля 2014 03:54 · Личное сообщение · #8 |
|
Создано: 04 апреля 2014 06:35 · Личное сообщение · #9 |
|
Создано: 21 апреля 2014 15:59 · Личное сообщение · #10 |
|
Создано: 02 июля 2014 14:04 · Личное сообщение · #11 Вот еще одни ребята подтянулсь. Правда они код пока не выкладывали, вот слайды, которые они показывали на Recon 2014: В качестве источника у них служит IDA, потом они перегоняют в какой-то собственный формат использующий protobuf, потом уже используется LLVM. В теории вместо иды, можно воткнуть что угодно. Все демки что они показывали на конфе, были заточены под Windows. Так что пока это самая многообещающая реализация. |
|
Создано: 02 июля 2014 14:28 · Поправил: VodoleY · Личное сообщение · #12 bbuc пишет: В качестве источника у них служит IDA, потом они перегоняют в какой-то собственный формат использующий protobuf, потом уже используется LLVM. В теории вместо иды, можно воткнуть что угодно. посмотрел я их слайды.. имхо к реверсу морфов данный подход слабо годен. ВОЗМОЖНО как вариант переноса кода на хайлевел и трансляции на др. платформы это и когдато будет полезно.. но с хорошим морфом.. и ида не справляется..(точнее помогает.. но режим больше ручной) я уже не говорю об косвенной адресаци.. и т.д. хрен че они в статике путевого сделают ----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... |
|
Создано: 02 июля 2014 14:40 · Личное сообщение · #13 |
|
Создано: 02 июля 2014 14:59 · Личное сообщение · #14 |
|
Создано: 05 июля 2014 18:02 · Личное сообщение · #15 В общем, фракчура и даггер пока далеки от продакшена, только на поиграться. Направление очень крутое и последствия выхода на рынок хороших и открытых инструментов по перегону x86/64 в LLVM IR непредсказуемы. McSema внушает доверие, но там многое зависит от DARPA, которые финансируют проект. Жаль, что LLVM IR - > Code плохо развивается. |
|
Создано: 07 августа 2014 19:59 · Поправил: bbuc · Личное сообщение · #16 McSema, которую презентовали на Recon2014, зарелизили: Тут видео с презентацией и 3 демками: | Сообщение посчитали полезным: NaumLeNet, DenCoder |
eXeL@B —› Софт, инструменты —› decompiler to LLVM IR |