Перейти к содержанию

4 TrainMe с различными механизмами


holy

Рекомендуемые сообщения

Привет народ ) Наткнулся на данный раздел и появилось желание создать данные TrainMe.

 

Немного о них:

Написаны они на C и имеют 4 разных механизма защиты.

Программы представляют из себя простые окна с 2-мя кнопками "Add value" и "Dec value" которые прибавляют и убавляют значение на 10.

Требуется найти ключевые адреса программ и написать простенький трейнер (если влом писать код, можете просто описать алгоритм борьбы с механизмами)

 

Уровни сложности:

Level 1 - легкий

Level 2.1, Level 2.2 - средний

Level 3 - я считаю что сложный, но возможно тоже средний

 

Задание:

Требуется во всех 4х программах суметь установить значение в 5000 чтобы при нажатии кнопки "Add value" и "Dec value" оно изменялось корректно.

А также, если находите не статичные данные (т.е. динамическу.) обязательно найти указатель на это значение, иначе задание не является выполненным.

Не обязательно писать трейнеры к ним либо скидывать CheatEngine-файлы (хотя это было бы всё плюсом), достаточно просто описать ваш алгоритм действия.

 

Доступны по ссылке - http://rgho.st/private/8GPnCjVFd/060bcfffb341a2520c617e4516d8b7a4

  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

Записать прям на прямую и всё. 

TrainMe - Level 3.exe+1385 - 83 28 0A              - sub dword ptr [eax],0A { 10 }

Через mov dword ptr [eax],#5000 и всего делов.  И так де на прибавление. Или в каком смысле изменялось корректно :rolleyes: Там правда сверху прыжок идет на эти 3 байта nop но его затереть и всё. Всё пашет - не вылетает, а более и не надо не чего.

 

Ссылка на комментарий
Поделиться на другие сайты

18 час назад, holy сказал:

Требуется во всех 4х программах суметь установить значение в 5000 чтобы при нажатии кнопки "Add value" и "Dec value" оно изменялось корректно.

Табличка СЕ для всех 4.

 

18 час назад, holy сказал:

Level 3 - я считаю что сложный, но возможно тоже средний

Оказался проще всех остальных.

TrainMe Level All.CT

  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

О каких механизмах защиты шла речь?  Взломал все 4 приложения и что-то не заметил. Это которая проверка с выводом сообщения?

Алгоритм взлома везде одинаковый:

  1. Открыть CDA Code Dynamic Analysis.
  2. Начать запись.
  3. Нажать на каждую кнопочку.
  4. Поставить фильтр на запись с выполнением 1-2 функции.
  5. Написать скрипт на найденную функцию.

 

 

Изменено пользователем partoftheworlD
Ссылка на комментарий
Поделиться на другие сайты

2 hours ago, Garik66 said:

Табличка СЕ для всех 4.

 

Оказался проще всех остальных.

TrainMe Level All.CT

Извини, но почему-то скрипты только на Level 1 применялись :( На остальных не работало

 

3 hours ago, LIRW said:

Записать прям на прямую и всё. 


TrainMe - Level 3.exe+1385 - 83 28 0A              - sub dword ptr [eax],0A { 10 }

Через mov dword ptr [eax],#5000 и всего делов.  И так де на прибавление. Или в каком смысле изменялось корректно :rolleyes: Там правда сверху прыжок идет на эти 3 байта nop но его затереть и всё. Всё пашет - не вылетает, а более и не надо не чего.

 

Как простой вариант - согласен.

 

30 minutes ago, partoftheworlD said:

О каких механизмах защиты шла речь?  Взломал все 4 приложения и что-то не заметил. Это которая проверка с выводом сообщения?

Теоретически, я думал что все-таки народ попытается найти адреса значений и разобраться как сделать так, чтобы все работало не меняя код программы в памяти.

Описание защит (я не говорю что они суперские, просто я решил реализовать их):

- Level 1: Просто указатель, классика ) тут без комментариев

- Level 2.1: Фейковое значение (отображается значение которое хранится в зашифрованном виде в памяти). Тут требовалось найти адрес значения (находится достаточно быстро, приложение маленькое и неизвестные значения быстро отсеиваются), затем узнать как оно хранится и записать туда зашифрованное число 5000.

- Level 2.2: Контрольная сумма. При изменении значения в памяти проверяется контрольная сумма. Тут требовалось в дизассемблере Cheat Engine (ибо там пару строк) найти где хранится хеш-сумма и найти как туда сохраняется значение после нажатия клавиш Add и Dec.

- Level 3: Его я назвал сложнее предыдущих потому-что это модификация Level 1 с одним лишь исключением, в памяти не хранится указатель в явном виде, он хранится в памяти в зашифрованном виде.

 

В принципе, бит хак тоже уместен. Но это не такое красивое решение :)

 

Следующие TrainMe сделаю иначе, чтобы просто так не битхакали :D

Ссылка на комментарий
Поделиться на другие сайты

Garik66, накосячил слегка. Работают все )

Но если изменить в Level 2.2 значение и нажать "Add" или "Dec" то вылезет сообщение моё, о том что была обнаружена модификация значения )

Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, holy сказал:

Garik66, накосячил слегка. Работают все )

Но если изменить в Level 2.2 значение и нажать "Add" или "Dec" то вылезет сообщение моё, о том что была обнаружена модификация значения )

Я уже снова удалил. Проверять ломает, но на видео вроде видно, что всё работает правильно - т.е. на всех 4 при нажатии на обе кнопки значение 5000.

 

Ссылка на комментарий
Поделиться на другие сайты

4 минуты назад, holy сказал:

Но если изменить в Level 2.2 значение

А ты наверное про Value, его то трогать не нужно, я его в таблице оставил просто так, а нужно просто активировать скрипт и всё будет ХОККЕЙ.;)

Ссылка на комментарий
Поделиться на другие сайты

22 часа назад, holy сказал:

и появилось желание создать данные TrainMe.

holy, хоть было и легко, но всё равно интересно.:D

Ждём новых, более сложных задачек.;)

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.