Сейчас на форуме: asfa, Rio (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Редактирование COFF-объектных файлов
Посл.ответ Сообщение

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

Создано: 04 сентября 2013 00:31 · Поправил: AMSPeople
· Личное сообщение · #1

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

Есть утилита, которая помогает писать плагины для другой программы. Для компиляция плагина она использует файлы линковки (собственно это и есть coff .obj). Т.к. программа триальная, то в качестве ограничения используется наг-сообщение об этом, которое через файл линковки добавляется в плагин.
Кусок конвертированного coff .obj файла:
Code:
  1. push    64
  2. push    offset ??_C@_0O@OLEEKPCG@Trial?5Version?$AA@; заголовок
  3. push    offset ??_C@_0DL@FHKLPBAD@This?5Plugin?5Created?5With?5Trial?5V@; сообщение
  4. push    0         
  5. call    dword ptr [__imp__MessageBoxA@16]

Ну думаю понятно, что это и есть то самое наг-сообщение.

Вопрос. Как/чем редактировать эти coff .obj файлы, чтобы убрать вызов этой функции?




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

Создано: 04 сентября 2013 00:47
· Личное сообщение · #2

Опенсурсный формат, пруфец



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

Создано: 04 сентября 2013 00:52
· Личное сообщение · #3

Dr0p, знаю и видел. Но читать 100 листов на не родном языке ломает. Мне бы какой-нить гуишный редактор или любое другое готовое решение. Если оно есть конечно. Могу и руками поковырять, если напишите что и как.




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

Создано: 04 сентября 2013 00:59
· Личное сообщение · #4

AMSPeople

Я никада не интересовался сим, ибо за меня линкер этим занимается. Думаю и никто в нём не копался, ибо накой надо.



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

Создано: 04 сентября 2013 01:07
· Личное сообщение · #5

AMSPeople
В IDA патч, если код триала один, то патч по сигнатуре.



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

Создано: 04 сентября 2013 02:16 · Поправил: AMSPeople
· Личное сообщение · #6

F_a_u_s_t, да IDA открывает такие файлы. Но если я в Olly хоть что-то мог сделать, то в IDA я полный 0. Если не сложно, пропатчи файл в аттаче, и/или скинь diff-файл.
ЗЫ. Проверки как таковой нет, тупо вызов мессаги.


50c3_04.09.2013_EXELAB.rU.tgz - 93048655962432767892.obj



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

Создано: 04 сентября 2013 03:49 · Поправил: drin
· Личное сообщение · #7

AMSPeople
Вариант 1 - для иды есть плагин для патчинга (гугль в руки)
Вариант 2 - во вкладке Hex View посмотреть оффсет, найти его в WinHex и занопить ручками (заполнить 0x90)

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

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

Создано: 04 сентября 2013 04:08 · Поправил: F_a_u_s_t
· Личное сообщение · #8

AMSPeople
В любом hex редакторе патч - nop
С адреса ОТ до адреса ДО
От: 353F
До: 355A

Add:
Себе патчил хрень одну и твой obj пропатчил.

cbe0_04.09.2013_EXELAB.rU.tgz - 93048655962432767892.rar

| Сообщение посчитали полезным: AMSPeople
 eXeL@B —› Вопросы новичков —› Редактирование COFF-объектных файлов
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати