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

Курс видеоуроков «Программирование и взлом 2O18»
Обновлен 13 сентября 2O18 года
Свежие инструменты, новые видеоуроки!

  • 300+ видеоуроков
  • 800 инструментов
  • 100+ свежих книг и статей

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

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

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

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

Ранг: 138.7 (ветеран)
Статус: Участник

Создано: 30 января 2009 16:33 · Поправил: crc1 New!
Цитата · Личное сообщение · #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

{ Атач доступен только для участников форума } - CmpDisasm.rar

Ранг: 138.7 (ветеран)
Статус: Участник

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

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


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

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

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

Ранг: 138.7 (ветеран)
Статус: Участник

Создано: 20 апреля 2011 15:16 · Поправил: crc1 New!
Цитата · Личное сообщение · #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]



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

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

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


Ранг: 558.3 (!)
Статус: Модератор
Research & Development

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

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

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

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

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

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


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

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

Jupiter

XPSP3, GF FX5200


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

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

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

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


Ранг: 558.3 (!)
Статус: Модератор
Research & Development

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

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

Ранг: 138.7 (ветеран)
Статус: Участник

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

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

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

Ранг: 138.7 (ветеран)
Статус: Участник

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

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


Ранг: 558.3 (!)
Статус: Модератор
Research & Development

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

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

Ранг: 138.7 (ветеран)
Статус: Участник

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

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

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


Ранг: 558.3 (!)
Статус: Модератор
Research & Development

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

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

Ранг: 133.4 (ветеран)
Статус: Участник

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

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


{ Атач доступен только для участников форума } - CmpDisasm.txt

Ранг: 138.7 (ветеран)
Статус: Участник

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

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

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

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

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

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

Ранг: 133.4 (ветеран)
Статус: Участник

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

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


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

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

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


Ранг: 558.3 (!)
Статус: Модератор
Research & Development

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

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

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

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

Ранг: 30.2 (посетитель)
Статус: Участник

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

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

{ Атач доступен только для участников форума } - cmp.7z


Ранг: 558.3 (!)
Статус: Модератор
Research & Development

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

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

Ранг: 30.2 (посетитель)
Статус: Участник

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

Jupiter пишет:

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

--> Link <--


Ранг: 558.3 (!)
Статус: Модератор
Research & Development

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

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

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

Ранг: 30.2 (посетитель)
Статус: Участник

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

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


Ранг: 558.3 (!)
Статус: Модератор
Research & Development

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

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

Ранг: 30.2 (посетитель)
Статус: Участник

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

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

Ранг: 138.7 (ветеран)
Статус: Участник

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

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

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

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

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


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

Создано: 7 мая 2011 23:09 New!
Цитата · Личное сообщение · #29

crc1

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

Ранг: 138.7 (ветеран)
Статус: Участник

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

inffo
Посмотрю

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

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

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

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

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