eXeL@B —› Софт, инструменты —› Interactive Delphi Reconstructor (IDR). Миттельшпиль |
<< 1 ... 36 . 37 . 38 . 39 . 40 . 41 . 42 . 43 . 44 . 45 . 46 ... 47 . 48 . >> |
Посл.ответ | Сообщение |
|
Создано: 06 декабря 2009 17:29 · Поправил: crypto · Личное сообщение · #1 IDR (Interactive Delphi Reconstructor) – декомпилятор исполняемых файлов (EXE) и динамических библиотек (DLL), написанных на языке Delphi и выполняемых в среде 32х-разрядных операционных систем Windows. Программа, прежде всего, предназначена для компаний, занимающихся разработкой антивирусного программного обеспечения. Она также может в значительной мере помочь программистам в восстановлении утраченных исходных текстов программ. Текущей версией программы могут обрабатываться файлы (как GUI, так и консольных приложений), скомпилированные компиляторами версий Delphi2 – Delphi2010. Ведется работа по поддержке Дельфи 2011. Конечной целью проекта является разработка программы, способной восстановить большую часть исходных Delphi-текстов из скомпилированного файла, но пока IDR, как и другие Delphi-декомпиляторы, сделать этого не может. Тем не менее, IDR может значительно облегчить такой процесс. По сравнению с другими декомпиляторами анализ, выполненный IDR, отличается наибольшей полнотой и достоверностью. Кроме того, высокая интерактивность делает работу с программой комфортной и (не побоимся этого слова) приятной. IDR выполняет статический анализ (анализируемый файл не запускается на выполнение), что позволяет безопасно изучать вирусы, трояны и прочие приложения, запуск которых опасен или нежелателен. Программа не требует установки и не делает никаких записей в реестр Windows. Официальный сайт: [Note] Недоступен после трагической Гитхаб Скачать: Dropbox автора https://www.dropbox.com/sh/9ran313nidqtagb/AADl_m_9GVYSiXUviZtDQWQHa?dl=0 Актуальная версия программы: Внимание! Требует наличия вспомогательных файлов и баз знаний!!! Базы данных качать по Для работы необходимо скачать базу знаний + последнюю версию программы |
|
Создано: 28 декабря 2016 10:20 · Поправил: ajax · Личное сообщение · #2 |
|
Создано: 28 декабря 2016 12:08 · Личное сообщение · #3 cryptX У меня пока процесс-дампер не работает. Поэтому остановимся на первом варианте. | Сообщение посчитали полезным: cryptX |
|
Создано: 29 декабря 2016 11:17 · Поправил: crypto · Личное сообщение · #4 Бросил пока сюда | Сообщение посчитали полезным: ajax, zNob, sendersu |
|
Создано: 30 декабря 2016 02:50 · Личное сообщение · #5 |
|
Создано: 30 декабря 2016 09:06 · Личное сообщение · #6 |
|
Создано: 27 января 2017 04:45 · Личное сообщение · #7 Заметил, что как-то криво стали генерироваться MAP файлы - mapimp олькин их не понимает. Code:
И вот так весь файл. Если убрать строки начинающиеся с виртуальных адресов, импортируется нормально. И небольшое пожелание - возможность разбивать генерируемые IDC скрипты на несколько частей. Пару раз пытался запустить файлы по 400-500 метров весом. Ида надолго вешается и в результате плюётся ошибками при компиляции скрипта. Вручную их разбивать нудно. | Сообщение посчитали полезным: Jaa |
|
Создано: 27 января 2017 11:16 · Личное сообщение · #8 |
|
Создано: 28 января 2017 03:04 · Поправил: -=AkaBOSS=- · Личное сообщение · #9 crypto пишет: А в чем дело с этим типом? Подскажите, тогда исправлю. Как я уже писал - если убрать строки начинающиеся с виртуальных адресов (с прототипами функций), импортируется нормально. Для примера, тот же кусок мапа от Иды: Code:
Этот импортируется без проблем. crypto пишет: Если да, то могу генерить куски заданного объема. Опять же, какого лучше. Ну можно давать юзеру выбор. У меня пару миллионов строк Ида переваривает, а у когото памяти и на это может не хватить. Небольшой гуёвый баг - статусная строка ползает при прокрутке списка И еще одна.. особенность. Если в функции встречается мусорный кусок (после прыжка в вм, например), ИДР паникует "Assertion failed: Idx >= 0 && Idx < 32, file C:\PAPA\IDR\Misc.cpp, line 826" после чего выдаёт "Abnormal program termination" и закрывается. Хотелось бы, чтобы она это как-то помягче обрабатывала. |
|
Создано: 04 февраля 2017 17:34 · Поправил: crypto · Личное сообщение · #10 -=AkaBOSS=- Я туплю: вот эта хрень #include <idc.idc> static clear(from){ auto ea; ea = from; while (1){ ea = NextFunction(ea); if (ea == -1) break; DelFunction(ea); MakeNameEx(ea, "", 0);} ea = from; while (1){ ea = FindExplored(ea, SEARCH_DOWN | SEARCH_NEXT); if (ea == -1) break; MakeUnkn(ea, 1);} } должна быть в начале каждого куска или только в самом начале? |
|
Создано: 05 февраля 2017 02:38 · Личное сообщение · #11 crypto пишет: должна быть в начале каждого куска или только в самом начале? Я ее вообще выбрасываю, чтобы не портила уже проанализированный код. | Сообщение посчитали полезным: reversecode |
|
Создано: 05 февраля 2017 04:16 · Личное сообщение · #12 |
|
Создано: 05 февраля 2017 09:14 · Поправил: crypto · Личное сообщение · #13 |
|
Создано: 05 февраля 2017 09:31 · Личное сообщение · #14 crypto пишет: должна быть в начале каждого куска или только в самом начале? только в начале, но я бы и туда его не ставил. не нужно забывать, что delphi это не только pure object pascal, но и прилинкованные obj файлы писанные на православной сишке, здесь ваш декомпиль обломается, и анализ IDA убьете. Добавлено спустя 10 минут просмотрел исходники вашего декомпиля, может пока отложить добавление фич и сделать рефакторинг? например избавиться от разношерстных типов, все свалено в кучу, типы билдера, системные, stl, в итоге каша которую сложно разгребать если не девелопил проект с самого начала. у некоторых функций нет имен, стоят стандартные имена которые дает IDA. перевести проект на unicode или жестко указывать AnsiString, не все же девелопят на древних версиях, а на новых не каждый полезет в реестр убирать юникод который по умолчанию и править самому то еще удовольствие, учитывая кашу из типов с отсутствием вменяемых инсрументов для рефакторинга у билдера. |
|
Создано: 05 февраля 2017 13:41 · Поправил: crypto · Личное сообщение · #15 -=AkaBOSS=- Выложил все изменения (в том числе исполняемый файл) на github https://github.com/crypto2011/IDR/blob/master/Idr.exe Не знаю, какой версией ты пользовался, но строки, начинающиеся с виртуальных адресов, у меня уже давно идут без прототипов в idc. Или я что-то не так понимаю? Объясни. neshta Лишние фичи не помешают. Кому надо, тот разберется |
|
Создано: 05 февраля 2017 19:21 · Поправил: SReg · Личное сообщение · #16 crypto Он про то, что .map файл генерится кривой для Olly хороший файл, созданный в ранних версиях ИДР не годный файл, который генерят последние несколько билдов ИДР(включая этот) | Сообщение посчитали полезным: crypto |
|
Создано: 06 февраля 2017 09:33 · Поправил: crypto · Личное сообщение · #17 |
|
Создано: 06 февраля 2017 14:41 · Поправил: Jaa · Личное сообщение · #18 crypto Не совсем исправленный вариант вы выложили. Сначало немного нормальных строк, а потом тоже самое Code:
|
|
Создано: 06 февраля 2017 17:00 · Поправил: crypto · Личное сообщение · #19 |
|
Создано: 06 февраля 2017 21:56 · Личное сообщение · #20 crypto так на любом файле такая беда. вначале нормально а потом уже нет. файл в аттаче как пример... crypto пишет: А может вообще прототипы не выводить? От них только вред может и не выводить, просто сделать .map для Olly как в прежних версиях и всё. e9ef_06.02.2017_EXELAB.rU.tgz - dcu32int.exe |
|
Создано: 06 февраля 2017 23:36 · Личное сообщение · #21 |
|
Создано: 07 февраля 2017 02:22 · Личное сообщение · #22 |
|
Создано: 07 февраля 2017 09:57 · Личное сообщение · #23 |
|
Создано: 11 февраля 2017 12:43 · Личное сообщение · #24 |
|
Создано: 11 февраля 2017 14:10 · Личное сообщение · #25 crypto пишет: Да, в дальнейшем лучше свои замечания фиксировать на github, а то здесь тема уже всем надоела. Подумаю, не закрыть ли ее совсем Что-то я не заметил тут возмущений Ничего не надо закрывать, я наоборот захожу с удовольствием почитать когда вижу тему IDR поднятую, как и любого иного инструмента. | Сообщение посчитали полезным: yuryrce, SReg, zNob, Dart Raiden, 4kusNick, MacTep |
|
Создано: 12 февраля 2017 01:57 · Личное сообщение · #26 |
|
Создано: 12 февраля 2017 11:42 · Поправил: crypto · Личное сообщение · #27 |
|
Создано: 12 февраля 2017 11:59 · Личное сообщение · #28 наверное потому что идр используется многими или рискну сказать всеми, как фронт для генерации idc или map дальнейший анализ или разбор происходит в ida или ольке причем даже как фронт, идр не может перенести кучу инфы в бекенд, все остальное делаем копи паст поиском в иде или олли взглянем правде в глаза, полноценным декомпилером и тем более дебагером идр не станет, а если и станет то не в ближайшие 10 лет так почему не поменять вектор развития идр в сторону стать лучшим фронтом или хорошим плагином ида или олли ? | Сообщение посчитали полезным: gazlan |
|
Создано: 12 февраля 2017 12:16 · Поправил: crypto · Личное сообщение · #29 reversecode Взглянем. А кто-нибудь пытался? Да, похоже большинство юзеров занимается кряками, поэтому им достаточно подобной технологии использования IDR. Я, к примеру, уже несколько больших проектов сделал с помощью моего инструмента и очень им доволен (последний проект состоит из 230 файлов объема 12М). ИДА в таких проектах слабо поможет, потому-что ее декомпилятор создает С-подобный текст. Не спорю, исходный текст, создаваемый IDR, нужно обрабатывать и здесь помог бы какой-нибудь плагин, зато он ориентирован на Дельфи. Исходники выложены, желающие могут менять что угодно в любую сторону. | Сообщение посчитали полезным: ajax |
|
Создано: 12 февраля 2017 16:00 · Личное сообщение · #30 |
|
Создано: 12 февраля 2017 16:31 · Личное сообщение · #31 |
<< 1 ... 36 . 37 . 38 . 39 . 40 . 41 . 42 . 43 . 44 . 45 . 46 ... 47 . 48 . >> |
eXeL@B —› Софт, инструменты —› Interactive Delphi Reconstructor (IDR). Миттельшпиль |
Эта тема закрыта. Ответы больше не принимаются. |