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

 eXeL@B —› Вопросы новичков —› Нужна помощь по обходу проверки CRC
Посл.ответ Сообщение

Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 ноября 2011 14:05
· Личное сообщение · #1

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

Дело в следующем: имеется прога, для работы с одним аналитическим прибором, лежит тут http://rghost.ru/32192741
Стоит задача ее русифицировать. Экзешник ничем не запакован, но после правки и сохранения (юзаю Ресторатор) прога не запускалась. Один брат тут мне помог, подправил файл и как я понял из дебаггера, там была проверка контрольной суммы до адреса 00401664 и условный переход. Теперь экзешник можно без проблем править, но кроме него надо русифицировать и файлы *.mod. Но после их правки, прога также не пашет Короче, где-то в экзешнике есть еще и проверка на целостность файлов *.mod.

В папке mod_rus лежат правленные файлы, с которыми прога не работает. Если кому-то будет проще убрать проверку и выложить, чем мне тут все объяснять - пожалуйста, я не возражаю. Но хотелось бы самому освоить. Смотрел по теме видоуроки от Solenij, но несмотря на доходчивость, сам продвинуться в практике не смог



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

Создано: 27 ноября 2011 15:01
· Личное сообщение · #2

Если там простая проверка CRC, то почему бы не взять, например, PeID с плагином CRC32 и не поправить CRC на нужную после руссификации?



Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 ноября 2011 15:26
· Личное сообщение · #3

Попробовал сейчас - не помогло. Возможно, что не по CRC проверка идет.



Ранг: 488.1 (мудрец), 272thx
Активность: 0.350
Статус: Участник

Создано: 27 ноября 2011 15:28
· Личное сообщение · #4

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

-----
Наша работа во тьме, Мы делаем, что умеем. Мы отдаем, что имеем, Наша работа во тьме....




Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 ноября 2011 18:05
· Личное сообщение · #5

VodoleY
Я не совсем понимаю как поставить бряк на байты, которые я изменил в одном из файлов *.mod? Эти файлы я нигде в оле не вижу...




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 27 ноября 2011 18:48
· Личное сообщение · #6

вот какая то sha1 проверка модуля, но прогу я не запускал
поэтому хз может это и не .mod проверяются

Code:
  1. .text:00401662                 test    al, al

туда два nop вставить и проверять



Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 ноября 2011 18:59
· Личное сообщение · #7

Заменил 00401662 test al, al двумя нопами... Не то, ничего не меняет.




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 27 ноября 2011 19:09
· Личное сообщение · #8

хм то проверка самого запускаемого exe была
на остальные .mod вроде никаких проверок нет
разве что сама целосность crc в заголовке.. хз ресурсы разве входят в ту crc?

и кстати как понять что должно менятся или не должно?
я вот пытался закрыть вашу программу
у меня окно подтверждения на милиоон пикселей в ширину растянулось
до кнопки подтверждения я так и не дотянулся
в топку такую локализацию)))
пусть она на инглыше лучше будет



Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 ноября 2011 19:25 · Поправил: Serenum
· Личное сообщение · #9

Я окно подтверждения закрытия еще вообще не трогал!

Если файлы *.мод не русифицировать, то прога нормально запускается, эти модули (*.мод) в самой программе также присутствуют (слева на вертикальной панели должно быть пять клавиш) и закрывается прога также без проблем. А если например файл Analysis.mod в Рестораторе поправить (даже если просто пару букв в слове File затереть), то при запуске вылетает сообщение "Could not initialize module in Analysis" и прога не стартует.



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

Создано: 27 ноября 2011 19:40
· Личное сообщение · #10

reversecode

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




Ранг: 793.4 (! !), 568thx
Активность: 0.740
Статус: Участник
Шаман

Создано: 27 ноября 2011 19:51 · Поправил: PE_Kill
· Личное сообщение · #11

Каждый модуль это на самом деле DLL и она проверяет сама себя. Закидываешь модуль в OllyDbg и ищешь сигнатуру: 33 C0 F3 A7 5F 5E 0F 94 C0 C3

