eXeL@B —› Софт, инструменты —› VDisAsm |
. 1 . 2 . 3 . 4 . 5 . 6 . >> |
Посл.ответ | Сообщение |
|
Создано: 01 сентября 2012 04:26 · Поправил: vden · Личное сообщение · #1 Версия 2 C# + WPF, в разработке Движок анализатора используется во внутренних проектах Версия 1 Написана на Delphi, открытый исходный код Legacy В общих чертах: - дизассемблирование x16, x32, x64 (через - дизассемблирование ARM - FastTracer для быстрого анализа кода и проставления ссылок Исходники: | Сообщение посчитали полезным: SReg, _ruzmaz_, =TS=, plutos, reversecode, ressa, Fedonin, Dart Raiden, 4kusNick, VodoleY, sendersu, verdizela, Wald, DenCoder, DICI BF, screen66 |
|
Создано: 01 сентября 2012 08:07 · Поправил: TryAga1n · Личное сообщение · #2 Не декомпилит импортные прыги - Не хватает нулей перед адресами, всетаки DWORD привычней будет - Выравнивание на коменты не помешало бы - Нет навигации. Захотелось вернуться назад, не нашел как - Если открытии файла в Aux Pane была открыта вкладка Names, то не появляются lab_* пока не щелкнешь правой кнопкой->Reload - В контекстном меню у пункта Comment отсутствует хотхей(/), отсутствуют пункты меню make code/unmake code/make data (cycled)/AnsiString и т.д. в-общем пусто там)) - Может не стоит плодить файлы в %AppData%\VDisAsm? Думаю папки с программой достаточно... | Сообщение посчитали полезным: vden, Wald |
|
Создано: 01 сентября 2012 08:55 · Поправил: =TS= · Личное сообщение · #3 * При highlight mode off не происходит навигация при кликах по адресам -- так и задумано? * При переименовании метки не происходит переименования адреса в команде, которая на неё ссылается. * Было бы неплохо иметь комбинацию перехода на EP, например Ctrl-E. * Если курсор стоит на метке или адресе, то при вызове диалога перехода (Ctrl-G) было бы неплохо вставлять их в этот диалог и иметь возможность производить над ними (или любыми другими введёнными вручную адресами\метками) в этом диалоге некие арифметические и логические операции, результат которых станет адресом перехода. * В диалоге указания типа (Y) было бы логично иметь возможность выбора из списка встроенных / пользовательских (в будущем) типов. Или ввести выбор из списка при нажатия хоткея (T) -- да-да, как в IDA. TryAga1n пишет: Может не стоит плодить файлы в %AppData%\VDisAsm? Думаю папки с программой достаточно... Если включён UAC то отнюдь не достаточно (искать потом по VirtualStorage не интересно). ----- DREAMS CALL US | Сообщение посчитали полезным: vden, Kr0ne, Wald |
|
Создано: 01 сентября 2012 09:23 · Личное сообщение · #4 |
|
Создано: 01 сентября 2012 11:15 · Личное сообщение · #5 vden Внесу свою лепту критики. Не удобный дизайн, мало функционала, для сравнения приложу в атач Hackers Disassembler, боян еще тот, но дизайн удобный, мб что нибудь позаимствуешь в плане идей, а так, тестировать еще нечего, кроме самого дизасма. c1c4_01.09.2012_EXELAB.rU.tgz - Hackers Disassembler 1.06.rar | Сообщение посчитали полезным: MasterSoft, vden |
|
Создано: 01 сентября 2012 12:16 · Личное сообщение · #6 |
|
Создано: 01 сентября 2012 12:21 · Поправил: Kr0ne · Личное сообщение · #7 Распаковал пеид. Слева ида, справа - vdisasm, в котором одни опкоды ba18_01.09.2012_EXELAB.rU.tgz - scr.JPG |
|
Создано: 01 сентября 2012 12:38 · Поправил: vden · Личное сообщение · #8 Понемногу ответы на текущие. Пост правиться. Если на что-то не отвечено, значит скорее всего это добавлено в баг-лист. @TryAga1n Не декомпилит импортные прыги Сейчас есть быстрый анализатор, который начиная с точки входа проходит по очевидным прыжкам, если видит вызов на понятный адрес, то добавляет его в список работ. Непрямые вызовы его естественно обламывают. Также пытается помечать обращения к данным. Всё это хочется исправить с появлением более глубокого анализатора, который бы мог прослеживать изменения регистров, отлавливать непрямую адресацию. Не хватает нулей перед адресами, всетаки DWORD привычней будет Выравнивание на коменты не помешало бы gui ещё предстоит много правок. Нет навигации. Захотелось вернуться назад, не нашел как Должно быть ESC, но видимо не во всех случаях это работает (например если перешли из секций или имён, то забывается предыдущий адрес) @=TS= При highlight mode off не происходит навигация при кликах по адресам -- так и задумано? нет. баг. my bad При переименовании метки не происходит переименования адреса в команде, которая на неё ссылается. В арм версии это есть. но пока это отложено, чтобы сделать универсальное хранение операндов инструкции, это позволит например для чисел менять представление (int, float, structure offset) Было бы неплохо иметь комбинацию перехода на EP, например Ctrl-E. планируется Если курсор стоит на метке или адресе, то при вызове диалога перехода (Ctrl-G) было бы неплохо вставлять их в этот диалог Планируется * В диалоге указания типа (Y) было бы логично иметь возможность выбора из списка встроенных / пользовательских (в будущем) типов. Планируется |
|
Создано: 01 сентября 2012 13:17 · Личное сообщение · #9 |
|
Создано: 01 сентября 2012 13:28 · Поправил: vden · Личное сообщение · #10 Kr0ne пишет: может стоит новые версии кидать в архив, а когда проект станет стабильнее тогда можешь уже и установки делать может. сейчас установка нужна для копирования локальных и программных файлов в отдельные папки. при желании конечно можно сделать чтобы всё было в одной Домашняя страница Это только у меня она не работает? редиректы должны быть включены Где скролл? gui ещё предстоит большая доработка Распаковал пеид слева ида справа vdisasm в котором одни опкоды скорее всего явного перехода на адрес не было, поэтому он не сделан кодом. можно попробовать там нажать C |
|
Создано: 01 сентября 2012 13:33 · Поправил: reversecode · Личное сообщение · #11 - навигации не хватает, не понятно где находишься, т.е. и прокрутки справа, и визуализации позиции относительно всего файла - когда жмешь U то отменятеся очень большой участок кода залезающий по всем уже найденым лейблам ниже, думаю отменятся должен только до ближайшей лейбы, а еще лучше что бы уже определяло функцию и стек, и тогда отменятся должна как максиму вся функция, мнимум опять же до близайшего лейбла, хотя в IDA это чуть чуть по другому и чуть красивее, там по выровняном коду корректируется - так же хочется что бы константы можно было переводить сразу их хексовых, в текстовые или 10 ричные - рефы показывать тоже не плохо было бы, и что бы по ним бегать можно было(то что рефы есть я увидел, неплохо их показывать в коде, и работать не прибегая к мышке!) - инсталляция не нужна, достаточно аля портеибл, которая если лезет в реестр, то или создает новые параметры в нем или уже подхватывает те что были при ранних запусках - make code понятно, make data аля offset не вижу - save as database не вижу - добавить мульти трейдовость которой нет в IDA, к примеру опознал одну функцию, дальше бегло по ней анализируешь количество call, и хотя бы на несколько потоков раскидаешь на дизассемблер, так быстрее анализ будет проходить - switch таблица еще не определяется я смотрю - соверешнно не понятная мне ситуация, 4C188E call dword ptr [0x4DD220] при этом если перейти на 0x4DD220 то это Import KERNEL32.dll!HeapFree: может стоит сразу в комментах или адресс функцией заменять? - добавить Ctrl+Ins, Shift+Ins как альтернативу Ctrl+C, Ctrl+V | Сообщение посчитали полезным: vden |
|
Создано: 01 сентября 2012 13:35 · Поправил: vden · Личное сообщение · #12 @reversecode согласен. как временная мера, можно нажимать U для выделенного участка, тогда не будет попыток удалять через трейсинг кода иконка программы какая то скудная и еле заметная в таск баре, увеличить! и разнообразить цвЯтами! я думаю иконки должен рисовать профессионал, а пока это так, placeholder'ы рисовать нужно для разных размеров, тогда будет хорошо смотреться. в будещем планируется нанять дизайнера, чтобы всё "разукрасить". временную иконку попробую вскоре сделать |
|
Создано: 01 сентября 2012 13:39 · Личное сообщение · #13 |
|
Создано: 01 сентября 2012 13:43 · Поправил: reversecode · Личное сообщение · #14 Kr0ne пишет: Это только у меня она не работает? да только у вас. иконка программы какая то скудная и еле заметная в таск баре, увеличить! и разнообразить цвЯтами! ну хотя бы увеличить и заменить цвета, а то светло голубой переливающийся да на сером таск баре вообще не заметен по сравнению с красным фаерфоксом и большой иконкой Far,Notepad,Processhacker итд постом #11 расписал все свои замечания аля баги, пожелания |
|
Создано: 01 сентября 2012 14:32 · Поправил: TryAga1n · Личное сообщение · #15 Критическая ошибка: После открытия exe'шника, во время анализа я нажал Jobs->Resume(Зачем вообще такой пункт, если нет Stop или Pause?) и после этого программа навертво зависла. Убил через диспетчер задач. После повторного открытия приложения, на котором был висяк во время анализа получаем: Code:
И все пусто...пытался сделать File->Delete, но это не помогло. Теперь больше не могу работать с данным файлом - Где база от программы? Как ее почистить ручками то теперь? - В случае убивания процесса во время анализа, даже без Jobs->Resume база накрывается и приложение больше не анализируется |
|
Создано: 01 сентября 2012 14:34 · Поправил: vden · Личное сообщение · #16 TryAga1n пишет: Критическая ошибка: После открытия exe'шника, во время анализа я нажал Jobs->Resume(Зачем вообще такой пункт, если нет Stop или Pause?) и после этого программа навертво зависла. Этот пункт должен был быть скрытым (пока), видимо был упущен из виду. В случае порчи базы, её придётся удалять вручную. База это папка с постфиксом _vddb, создаётся там же где и исходный файл В случае убивания процесса во время анализа, даже без Jobs->Resume база накрывается и приложение больше не анализируется добавил в баги @reversecode постом #11 расписал все свои замечания аля баги, пожелания ok. |
|
Создано: 01 сентября 2012 15:02 · Поправил: reversecode · Личное сообщение · #17 самое главное, обзавестись хотя бы еще одним, двумя разработчиками что бы проект не умер на стадии бета потому что автор куда то пропал итд, всякие жизненные ситуации если на стадии бета-3 обростет дебаггером и интерактивным интерфейсом, появятся функции, стек, можно будет переименовывать и накладывать форматом структур на данные, то можно сказать что будет претендовать как альтернатива ИДА Kr0ne если все что я сказал появится, то запросто http://www.youtube.com/watch?v=Zkd_wzADOuo http://www.youtube.com/watch?v=nGWZVJQQSpM hexrays в учет не берем пока Kr0ne пишет: Я согласен, но движок надо свой писать. На чужом далеко не уедешь движок чего писать? там и так все свое, а медиану все пользуют, Мика для этого ее и писал иначем зачем опенсоурс нужен | Сообщение посчитали полезным: vden |
|
Создано: 01 сентября 2012 16:10 · Поправил: Kr0ne · Личное сообщение · #18 |
|
Создано: 02 сентября 2012 11:53 · Поправил: vden · Личное сообщение · #19 Kr0ne пишет: движок надо свой писать какой именно? Если x86/x64, то пока нет. Точнее есть свой, он хорошо работает для x86, но есть проблемы с x64. FYI в ходе прикручивания mediana был найден небольшой баг, патч отослан, но пока ещё не закомитен. Вскоре выложу заголовки mediana для Delphi. Думаю все в выигрыше. |
|
Создано: 02 сентября 2012 13:48 · Личное сообщение · #20 Вообще говоря, в медиана прилично багов уже есть, автор только лысого гоняет уже год. Если есть желание сделать форк и пофиксить их все, в принципе список багов могу покидать. Только это, если кто-то надумает это делать, сделайте нормально, не нагородите новых. З.Ы. Для дельфей килька в своё время делал инклуды. |
|
Создано: 02 сентября 2012 21:18 · Личное сообщение · #21 Archer Я уже и так делаю форк, в процессе тестирования трейсера в OpenDbg. Можешь мне на мыло оформить баг-лист. Только вот кто готов взяться за тестирование? У тебя спец-ранг в принципе говорит о многом, но если найдешь добровольцев (не просто желающих, а кто точно разбирается в данной теме), то вообще здорово. |
|
Создано: 02 сентября 2012 21:42 · Личное сообщение · #22 |
|
Создано: 02 сентября 2012 21:58 · Личное сообщение · #23 |
|
Создано: 03 сентября 2012 12:13 · Личное сообщение · #24 Устранил пару репортов в VDisAsm. Теперь portable Видимо инклуды от PEKill я проморгал. Инклуды mediana сейчас добавлены в общую папку (на dropbox, в шапке) В багфиксе mediana я тоже заинтересован, может всё и не исправлю, но список проблем хотелось бы увидеть. имхо если форк будет на sourceforge/googlecode, то может туда и запостить issues ? Мой баг, наверно уже есть в списке: Code:
|
|
Создано: 03 сентября 2012 12:36 · Личное сообщение · #25 |
|
Создано: 03 сентября 2012 13:07 · Поправил: vden · Личное сообщение · #26 Можно взять любой движок, лишь бы он выдавал структуру инструкции. Печать текста не нужна вообще, т.к. переписывается целиком. Возможно нужно было попробовать ещё distorm. Просто mediana мне показался чище написанным. edisassm гляну. @VodoleY был вариант с bea, уже не помню, почему не взял. Беатрикс вроде более-менее оперативно всё фиксит. |
|
Создано: 03 сентября 2012 13:26 · Личное сообщение · #27 |
|
Создано: 04 сентября 2012 02:45 · Личное сообщение · #28 |
|
Создано: 04 сентября 2012 08:51 · Поправил: =TS= · Личное сообщение · #29 |
|
Создано: 04 сентября 2012 10:03 · Личное сообщение · #30 |
. 1 . 2 . 3 . 4 . 5 . 6 . >> |
eXeL@B —› Софт, инструменты —› VDisAsm |