вторник, 31 марта 2026 г.

Пепе изучает древний пепе crackme.exe

Вступление. 

Итак у нас есть древний пепе, exe файл. 

  • Называется сие чудо: CRACKME.EXE, 
  • Точный вес: 12.288 byte 
  • Распознан по имени: "CrackMe v1.0 Written by Cruehead / MiB". 

Detect It Easy показывет: Линковщик: Turbo Linker(2.25*,Delphi)[GUI32]

Но вот PEiD не согласен и показывает: MASM32 / TASM32 [Overlay]

Ватафа, так оно и есть. Короче написано на чём то древнем, 2000-х годов. ООП там даже не пахнет.

 

К самим алгоритмам.

Сразу же с точки входа в программу, автор сразу решил бить наповал (Если что программа достаточно компактная, все функции находятся радом). Он ищет в системе окно с классом: "No need to disasm the code!", если находит то закрывается. Но такого не произойдёт никогда, или почти никогда. Потом автор создаёт, главное окно с этим же классом ("No need to disasm the code!"), а также создаёт меню с этим же классом. Ну это просто такой прикол от автора.
 

Теперь точно к алгоритмам защиты.

Так выглядит программа (crackme.exe) 

 Выявленный алгоритм генерации Serial по Name:
  1. Обрезается введённое Name до 10 символов;
  2. Все символы Name к верхнему регистру; 
  3. Создаём переменную «КЛЮЧ»;
  4. «КЛЮЧ» = сумма всех ASCII кодов символов Name;
  5. «КЛЮЧ» = «КЛЮЧ» xor 0x5678;
  6. «КЛЮЧ» = «КЛЮЧ» xor 0x1234;
  7. Всё, готово!!! 

Ещё важный ньюанс, в имени не может быть цифр и спецсимволов, если будут, логика программы ломается и всегда будет MessageBox с ошибкой "No luck there, mate!".

 

Результат.

Так выглядит Keygen на Delphi 7.
 




 

Комментариев нет:

Отправить комментарий

Глобал близко? ч.2

Ну что глобал близко? Ну он не просто близко, а уже есть! Сейчас глянул, это было: 17 мая в 1:04. После того на втором  аккаунте сняли супр...