Это будет такой код:
Code:
  1. CPU Disasm
  2. Address   Hex dump          Command                                  Comments
  3. 1006FE60    8BC1            MOV EAX,ECX
  4. 1006FE62    56              PUSH ESI
  5. 1006FE63    57              PUSH EDI
  6. 1006FE64    B9 05000000     MOV ECX,5
  7. 1006FE69    8D78 74         LEA EDI,[EAX+74]
  8. 1006FE6C    8D70 60         LEA ESI,[EAX+60]
  9. 1006FE6F    33C0            XOR EAX,EAX
  10. 1006FE71    F3:A7           REPE CMPS DWORD PTR DS:[ESI],DWORD PTR E
  11. 1006FE73    5F              POP EDI
  12. 1006FE74    5E              POP ESI
  13. 1006FE75    0F94C0          SETE AL
  14. 1006FE78    C3              RETN

Вот последний
SETE AL
RETN
заменяешь на
MOV AL, 1
NOP
RETN
И сохраняешь. Вот один твой файл я пофиксил: http://dump.ru/file/5483313

PS: Или совсем ленивый метод. В Hex редакторе найти
33 C0 F3 A7 5F 5E 0F 94 C0 C3
Заменить на
33 C0 F3 A7 5F 5E B0 01 90 C3

-----
Yann Tiersen best and do not fuck


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


Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 27 ноября 2011 19:53
· Личное сообщение · #12

testprogs
спокойствие только спокойствие))

Serenum
там в каждом модуле sha1 проверка
точно такой же как и в .exe
вот в модуле Analysis_eng.dll
Code:
  1. .text:1000A1CC                 test    al, al

nop,nop
и так в каждом модуле я полагаю

дальше сами найдете)



Ранг: 0.3 (гость)
Активность: 0=0
Статус: Участник

Создано: 27 ноября 2011 19:57
· Личное сообщение · #13

PE_Kill
РАБОТАЕТ! Спасибо огромное брат, ты сделал мой день. Теперь попробую самостоятельно остальные модули профиксить.



Ранг: 0.7 (гость)
Активность: 0=0
Статус: Участник

Создано: 29 апреля 2015 22:31
· Личное сообщение · #14

Доброго всем. Столкнулся с аналогичной проблемой при переводе программы, то есть проблема очевидна — проверка crc. С OllyDbg я пока на Вы, поэтому прошу помощи.
Программа - Aquila Examine32/64 Text Search быстрая и универсальная утилита поиска текста.
Ссылка - http://www.solidfiles.com/d/80c0cfda37/
Тема на ru-board - http://forum.ru-board.com/topic.cgi?forum=35&topic=50316#1
Экзешник ничем не запакован, но после перевода выдаёт окно
Code:
  1. Examine. exe has been corrupted

Пробовал по мануалу от Solenij — --> Link <--, но не вышло...
Просьба снять проверку crc,
С Ув.




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 29 апреля 2015 22:39
· Личное сообщение · #15

с просьбами идите в запросы на взлом



Ранг: 19.2 (новичок), 12thx
Активность: 0.030
Статус: Участник

Создано: 29 апреля 2015 22:57
· Личное сообщение · #16

inok_ZP, работы ноль - за Вас точно никто делать не будет. Таксу напиши, может кто возьмётся... reversecode уже отправил куда нужно.




Ранг: 275.9 (наставник), 340thx
Активность: 0.22=0.22
Статус: Участник
RBC

Создано: 30 апреля 2015 02:19 · Поправил: Kindly
· Личное сообщение · #17

_FUCKER_ пишет:
за Вас точно никто делать не будет

не угадал
_FUCKER_ пишет:
Таксу напиши, может кто возьмётся..

та ладно, я у себя в бяшке не могу принимать никакие сторонние электронные переводы, поэтому вот:
https://exelab.ru/f/action=vthread&forum=2&topic=23172&page=13#16

-----
Array[Login..Logout] of Life


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


Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 30 апреля 2015 12:07
· Личное сообщение · #18

Закрыт старый топик.


 eXeL@B —› Вопросы новичков —› Нужна помощь по обходу проверки CRC
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати