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

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

 eXeL@B —› Основной форум —› flair, сигнатурки
Посл.ответ Сообщение

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

Создано: 23 сентября 2009 23:19 New!
Цитата · Личное сообщение · #1

Пытаюсь сделать сигнатурки для библиотеки OpenSSL 0.9.8d
Скармливаю pcb.exe libeay32.lib, потом sigmake, правлю .exc (в общем-то почти везде поставил плюсик перед первым именем) - правда уже тут настораживает, что почему-то в одном месте туда записывается "группа" из одной функции, но её удаление ни к чему плохому не приводит.

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

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

Сделал dumpsig. Сравнил со старыми версиями. И почему-то в некоторых (мб и во многих)функциях совпадают начальные байты(например, байт в байт совпавшая SHA_Init: 8B 44 24 04 33 C9 C7 00 01 23 45 67 C7 40 04 89 AB CD EF C7 40 08 FE DC BA 98 C7 40 0C 76 54 32), но разный указанный ниже CRC16 (или что там должно быть).

Ну и вопрос - что это может означать? вручную по результату dumpsig-а конечно можно определять функи, но почему этого не делает ида?

//если надо, могу приложить lib, exc и sig
10 C7 40 10 F0 E1 D2 C3 89 48 14 89 48 18 89 48 5C B8 01 00 00 00 C3


Ранг: 481.4 (мудрец)
Статус: Участник
Тот самый :)

Создано: 24 сентября 2009 11:26 · Поправил: Hexxx New!
Цитата · Личное сообщение · #2

это может означать что компилятор по разному собирает. Например прогу написали на VC6 а ты на VS2008 собираешь. Оно получается похоже но не то. Регистры к примеру другие заюзал компилер и превед.

Угадай почему на ARM не бывает сигнатур.

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

Создано: 24 сентября 2009 17:32 New!
Цитата · Личное сообщение · #3

в том-то и суть, что функции побайтно совпали

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

Создано: 24 сентября 2009 17:52 New!
Цитата · Личное сообщение · #4

> если надо, могу приложить lib, exc и sig
надо давай.

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

Создано: 24 сентября 2009 18:38 New!
Цитата · Личное сообщение · #5

мой: multi-up.com/145900
старая версия, которая распознаёт вышеупомянутую _SHA1_Init : multi-up.com/145901


Ранг: 481.4 (мудрец)
Статус: Участник
Тот самый :)

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

Различия полюбому должны быть раз CRC16 разный, flair работает достаточно хорошо.

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

Создано: 24 сентября 2009 23:12 New!
Цитата · Личное сообщение · #7

а чёрт, действительно)
различие в одной строчке:
в исследуемой программе:
Code:
  1. mov     eax, 1

и в библиотеке:
Code:
  1. lea     eax, [ecx+1]
,
где ecx=0

Чем бы перекомпилировать)


Ранг: 481.4 (мудрец)
Статус: Участник
Тот самый :)

Создано: 24 сентября 2009 23:29 · Поправил: Hexxx New!
Цитата · Личное сообщение · #8

Вот тото и оно.
Это для делфи можно взять компонент написаный на C Builder'e и сигнатуры будут работать. С VC фиг вам, надо версию подбирать.


Ранг: 199.6 (ветеран)
Статус: Участник
www.uinc.ru

Создано: 7 октября 2009 03:21 · Поправил: DrGolova New!
Цитата · Личное сообщение · #9

> С VC фиг вам, надо версию подбирать.

Версия VC определяется на раз два, благо RTL (и сигнатуры) практически не менялись со времен версии 7
 eXeL@B —› Основной форум —› flair, сигнатурки

Видеокурс ВЗЛОМ