![]() |
|
|
![]()
|
|
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 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 |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: нет Всего: 459 |
NetFlame, тока С++ думаю тут ни при чем. Если удалять, то нужно сначала найти процедуру и забить весь ее код NOP или сделать jmp в конец процедруы. Если Подменить CRC, то заменить только 4 байта CRC. Такие операции можно произвести в любом Hex редакторе, но вот чтобы найти, понадобиться хороший отладчик типа ollyDebug, или анализатор кода типа IDA.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.3.2006 Где: Москва Репутация: нет Всего: нет |
IDA я пробовал, так какая-то ерунда, не возможно найти эту процедуру "вслепую", нужна какая-то точка отправления, но ничего нет...
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: нет Всего: 459 |
Ну можно например поискать значение этой самой CRC. Предварительно вычислить ее. Дальше глянуть где используется это число. По идее там должно быть либо сравнение с самим числом, либо сравнение с адресом в памяти где храниться это число. Таких чисел не должно получиться много все таки 4 млрд. комбинаций. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.3.2006 Где: Москва Репутация: нет Всего: нет |
К сожалению, не получается.. Пробовал по названию файла, строке фразы ошибки, ничего нет..
|
|||
|
||||
| jonie |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: нет Всего: 118 |
если алгоритм CRC32 используется, то можно поискать полином. таблицу...
или магический полином 0EDB88320h таблица вычисляется так:
часто такую таблицу кодируют жестко, чтобы не вычислять (или в силу незнания математики). кроме того, на входе алгоритма в аккумулятор результата (который, после всех циклов инвертируется) заносится 0FFFFFFFFh .... и т.д. т.п.) а проще поставить брекпоинт на попытку чтения адреса кодового сегмента... -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.3.2006 Где: Москва Репутация: нет Всего: нет |
Может быть это и помогло бы, но я знаком с C++ не очень хорошо, так что совсем не знаю, куда пихать это...
Вообще мне не понятно, как можно сделать такой скрипт... Ни одного нормального слова - одни троебуквия и символы... Так что, в моём случае это безнадёжно... Добавлено через 4 минуты и 44 секунды
Да, именно он и используется. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: нет Всего: 459 |
Это ассемблер -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| pycha |
|
|||
![]() главный анастазиолог ![]() Профиль Группа: Участник Сообщений: 239 Регистрация: 20.6.2008 Где: Украина Репутация: нет Всего: 13 |
какие он действия выдает когда проверка не совпадает? Типа мессаж бокс( надо за чтото зацепится) Причем меня удивило что другой файл проверяет, а себя нет. Пиши в личку, может помогу. А вообщето с такими вопросами надо идти на крекерские форумы - там тебе помогут гораздо лудше.
--------------------
ищу хакера со знанием компьютера длятехкт |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 3 Всего: 121 |
А где этот файл взять? На Delphi он написан. -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.3.2006 Где: Москва Репутация: нет Всего: нет |
Прикрепил к этому посту, только не очень понятно, зачем он может пригодится... Его CRC 88B066B2 Присоединённый файл ( Кол-во скачиваний: 6 )
VCMP.SCM 10,30 Kb |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 3 Всего: 121 |
И как этот файл подключить к программе? Какие действия нужно проделать, чтобы программа проверила его CRC?
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 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 |
|||
|
||||
| W4FhLF |
|
|||
![]() 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, а я не фанат игр
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.3.2006 Где: Москва Репутация: нет Всего: нет |
Да вообще я тоже не фанат
А возможно чем-то мониторить процессы, которые идут в vc-mp.exe? |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 3 Всего: 121 |
NetFlame, какие именно? Полностью возможно с помощью отладчика, частично с помощью всяких мониторов типа FileMon, RegMon.
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| pycha |
|
|||
![]() главный анастазиолог ![]() Профиль Группа: Участник Сообщений: 239 Регистрация: 20.6.2008 Где: Украина Репутация: нет Всего: 13 |
Какую ошибку выдает ? (дословно) легче будет от нее искать
--------------------
ищу хакера со знанием компьютера длятехкт |
|||
|
||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.3.2006 Где: Москва Репутация: нет Всего: нет |
CRC32 checksum failed: 'data/VCMP.SCM'.
|
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 3 Всего: 121 |
NetFlame, ты уверен, что эту ошибку выдает vc-mp.exe, а не gta-vc.exe? Я не вижу в vc-mp.exe ниодного упоминания CRC и сам алгоритм никакими анализаторами не детектируется. Не там ищешь
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.3.2006 Где: Москва Репутация: нет Всего: нет |
Да, не там мы искали... Извините..
Нашел я чистую установку клиента, сразу заинтересовался файлом vc-mp.flt Открыл его в hex редакторе, а затем в IDA и нашел заветную фразу: push offset aCrc32Checksu_0 ; "CRC32 checksum failed: '%s'." Вот только и всё... Саму базу CRC значений для файлов ( crc проверяется сразу для нескольких файлов ) не нашел. Там сразу 4 стрелочки идёт к этому блоку, а начало у этих стрелочек ( я имею ввиду код ) вообще непонятное:
Рациональный вариант - вообще вырезать эту проверочную процедуру. Есть у кого-нить идеи, где она зарыта в этом файле vc-mp.flt Это сообщение отредактировал(а) NetFlame - 25.6.2008, 11:58 Присоединённый файл ( Кол-во скачиваний: 2 )
vc_mp.zip 277,63 Kb |
|||
|
||||
| W4FhLF |
|
||||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 3 Всего: 121 |
Всё просто и понятно.
Пробуй файл ниже. Это сообщение отредактировал(а) W4FhLF - 25.6.2008, 12:26 Присоединённый файл ( Кол-во скачиваний: 6 )
vc_mp.rar 245,20 Kb-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
||||
|
|||||
| NetFlame |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.3.2006 Где: Москва Репутация: нет Всего: нет |
Спасибо, работает!!!!!
|
|||
|
||||
![]()
|
| Правила форума "Asm: Общие вопросы" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |