Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Модифицировать EXE, Как? 
:(
    Опции темы
NetFlame
  Дата 22.6.2008, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Здравствуйте.

У меня есть exe файл, в котором проверяется CRC внешнего подключаемого файла.
Возможно ли удалить вообще эту проверку или прописать свою CRC?

Заранее спасибо.

P.S.

Проверка CRC нужно удалить/заменить у файла data/vcmp.scm
EXE-шник написан на Delphi

Это сообщение отредактировал(а) NetFlame - 24.6.2008, 14:35

Присоединённый файл ( Кол-во скачиваний: 5 )
Присоединённый файл  vc_mp.zip 483,70 Kb
PM MAIL WWW ICQ   Вверх
Alexeis
Дата 22.6.2008, 20:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



NetFlame, тока С++ думаю тут ни при чем. Если удалять, то нужно сначала найти процедуру и забить весь ее код NOP или сделать jmp в конец процедруы. Если Подменить CRC, то заменить только 4 байта CRC. Такие операции можно произвести в любом Hex редакторе, но вот чтобы найти, понадобиться хороший отладчик типа ollyDebug, или анализатор кода типа IDA.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
NetFlame
Дата 22.6.2008, 20:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



IDA я пробовал, так какая-то ерунда, не возможно найти эту процедуру "вслепую", нужна какая-то точка отправления, но ничего нет...

Код

push    ebp
mov     ebp, esp
xor     ecx, ecx
push    ecx
push    ecx
push    ecx
push    ecx
push    ebx
push    esi
push    edi
mov     edi, edx
mov     esi, eax
xor     eax, eax
push    ebp
push    offset sub_4CA083
push    dword ptr fs:[eax]
mov     fs:[eax], esp
mov     dl, 1
mov     eax, off_43BA88
call    sub_43BB88
mov     ebx, eax
mov     edx, 80000001h
mov     eax, ebx
call    sub_43BC28
xor     ecx, ecx



PM MAIL WWW ICQ   Вверх
Alexeis
Дата 22.6.2008, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



Цитата(NetFlame @  22.6.2008,  19:20 Найти цитируемый пост)
нужна какая-то точка отправления, но ничего нет...

  Ну можно например поискать значение этой самой CRC. Предварительно вычислить ее. Дальше глянуть где используется это число. По идее там должно быть либо сравнение с самим числом, либо сравнение с адресом в памяти где храниться это число. Таких чисел не должно получиться много все таки 4 млрд. комбинаций.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
NetFlame
Дата 22.6.2008, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



К сожалению, не получается.. Пробовал по названию файла, строке фразы ошибки, ничего нет.. 
PM MAIL WWW ICQ   Вверх
jonie
Дата 22.6.2008, 22:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: нет
Всего: 118



если алгоритм CRC32 используется, то можно поискать полином. таблицу...
или магический полином 0EDB88320h
таблица вычисляется так:
Код

;;;;;;;;;;;;;;;;;
;;Init CRC32 table
;;in push offset table
;;   call InitCRCTable
;;out:???
;;;;;;;;;;;;;;;;;;

magic_poly        equ 0EDB88320h


InitCRCTable PROC
    push EBP
    mov  EBP,ESP

    push ECX
    push EBX
    mov  EBX,[EBP+8]                  ;offset table
    mov  CL,00                        ;TOTAL Iteration
@_InitCRCTable1_@:
    xor  EAX,EAX
    mov  al,cl
;{======================}
    mov  CH,1
  @_InitCRCTable2_@:
    TEST EAX,01
    JZ   @_InitCRCTable3_@
    SHR  EAX,1
    XOR  EAX,magic_poly
    jmp  short @_InitCRCTable4_@
  @_InitCRCTable3_@:
    SHR  EAX,1
  @_InitCRCTable4_@:
    inc  CH
    cmp  CH,09
    jnz  @_InitCRCTable2_@
;{======================}
    mov  [EBX],EAX
    ADD  EBX,4
    inc  CL
    jnz  @_InitCRCTable1_@
    pop  EBX
    pop  ECX
    pop  EBP
    ret  4
InitCRCTable ENDP
 (может неоптимально, но писалось давно).
часто такую таблицу кодируют жестко, чтобы не вычислять (или в силу незнания математики).

кроме того, на входе алгоритма в аккумулятор результата (который, после всех циклов инвертируется) заносится 0FFFFFFFFh ....
и т.д. т.п.)

а проще поставить брекпоинт на попытку чтения адреса кодового сегмента...


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
NetFlame
Дата 23.6.2008, 14:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Может быть это и помогло бы, но я знаком с C++ не очень хорошо, так что совсем не знаю, куда пихать это...
Вообще мне не понятно, как можно сделать такой скрипт... Ни одного нормального слова - одни троебуквия и символы...

Так что, в моём случае это безнадёжно...

Добавлено через 4 минуты и 44 секунды
Цитата

если алгоритм CRC32 используется


Да, именно он и используется.
PM MAIL WWW ICQ   Вверх
Alexeis
Дата 23.6.2008, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: нет
Всего: 459



Цитата(NetFlame @  23.6.2008,  13:49 Найти цитируемый пост)
Ни одного нормального слова - одни троебуквия и символы...

  Это ассемблер smile . Без его знания тут не обойтись.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
pycha
Дата 23.6.2008, 23:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


главный анастазиолог
*


Профиль
Группа: Участник
Сообщений: 239
Регистрация: 20.6.2008
Где: Украина

Репутация: нет
Всего: 13



какие он действия выдает когда проверка не совпадает? Типа мессаж бокс( надо за чтото зацепится) Причем меня удивило что другой файл проверяет, а себя нет. Пиши в личку, может помогу. А вообщето с такими вопросами надо идти на крекерские форумы - там тебе помогут гораздо лудше.
--------------------
ищу хакера со знанием компьютера длятехкт
PM MAIL ICQ   Вверх
W4FhLF
Дата 24.6.2008, 05:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 3
Всего: 121



Цитата(NetFlame @  22.6.2008,  20:10 Найти цитируемый пост)
Проверка CRC нужно удалить/заменить у файла data/vcmp.scm


А где этот файл взять?

Цитата(NetFlame @  22.6.2008,  20:10 Найти цитируемый пост)
EXE-шник написан на C++


На Delphi он написан. 



--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
NetFlame
Дата 24.6.2008, 13:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Цитата

А где этот файл взять?


Прикрепил к этому посту, только не очень понятно, зачем он может пригодится... Его CRC 88B066B2

Присоединённый файл ( Кол-во скачиваний: 6 )
Присоединённый файл  VCMP.SCM 10,30 Kb
PM MAIL WWW ICQ   Вверх
W4FhLF
Дата 24.6.2008, 13:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 3
Всего: 121



И как этот файл подключить к программе? Какие действия нужно проделать, чтобы программа проверила его CRC?


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
NetFlame
Дата 24.6.2008, 14:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



vc-mp.exe выступает в роли загрузчика gta-vc.exe, который лежит в тойже папке с vc-mp.exe
он ( vc-mp.exe ) контролирует процесс выполнения  gta-vc.exe, который в свою очередь подключает файл VCMP.SCM, в котором храняться дальнейшие инструкции.
VCMP.SCM - закодированный текстовый файл.
После того, как VCMP.SCM загружается в gta-vc.exe, vc-mp.exe проверяет CRC32 загруженного VCMP.SCM в gta-vc.exe, и в зависимости от результата посылает gta-vc.exe команду либо о продолжении выполнения ( при удачной проверке CRC), либо о выводе ошибки и прекращении выполнения ( при несовпадении CRC ).

Это сообщение отредактировал(а) NetFlame - 24.6.2008, 14:34
PM MAIL WWW ICQ   Вверх
W4FhLF
Дата 24.6.2008, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 3
Всего: 121



Смысл в том, что надо найти место, где vc-mp.exe читает vcmp.scm и считает его контрольную сумму. Там же должно быть сравнение, его и нужно исправить. В vc-mp.exe я не нашёл ни единого упоминания о VCMP.SCM и его CRC 88B066B2, поэтому фактически решение твоей задачи требует установку GTA: Vice City и дальнейшую отладку vc-mp.exe, а я не фанат игр smile 


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
NetFlame
Дата 24.6.2008, 16:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 316
Регистрация: 8.3.2006
Где: Москва

Репутация: нет
Всего: нет



Да вообще я тоже не фанат  smile 

А возможно чем-то мониторить процессы, которые идут в vc-mp.exe?
PM MAIL WWW ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm: Общие вопросы"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0593 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.