![]() |
eXeL@B —› Софт, инструменты —› Софт для документирования кода при реверсе |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 23 марта 2015 16:43 · Личное сообщение · #1 Доброго времени суток! Возник такой вопрос, а никто низнает о существовании софта для облегчения документирования кода при реверсе. Вопрос может быть не сильно понятен, но попытаюсь обьяснить что интересует. Вот например есть кусок кода после дизасма или декомпиля, хотелось бы допустим построить графы, перепообзывать переменные (рефакторинг), разрисовать схему исмользования переменной и т.д. Ну как вариант это в вворде блок схемами делать.. но как по мне это страшный секс.. Вот до этого дня так и мучался.. Вот.. созрел спросить комьюнити.. может есть удобный инструмент? ----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... ![]() |
|
Создано: 23 марта 2015 16:50 · Личное сообщение · #2 |
|
Создано: 23 марта 2015 16:51 · Личное сообщение · #3 |
|
Создано: 23 марта 2015 16:53 · Личное сообщение · #4 |
|
Создано: 23 марта 2015 17:06 · Личное сообщение · #5 |
|
Создано: 23 марта 2015 17:31 · Личное сообщение · #6 |
|
Создано: 23 марта 2015 18:00 · Личное сообщение · #7 |
|
Создано: 23 марта 2015 18:34 · Личное сообщение · #8 |
|
Создано: 23 марта 2015 18:59 · Личное сообщение · #9 |
|
Создано: 23 марта 2015 19:06 · Личное сообщение · #10 |
|
Создано: 23 марта 2015 19:09 · Личное сообщение · #11 VodoleY пишет: Ну как вариант это в вворде блок схемами делать. По секрету, есть специально для этого приспособленные тулсы ( ![]() |
|
Создано: 23 марта 2015 19:15 · Поправил: r_e · Личное сообщение · #12 |
|
Создано: 23 марта 2015 19:19 · Личное сообщение · #13 |
|
Создано: 23 марта 2015 19:49 · Личное сообщение · #14 vovanre Да вообще это целая категория софта для построения карт памяти. Обычно используется при мозговом штурме. Но для мелких задач проще использовать блокнот и карандаш. Для новичков: блокнот это такая штука из чистой бумаги как холст в редакторе изображений, а карандаш - это такая палочка, которая на бумаге следы оставляет (аналог карандаша в редакторе изображений) ![]() ----- старый пень ![]() |
|
Создано: 23 марта 2015 23:04 · Личное сообщение · #15 r_e я, как думаю и многие.. привык работать с бумагой. печатал.. разукрашивал.. коментил.. и там последние 20 лет). на офисе.. на заднюю часть двери частенько кусок обоев.. в 1.5м вешал.. и с карандашом работал.. мысли в кучу как бы собираются.. но вопрос задан не зря, врядли в этой теме софта нету, я просто никогда не пытался автоматизировать этот процесс ибо нравился даже запах карандаша когда его точиш) ----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... ![]() |
|
Создано: 24 марта 2015 01:25 · Личное сообщение · #16 VodoleY дизайнер прям ![]() Есть такой плагин IDA Comment Viewer 0.2, неприметный совсем, но мне лично удобно им пользоваться. Хотя я бы желал, что-то наподобие TreeNotes, где записи оформлены или могут быть переключены в режим зависимого дерева, грубо говоря ГРАФ Записей с возможностью конечно вызывать конкретные места кода. Идея написания такого плагина давно уже витает в голове, но времени совсем на это нет. У IDA Comment Viewer 0.2 есть сорсы и в принципе при возможности можно доделать до Tree Comment Viewer. MindManager это хрень, он оторван от цели и его интеграция ужасна. Я использую для общих целей блокнот и любую удобную программу для индексирования текста и записей, в итоге с базы я вызываю и работаю с материалами на уровне Бога ![]() ----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube ![]() |
|
Создано: 24 марта 2015 03:47 · Личное сообщение · #17 |
|
Создано: 24 марта 2015 10:10 · Личное сообщение · #18 |
|
Создано: 24 марта 2015 10:16 · Личное сообщение · #19 |
|
Создано: 24 марта 2015 10:18 · Поправил: Vamit · Личное сообщение · #20 Мда..., реверсы тоже разные бывают - от патча нескольких байт до полного восстановления исходников части или всего кода и соответственно инструменты тоже могут быть разные. В моем понимании реверс - это восстановление исходников программы так как она была создана со всем своим окружением разработчиком. Лучший тут инструмент - использование той же самой среды создания программы с теми же настройками и надстройками. В итоге весь процесс реверса как бы переходит в процесс создания программы. Но тут есть и нюансы, если вы не знаете к примеру Паскаль и никогда на нем ничего не писали, и возметесь за реверс такой проги, то ничего хорошего у вас не выйдет. Ну а основные шаги по реверсу просты и делаются в ИДА: 1. Определение среды создания программы с надстройками (как минимум определение компилятора). 2. Если есть возможность создание сигнатур нестандартных либ и применение их к проекту, тут же смотрим все ли нужные сигнатуры прицепил движок Иды, если нет то цепляем их вручную. 3. Использовать скриптовые хелперы, такие как ms_ehseh, ms_rtti и т.д. 4. Ну а далее всё зависит от того какая база у вас получилась в Ида. Если красивая и почти полная - то реверсим, если же очень дырявая то улучшаем её начиная с сегмента данных: восстанавливаем таблицу инициализации глобальных статик переменных, таблицы виртуальных классов и функций, если они есть (не забываем здесь про RTTI), ну и хватит - далее реверсим. При реверсе очень помогает перенос имен из obj файлов проекта в Иду (создали исходники функи, откомпилировали её, не поленитесь перетащить в базу имя функи и глобал переменных - ускорит время на дальнейшее). Имеется в виду полное манглед имя созданное компилятором. Ну а инструменты анализа...., да они все есть в среде создания проги, которую мы и юзаем. ----- Everything is relative... ![]() |
|
Создано: 24 марта 2015 10:23 · Личное сообщение · #21 |
|
Создано: 24 марта 2015 10:51 · Личное сообщение · #22 reversecode все что под руку попадается... если я переименую топ.. в АНАЛИЗ ДАННЫХ для реверса комуто от этого легче станет? тот же самый хекс дамп разукрасить и откоментить тоже былоб приятно в чем то. Уж простите меня.. но ида криво работает с данными.. Там больше попотеешь чтоб сделать то что хочется.. чем поработать удасться. Как по мне ида не совсем удобное решение.. ----- Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме.... ![]() |
|
Создано: 24 марта 2015 11:19 · Личное сообщение · #23 |
|
Создано: 24 марта 2015 12:26 · Личное сообщение · #24 |
|
Создано: 24 марта 2015 12:51 · Поправил: Getorix · Личное сообщение · #25 |
|
Создано: 24 марта 2015 13:34 · Личное сообщение · #26 |
|
Создано: 24 марта 2015 13:58 · Личное сообщение · #27 |
|
Создано: 25 марта 2015 08:25 · Личное сообщение · #28 |
|
Создано: 25 марта 2015 10:33 · Личное сообщение · #29 VodoleY пишет: я FlexHEX WinHex гоняю. VodoleY пишет: тот же самый хекс дамп разукрасить и откоментить тоже былоб приятно в чем то Так в винхексе и разукрашивай, часто юзаю эту фичу. Vamit пишет: реверсы тоже разные бывают Я не из тех, кто восстанавливает до сурсов, а так, при разборе длинных рег.схем/алгосов отдаю голос за бумагу + карандаш ![]() ----- ds ![]() |
|
Создано: 25 марта 2015 21:11 · Личное сообщение · #30 |
. 1 . 2 . >> |
![]() |
eXeL@B —› Софт, инструменты —› Софт для документирования кода при реверсе |