Сейчас на форуме: morgot, sashalogout, -Sanchez- (+3 невидимых)

 eXeL@B —› Софт, инструменты —› CmpDisasm - Утилита для сравнения PE файлов в дизассемблированном виде
<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 12 . 13 . >>
Посл.ответ Сообщение

Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 30 января 2009 16:33 · Поправил: crc1
· Личное сообщение · #1

В HEX виде много разных утилей для сравнения файлов. В дизассемблированном не встречал. Наваял свою.
Баг-репорты приветствуются
******************************************
Выравнивания на длину инструкции НЕ БУДЕТ
******************************************
History:
* 30 января 2009 г. v 0.1
* Собственно первый глючный вариант

* 29 марта 2009 г. v 0.35
* Добавлен пункт меню "Copy address to clipboard" в контекстном меню
* Добавлена примочка "stay on top", запоминается в реестре.
* Окно проги разворачивается на весь экран
* Добавлена цветовая схема, цвет запоминается в реестре
* Открывает занятые файлы + возможность работать с этими файлами в других приложениях
* Добавлено отображение адреса VA, либо Offset. Менять можно через меню, либо щелкнув по шапке столбца адреса
* Добавлена информация о секциях, различия выделяются цветом

* 16 октября 2009 г. v 0.5
* Добавлены HEX дампы файлов
* Добавлена возможность сравнивать диапазоны файлов

* 20 января 2010 г. v 0.6
* Поставил ScintillaGadget для вывода HEX дампов
* Исправил некоторые баги
* Добавил выбор двух последних файлов

* 3 февраля 2010 г. v 0.65
* Добавил выбор двух последних файлов, после драг-дропа
* Убирал дублирующиеся записи в логе

* 5 марта 2011 г. v. 0.7
* Заменил двиг на beaengine x86-64 Можно сравнивать 64 битные файлы
* Исправил крешь при запуске на win7

* 6 апреля 2011 г. v. 0.71
* Изменил фейс главного окна
* Сделал выделение цветом различий в File Info в главном окне
* Добавил пункт меню Исключить PE Header из анализа
* Добавил пункт меню "Save differences as"

* 16 октября 2011 v. 0.75
* Добавил просмотр заголовков файлов
* Автоматическое переключение disasm\hex вкладок, в зависимости от код\данные
* Исправил обнаруженные баги

*30 августа 2012 v. 0.76
* Пофиксил баги

*17 декабря 2012 v. 0.77
* Пофиксил баги
* Проверил на win xp sp3, win 7 x32/x64 win 8 x64

*4 апреля 2013 v 0.79
*Изменил интерфейс (кнопки переместил в тулбар)
*По дефолту, заголовок выключен из сканирования
*Исправил баги которые были отправлены в ПМ и которые нашел сам
*Исправил грамматическую ашыпку
--> Link <--

* 13 апреля 2013 v 0.81
* Исправил ошибку при перетаскивании нескольких файлов драг-дропом и некоторые другие
* Добавил сравнение файлов вперед и назад
--> Link <--

* 8 декабря 2013 v 0.83
* Убрал ошибки
* Добавил импорт\экспорт
--> Link <--

* 25 января 2014 v. 0.84
* Добавил командную строку ; использовать: CmpDisasm.exe file1 file2

48de_25.01.2014_EXELAB.rU.tgz - CmpDisasm.rar



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 06 апреля 2011 21:20
· Личное сообщение · #2

Ага, Archer, спасибо что намекнули (ни какого сарказма) Но где сделать отдельной галкой, типа исключать или нет в меню? Это можно сделать, а смысл? Хорошо, я сделаю.
Archer пишет:
Если 2 и не стоит делать.
аргументы...




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 06 апреля 2011 21:50
· Личное сообщение · #3

Я имел в виду первое и второе из возможность исключения ПЕ хедера из анализа и просто исключение из анализа.
Зачем делать-ну раз хочет человек, почему бы не сделать, хедер может быть и перестроен, я в основном писал не из своих пожеланий, а с целью прояснить пост выше.
Что касается 2, которая навигация-это сделать стоит, штука полезная.



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 20 апреля 2011 15:16 · Поправил: crc1
· Личное сообщение · #4

ver. 0.71

* Изменил фейс главного окна
* Сделал выделение цветом различий в File Info в главном окне
* Добавил пункт меню Исключить PE Header из анализа
* Добавил пункт меню "Save differences as"

CmpDisasm 0.71

| Сообщение посчитали полезным: Jupiter, Gideon Vi, _ruzmaz_, YDS, vnekrilov, obfuskator, icerix, 4kusNick, [0utC4St], geograph, Dem0n1C, RU_Crystall, ==DJ==[ZLO]


Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 20 апреля 2011 17:26
· Личное сообщение · #5

crc1 а что за артефакты на краях панелей File Info появляются при перетаскивании или изменении размеров

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh





Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 20 апреля 2011 18:52
· Личное сообщение · #6

Isaev
Проверил, никаких визуальных артефактов не заметил.
Двигал, менял размеры, выносил за пределы экрана, менял визуальное оформление.

Выложи скрин и приведи свойства системы (в т.ч. видео).

-----
EnJoy!




Ранг: 57.1 (постоянный), 3thx
Активность: 0.040
Статус: Участник

Создано: 20 апреля 2011 19:11
· Личное сообщение · #7

crc1
Предлагаю переименовать кнопки, кнопку "File 1" в "Right" и "File 2" в "Left".




Ранг: 756.3 (! !), 113thx
Активность: 0.610.05
Статус: Участник
Student

Создано: 20 апреля 2011 19:29
· Личное сообщение · #8

Jupiter

XPSP3, GF FX5200

-----
z+Dw7uLu5+jqLCDq7vLu8PvpIPHs7uMh





Ранг: 57.7 (постоянный), 49thx
Активность: 0.070
Статус: Участник

Создано: 20 апреля 2011 22:57 · Поправил: inffo
· Личное сообщение · #9

Isaev стиль ХР сделай, и проблема исчезнет

ADD: У меня также при классическом стиле, после перекрытия любым окном окна CmpDisasm.




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 20 апреля 2011 23:58
· Личное сообщение · #10

Isaev
Думаю, что EnableThemeDialogTexture должна помочь (crc1, это для тебя информация)

-----
EnJoy!




Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 21 апреля 2011 09:01 · Поправил: crc1
· Личное сообщение · #11

Jupiter пишет:
Думаю, что EnableThemeDialogTexture должна помочь

Неа, это при ресайзе контролы перекрывали друг друга. Поправил.
Isaev, перекачай



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 21 апреля 2011 23:11 · Поправил: crc1
· Личное сообщение · #12

Хочу спросить ваше мнение. Можно прикрутить в третьей вкладке вывод заголовков PE файла. Нуна или нет?




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 22 апреля 2011 00:00
· Личное сообщение · #13

crc1
Полезно, но не принципиально.
По мне так навигация важнее гораздо.
Если хочешь, выложу пример, как у меня было когда-то сделано.

-----
EnJoy!




Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 22 апреля 2011 00:10
· Личное сообщение · #14

gazlan пишет:
которые заведомо не совпадают бинарно, но скорее всего, одинаковы

или я тупой, или мы этого в школе не проходили (не совпадают но одинаковы)
gazlan вроде в меню есть пимпочка, сравнивать диапазоны, этого мало?
И вообще gazlan эта утилиль написана для сравнения PE файлов а не *mp3, *txt и ваших бинарников, которые "заведомо не совпадают бинарно, но скорее всего, одинаковы"




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 22 апреля 2011 00:26
· Личное сообщение · #15

crc1
gazlan привёл пример кода, который имеет одинаковую структуру (одни и те же операции с одними и теми же регистрами, к примеру), но разные константы.
Пример подобного кода: сдампленный кусок загрузчика протектора разных версий.

-----
EnJoy!




Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 22 апреля 2011 00:51 · Поправил: SVLab
· Личное сообщение · #16

При изменении ширины колонок в правом окне горизонтальная прокрутка появляется нормальная, в левом - неактивная.
Некоторые непонятки с лог-файлом. Адресация там идет в виде виртуальных адресов, но старшей цифры нет, что сбивает с толку.
Почему 0698E92 оказался ниже, чем 0698ECC, и что там вообще творится начиная с 0698E92 вот в этом логе:


dc15_21.04.2011_EXELAB.rU.tgz - CmpDisasm.txt



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 22 апреля 2011 01:32
· Личное сообщение · #17

Jupiter пишет:
gazlan привёл пример кода, который имеет одинаковую структуру (одни и те же операции с одними и теми же регистрами, к примеру), но разные константы.

Не понимаю я тебя Юпитер, какие константы? Я срвниваю так -> CMPSB, если не равны, отнимаю от этого адреса немного и вывожу на экран. Причем здесь константы?
SVLab пишет:
Вот такой бажик вылез:

Закинь файлы на обменник буду смотреть, но пока из твоей картинки ничего не понял. Что ты обвел 'rep movsd'
SVLab пишет:
При изменении ширины колонок

Да, есть такое, будем править
SVLab пишет:
Некоторые непонятки с лог-файлом.

Это завтра, сеня башка не варит, короче после Пасхи



Ранг: 133.4 (ветеран), 57thx
Активность: 0.110
Статус: Участник

Создано: 22 апреля 2011 03:10 · Поправил: SVLab
· Личное сообщение · #18

Про картинку забей, забыл я, что это может и так писаться, т.к. в Оле постоянно видится более расширенное написание.
Файлы вот --> Link <-- 6мб




Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 22 апреля 2011 09:13
· Личное сообщение · #19

Видимо, юпитер хочет сравнивать не по cmpsb, а по структуре кода с анализом инструкций как bindiff. Заодно чтоб деобфусцировал и одинаковый, но по-разному морфленый код, тоже распознавался




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 22 апреля 2011 17:33
· Личное сообщение · #20

Archer
это не я хочу, это я так понял идею gazlan'a, который объяснял, зачем нужно сравнивать куски кода (дампы), а не только PE файл целиком

но как пожелание, да: сравнивать инструкции по смыслу, но это не в первоочередных задачах
распознать на глаз проще, чем заставлять crc1 писать анализатор ;)

crc1
используемый тобой двиг дизасма позволяет реализовать то, о чём говорилось выше

-----
EnJoy!




Ранг: 30.2 (посетитель), 18thx
Активность: 0.030
Статус: Участник

Создано: 25 апреля 2011 07:33
· Личное сообщение · #21

Падает при попытке сравнить этих 2х файлов, один патченный другой нет...

8f26_24.04.2011_EXELAB.rU.tgz - cmp.7z




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 25 апреля 2011 15:39
· Личное сообщение · #22

Quadcon
Проверил на текущей версии 0.71 (из шапки) - не вылетает, сравнивает.

-----
EnJoy!




Ранг: 30.2 (посетитель), 18thx
Активность: 0.030
Статус: Участник

Создано: 25 апреля 2011 16:18 · Поправил: Quadcon
· Личное сообщение · #23

Jupiter пишет:

Quadcon
Проверил на текущей версии 0.71 (из шапки) - не вылетает, сравнивает.

--> Link <--




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 25 апреля 2011 19:16
· Личное сообщение · #24

Quadcon
Если у тебя установлен отладчик (OllyDbg), то жми "Debug the program" и показывай, по какому адресу произошло исключение.

Кстати, crc1 выкладывал две версии 0.71, поэтому проверь, вдруг у тебя старая версия.

-----
EnJoy!




Ранг: 30.2 (посетитель), 18thx
Активность: 0.030
Статус: Участник

Создано: 25 апреля 2011 20:46
· Личное сообщение · #25

из шапки, версия...
--> Link <-- <- падаем тут




Ранг: 605.2 (!), 341thx
Активность: 0.470.25
Статус: Модератор
Research & Development

Создано: 25 апреля 2011 21:08
· Личное сообщение · #26

Судя по скрину, упало где-то внутри системной длл, либо оля поздно подхватила упавшее знамя.
Приведи стек вызовов (call stack) в момент слёта (лучше запускать прогу в оле).

-----
EnJoy!




Ранг: 30.2 (посетитель), 18thx
Активность: 0.030
Статус: Участник

Создано: 25 апреля 2011 22:34 · Поправил: Quadcon
· Личное сообщение · #27

олька никак не реагирует на падение софтины вообще....
Но падает только на одинаковых файлах, при сравнении оригинального и патченого......



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 28 апреля 2011 12:31
· Личное сообщение · #28

Quadcon пишет:
Падает при попытке сравнить этих 2х файлов, один патченный другой нет...

Ты не поверишь, но у меня не падает, проверил на трех машинах все win xp sp3
Jupiter пишет:
используемый тобой двиг дизасма позволяет реализовать то, о чём говорилось выше

мля, мужики, а где время то взять + знания. Нуна еще и семью кормить
SVLab пишет:
Файлы вот --> Link <-- 6мб

Обязательно посмотрю, как выберусь из командировок




Ранг: 57.7 (постоянный), 49thx
Активность: 0.070
Статус: Участник

Создано: 07 мая 2011 23:09
· Личное сообщение · #29

crc1

Если открыть для сравнения два файла потом нажать на Compare, после этого нажать на File 1 (или File 2), не выбирая файла нажать Отмена и снова на Compare -> возникает ошибка.



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 13 мая 2011 09:30
· Личное сообщение · #30

inffo
Посмотрю



Ранг: 17.4 (новичок)
Активность: 0.020
Статус: Участник

Создано: 16 мая 2011 06:59
· Личное сообщение · #31

В файлах когда несколько дифов, показывает 1.


<< . 1 . 2 . 3 . 4 . 5 . 6 . 7 . 8 . 9 . 10 ... 12 . 13 . >>
 eXeL@B —› Софт, инструменты —› CmpDisasm - Утилита для сравнения PE файлов в дизассемблированном виде
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати