Мудреный CrackMe, как это сделано?

Тема в разделе "WASM.RESEARCH", создана пользователем Pupa, 5 фев 2006.

  1. Pupa

    Pupa New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2006
    Сообщения:
    11
    В общем нашел тут на просторах кое-что, не пойму как защищается.

    Смысл кряка изменить название кнопки, надпись или текст.

    Два файла, один вроде с контрольной суммой. Если все гуд, то прога синей краской красится, а если чего-то ее не устраивает то так и говорит что де крак нашла.

    Есть идеи?

    [​IMG] _651346338__CrackMe.rar
     
  2. Twister

    Twister New Member

    Публикаций:
    0
    Регистрация:
    12 окт 2005
    Сообщения:
    720
    Адрес:
    Алматы
    Эта прога мне до боли знакома ;).

    Защиту эту разрабатывает некий Pantalone, найти его можно на VBStreets.Ru. Соответственно и писана она тоже на VB. В этом и заключается вся сложность.

    Сам хочу за нее основательно сесть - просто за 5 минут ее не ломанешь, а времени свободного почти нет...
     
  3. Pupa

    Pupa New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2006
    Сообщения:
    11
    То что VB это и ежу понятно, я на краклабе ее запостил, народ там философскими изречениями на тему holly war изошелся и темку благополучно прикрыли, сачки одним словом :)

    Сам поколупался, понял что MessageBox ничего полезного в себе не таит как обычно водится, все гораздо хужее :)
     
  4. Twister

    Twister New Member

    Публикаций:
    0
    Регистрация:
    12 окт 2005
    Сообщения:
    720
    Адрес:
    Алматы
    У меня тоже результатов почти нет.

    Вся фишка в вызове функции CallByName. С ее помощью вызывается процедура отрисовки синего фона и проверки (так мне кажется). И вся загвоздка в том, что отладчик (Olly, WDASM) у меня не хочет ставить бряки, точнее выдает непонятную ошибку. И я не могу отследить адрес вызываемой процедуры...
     
  5. AV2004

    AV2004 New Member

    Публикаций:
    0
    Регистрация:
    14 ноя 2004
    Сообщения:
    11
    [deleted]
     
  6. diamond

    diamond New Member

    Публикаций:
    0
    Регистрация:
    21 май 2004
    Сообщения:
    507
    Адрес:
    Russia
    Там целостность exe'шника подсчитывается банальным CRC32 с исключением байт по адресам, указанным в текстовом файле (для этого он и нужен). Так что если патч не изменяет CRC, то программа ничего не заметит :)

    После самого патча можно запустить для восстановления CRC прилагаемую несложную программу - она за счет изменения последнего dword'а сделает все как надо.

    [​IMG] 473711714__save_crc.c
     
  7. diamond

    diamond New Member

    Публикаций:
    0
    Регистрация:
    21 май 2004
    Сообщения:
    507
    Адрес:
    Russia
  8. Pupa

    Pupa New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2006
    Сообщения:
    11
    Как понять "для восстановления CRC"?

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

    diamond New Member

    Публикаций:
    0
    Регистрация:
    21 май 2004
    Сообщения:
    507
    Адрес:
    Russia
    Не меняя файла crackme.txt, патчим crackme.exe как заблагорассудится, после чего запускаем save_crc.exe (должна находиться в одном каталоге с crackme.*) - после этого программа должна работать без обнаружения кряка
     
  10. Pupa

    Pupa New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2006
    Сообщения:
    11
    Гыг, работает :)

    В чем фишка?
     
  11. Pupa

    Pupa New Member

    Публикаций:
    0
    Регистрация:
    5 фев 2006
    Сообщения:
    11
    Кстати, как тебе удается в этой каше че-нить понять вообще?