eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: moreno410, SaNX, asmerdev1 (+5 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Софт, инструменты —› Софт для документирования кода при реверсе
. 1 . 2 . >>
Посл.ответ Сообщение

Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 23 марта 2015 16:43 New!
Цитата · Личное сообщение · #1

Доброго времени суток! Возник такой вопрос, а никто низнает о существовании софта для облегчения документирования кода при реверсе. Вопрос может быть не сильно понятен, но попытаюсь обьяснить что интересует. Вот например есть кусок кода после дизасма или декомпиля, хотелось бы допустим построить графы, перепообзывать переменные (рефакторинг), разрисовать схему исмользования переменной и т.д. Ну как вариант это в вворде блок схемами делать.. но как по мне это страшный секс.. Вот до этого дня так и мучался.. Вот.. созрел спросить комьюнити.. может есть удобный инструмент?

Ранг: 556.7 (!)
Статус: Модератор

Создано: 23 марта 2015 16:50 New!
Цитата · Личное сообщение · #2

IDA Pro

Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 23 марта 2015 16:51 New!
Цитата · Личное сообщение · #3

r_e отлично.. я хочу документировать код после вб декомпиллера.. как это делать в ида.. не подскажеш?


Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 23 марта 2015 16:53 New!
Цитата · Личное сообщение · #4

зачем его документировать?

Добавлено спустя 6 минут
переименовывать? красиво расставлять, итд играться редактором - можно Notepad++ или в студии+вижуал ассист
рисовать кросс рефы классов, функций итд doxygen

Ранг: 556.7 (!)
Статус: Модератор

Создано: 23 марта 2015 17:06 New!
Цитата · Личное сообщение · #5

VodoleY
Подскажу, грузишь файло в иду, экспортишь ИДЦ из ВБД и импортишь в иду. Продолжаешь исследования в иде.

Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 23 марта 2015 17:31 New!
Цитата · Личное сообщение · #6

r_e пишет:
Подскажу, грузишь файло в иду, экспортишь ИДЦ из ВБД и импортишь в иду. Продолжаешь исследования в иде.

спасите меня.. вокруг меня одни извращенцы.. куда я попал)))

Ранг: 365.7 (мудрец)
Статус: Участник

Создано: 23 марта 2015 18:00 New!
Цитата · Личное сообщение · #7

VodoleY

групповой сэкс, не?!

Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 23 марта 2015 18:34 New!
Цитата · Личное сообщение · #8

BfoX пишет:
групповой сэкс, не?!

мы не на столько близко знакомы))).. а по теме?


Ранг: 302.1 (мудрец)
Статус: Участник

Создано: 23 марта 2015 18:59 New!
Цитата · Личное сообщение · #9

Ида + VS куда сразу исходники забиваются, больше ничего и не надо)


Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 23 марта 2015 19:06 New!
Цитата · Личное сообщение · #10

VodoleY пишет:
в вворде блок схемами делать.. но как по мне это страшный секс.. Вот до этого дня так и мучался..

ты уверен что ты реверсом занимался?

Ранг: 92.3 (постоянный)
Статус: Участник

Создано: 23 марта 2015 19:09 New!
Цитата · Личное сообщение · #11

VodoleY пишет:
Ну как вариант это в вворде блок схемами делать.

По секрету, есть специально для этого приспособленные тулсы (неплохо помогает когда мысли не можешь систематизировать)

Ранг: 556.7 (!)
Статус: Модератор

Создано: 23 марта 2015 19:15 · Поправил: r_e New!
Цитата · Личное сообщение · #12

vovanre
Когда мысль не можешь систематизировать - то это к доктору. В легких случаях MindManager помогает.

Ранг: 92.3 (постоянный)
Статус: Участник

Создано: 23 марта 2015 19:19 New!
Цитата · Личное сообщение · #13

r_e MindManager не знал. Спасибо.

Ранг: 556.7 (!)
Статус: Модератор

Создано: 23 марта 2015 19:49 New!
Цитата · Личное сообщение · #14

vovanre
Да вообще это целая категория софта для построения карт памяти. Обычно используется при мозговом штурме.
Но для мелких задач проще использовать блокнот и карандаш.

Для новичков: блокнот это такая штука из чистой бумаги как холст в редакторе изображений, а карандаш - это такая палочка, которая на бумаге следы оставляет (аналог карандаша в редакторе изображений) ))

| Сообщение посчитали полезным: gurololicon, vovanre


Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 23 марта 2015 23:04 New!
Цитата · Личное сообщение · #15

r_e я, как думаю и многие.. привык работать с бумагой. печатал.. разукрашивал.. коментил.. и там последние 20 лет). на офисе.. на заднюю часть двери частенько кусок обоев.. в 1.5м вешал.. и с карандашом работал.. мысли в кучу как бы собираются.. но вопрос задан не зря, врядли в этой теме софта нету, я просто никогда не пытался автоматизировать этот процесс ибо нравился даже запах карандаша когда его точиш)


Ранг: 630.4 (!)
Статус: Участник
CyberMonk

Создано: 24 марта 2015 01:25 New!
Цитата · Личное сообщение · #16

VodoleY дизайнер прям

Есть такой плагин IDA Comment Viewer 0.2, неприметный совсем, но мне лично удобно им пользоваться. Хотя я бы желал, что-то наподобие TreeNotes, где записи оформлены или могут быть переключены в режим зависимого дерева, грубо говоря ГРАФ Записей с возможностью конечно вызывать конкретные места кода. Идея написания такого плагина давно уже витает в голове, но времени совсем на это нет. У IDA Comment Viewer 0.2 есть сорсы и в принципе при возможности можно доделать до Tree Comment Viewer.

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


Ранг: 1091.6 (!!!!)
Статус: Участник

Создано: 24 марта 2015 03:47 New!
Цитата · Личное сообщение · #17

Так много про вроде бы старых знакомых узнал.
По теме: софт подобный MindManager отлично работает при написании сложных сценариев (это хрень такая, по которой потом фильмы снимают) и книг. Для реверса ничего удобнее блокнота ещё не придумали. Ну, или я не встречал.

Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 24 марта 2015 10:10 New!
Цитата · Личное сообщение · #18

я вот ща к AkelPad привыкаю.. нравится подсветка слов.. вобщемто тот же блокнот.. но чуть разукрашеней

Ранг: 92.3 (постоянный)
Статус: Участник

Создано: 24 марта 2015 10:16 New!
Цитата · Личное сообщение · #19

VodoleY пишет:
AkelPad
, никогда notepad++ не брошу


Ранг: 302.1 (мудрец)
Статус: Участник

Создано: 24 марта 2015 10:18 · Поправил: Vamit New!
Цитата · Личное сообщение · #20

Мда..., реверсы тоже разные бывают - от патча нескольких байт до полного восстановления исходников части или всего кода и соответственно инструменты тоже могут быть разные. В моем понимании реверс - это восстановление исходников программы так как она была создана со всем своим окружением разработчиком. Лучший тут инструмент - использование той же самой среды создания программы с теми же настройками и надстройками. В итоге весь процесс реверса как бы переходит в процесс создания программы.
Но тут есть и нюансы, если вы не знаете к примеру Паскаль и никогда на нем ничего не писали, и возметесь за реверс такой проги, то ничего хорошего у вас не выйдет.
Ну а основные шаги по реверсу просты и делаются в ИДА:
1. Определение среды создания программы с надстройками (как минимум определение компилятора).
2. Если есть возможность создание сигнатур нестандартных либ и применение их к проекту, тут же смотрим все ли нужные сигнатуры прицепил движок Иды, если нет то цепляем их вручную.
3. Использовать скриптовые хелперы, такие как ms_ehseh, ms_rtti и т.д.
4. Ну а далее всё зависит от того какая база у вас получилась в Ида. Если красивая и почти полная - то реверсим, если же очень дырявая то улучшаем её начиная с сегмента данных: восстанавливаем таблицу инициализации глобальных статик переменных, таблицы виртуальных классов и функций, если они есть (не забываем здесь про RTTI), ну и хватит - далее реверсим.
При реверсе очень помогает перенос имен из obj файлов проекта в Иду (создали исходники функи, откомпилировали её, не поленитесь перетащить в базу имя функи и глобал переменных - ускорит время на дальнейшее). Имеется в виду полное манглед имя созданное компилятором.
Ну а инструменты анализа...., да они все есть в среде создания проги, которую мы и юзаем.


Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 24 марта 2015 10:23 New!
Цитата · Личное сообщение · #21

VodoleY пишет:
я вот ща к AkelPad привыкаю.. нравится подсветка слов.. вобщемто тот же блокнот.. но чуть разукрашеней

я так и не понял каким реверсом ты занимаешься
максимум что я делал, это во времена когда не было рейса, распечатывал килотонны асм кода, что бы удобней было с ним манипулировать ))

Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 24 марта 2015 10:51 New!
Цитата · Личное сообщение · #22

reversecode все что под руку попадается... если я переименую топ.. в АНАЛИЗ ДАННЫХ для реверса комуто от этого легче станет? тот же самый хекс дамп разукрасить и откоментить тоже былоб приятно в чем то. Уж простите меня.. но ида криво работает с данными.. Там больше попотеешь чтоб сделать то что хочется.. чем поработать удасться. Как по мне ида не совсем удобное решение..


Ранг: 534.6 (!)
Статус: Uploader
retired

Создано: 24 марта 2015 11:19 New!
Цитата · Личное сообщение · #23

VodoleY пишет:
тот же самый хекс дамп разукрасить и откоментить тоже былоб приятно в чем то

010 editor


Ранг: 302.1 (мудрец)
Статус: Участник

Создано: 24 марта 2015 12:26 New!
Цитата · Личное сообщение · #24

VodoleY пишет:
Уж простите меня.. но ида криво работает с данными..

Что тебя тут не устраивает? В принципе представление можно реализовать почти любое.


Ранг: 209.5 (наставник)
Статус: Участник
WinCE ARM M@sTeR

Создано: 24 марта 2015 12:51 · Поправил: Getorix New!
Цитата · Личное сообщение · #25

BoRoV пишет:
010 editor

Чорт, опередил Да, категорически рекомендую для всего такого. В последней версии добавили регекспы в поиск, так ваще праздник наступил.

Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 24 марта 2015 13:34 New!
Цитата · Личное сообщение · #26

BoRoV пишет:
010 editor

давно его не смотрел. я FlexHEX WinHex гоняю... каждый для своих нужд


Ранг: 988.8 (! ! !)
Статус: Участник

Создано: 24 марта 2015 13:58 New!
Цитата · Личное сообщение · #27

анализ данных... так может тебе не ида нужна? другой инструмент в целом))
ида то для реверса кода

Ранг: 488.4 (мудрец)
Статус: Участник

Создано: 25 марта 2015 08:25 New!
Цитата · Личное сообщение · #28

reversecode вот оно..свершилось.. мне открыли глаза.. теперь буду знать для чего IDA.. ато я последние 15 лет думал что это IDE для программирования ids скриптов. Вон оно че михалыч оказывается


Ранг: 206.8 (наставник)
Статус: Участник
radical

Создано: 25 марта 2015 10:33 New!
Цитата · Личное сообщение · #29

VodoleY пишет:
я FlexHEX WinHex гоняю.

VodoleY пишет:
тот же самый хекс дамп разукрасить и откоментить тоже былоб приятно в чем то

Так в винхексе и разукрашивай, часто юзаю эту фичу.

Vamit пишет:
реверсы тоже разные бывают

Я не из тех, кто восстанавливает до сурсов, а так, при разборе длинных рег.схем/алгосов отдаю голос за бумагу + карандаш


Статус: Пришелец

Создано: 25 марта 2015 21:11 New!
Цитата #30

VodoleY пишет: АНАЛИЗ ДАННЫХ

010 editor или hexinator

| Сообщение посчитали полезным: Jb23

. 1 . 2 . >>
 eXeL@B —› Софт, инструменты —› Софт для документирования кода при реверсе

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS