holy Опубликовано 23 июня, 2016 Поделиться Опубликовано 23 июня, 2016 (изменено) Здравствуйте Написал относительно простенький TrainMe. Не смотря на его простоту, в нем есть то, с чем новичек сразу не справится Задание: - Найти указатель на значение (не забудьте проверить его, после перезапуска программы) и скинуть CT файл (мне будет интересно взглянуть на найденные вами адреса). Как вы это сделаете, откуда возьмете - не важно, главное чтобы из адресного пространства программы. Скачать Изменено 23 июня, 2016 пользователем holy Ссылка на комментарий Поделиться на другие сайты Поделиться
SpiritWithim Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 http://rgho.st/8rhlJXjV4 Ссылка на комментарий Поделиться на другие сайты Поделиться
holy Опубликовано 24 июня, 2016 Автор Поделиться Опубликовано 24 июня, 2016 1 hour ago, SpiritWithim said: http://rgho.st/8rhlJXjV4 Не работает: 1. Адрес 77C521F8 находится вне адресного пространства кода. 2. У меня адреса 77C521F8 вообще нет. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 (изменено) 12 часа назад, holy сказал: Найти указатель на значение (не забудьте проверить его, после перезапуска программы) holy, почему именно тебе нужны указатели? Я например очень давно их не ищу, изредка, если труднонаходимый фильтр ищу поинтеры 1 (максимум 2 уровня). В табличке куча адресов с указателями (найдены автопоиском СЕ, я не много из них выбрал, их там очень и очень много) и скрипт "pointer" с прикреплённым адресом "Value" , активируй скрипт, измени значение в трейнми и в адресе будет значение (это способ, который я обычно использую). TrainMe by holy - Chameleon LEVEL 2.CT Изменено 24 июня, 2016 пользователем Garik66 Ссылка на комментарий Поделиться на другие сайты Поделиться
holy Опубликовано 24 июня, 2016 Автор Поделиться Опубликовано 24 июня, 2016 3 minutes ago, Garik66 said: почему именно тебе нужны указатели? Потому-что скрипт написать в разы проще ) В чем тут тогда соревнование? Кто быстрее скачает файл и запустит CE? Иногда, когда реальное расположение значения невозможно поймать, как например в TrainMe Maze, я не прошу находить адреса, так как в том TrainMe реальное значение бегало по массиву и не имело статичного адреса. Именно для этого и присутствует пункт "Задание". В данном TrainMe всё просто, главное подумать в нужном направлении, и решив задание, ты не скажешь что оно было странным или глупым ) Поверь, правильный ответ у данного TrainMe действительно очень прост, главное понять код и всё станет ясно 16 minutes ago, Garik66 said: В табличке куча адресов с указателями (найдены автопоиском СЕ, я не много из них выбрал, их там очень и очень много) и скрипт "pointer" с прикреплённым адресом "Value" , активируй скрипт, измени значение в трейнми и в адресе будет значение (это способ, который я обычно использую). К сожалению, ни в одном из указателей не оказалось того значения Скрипт работает, но после выключения скрипта и изменения значения в программе - программа крэшится, скорее всего конфликтуют твои имена pointer и Pointer во время DISABLE (отключения) скрипта, изменил имя с Pointer на PointerS и скрипт стал корректно выключаться. Однако если захочешь, то подумай над тем, как узнать реальный адрес Ссылка на комментарий Поделиться на другие сайты Поделиться
SpiritWithim Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 24 минуты назад, holy сказал: Не работает: 1. Адрес 77C521F8 находится вне адресного пространства кода. 2. У меня адреса 77C521F8 вообще нет. Эт на Win XP указатель Ссылка на комментарий Поделиться на другие сайты Поделиться
holy Опубликовано 24 июня, 2016 Автор Поделиться Опубликовано 24 июня, 2016 Just now, SpiritWithim said: Эт на Win XP указатель Адрес не находится в адресном пространстве программы. Ты нашел не тот адрес. Да даже если бы ты нашел якобы тот адрес, то адрес работающий только на одной системе это не правильно. Адрес обычно находят в программе, а не в системных библиотеках. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 14 минуты назад, holy сказал: К сожалению, ни в одном из указателей не оказалось того значения Скрипт работает, но после выключения скрипта и изменения значения в программе - программа крэшится, скорее всего конфликтуют твои имена pointer и Pointer во время DISABLE (отключения) скрипта, изменил имя с Pointer на PointerS и скрипт стал корректно выключаться. Однако если захочешь, то подумай над тем, как узнать реальный адрес Странно у меня всё работает, не вылетает, перекачал ещё раз твою прогу (а то удалил) и записал видео: Ссылка на комментарий Поделиться на другие сайты Поделиться
holy Опубликовано 24 июня, 2016 Автор Поделиться Опубликовано 24 июня, 2016 31 minutes ago, Garik66 said: Странно у меня всё работает Выключи скрипт и нажми кнопку Inc value или Dec value. Программа вылетит. У меня так. Но не в этом суть, это не важно ) У меня Cheat Engine 6.5.1 может по этому. P.S. У тебя наверно какой-то плагин имеется в CE, ибо у тебя Lua Engine ругается. Либо скрипт либо ещё что-то, я не знаю ) Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 28 минуты назад, holy сказал: Выключи скрипт и нажми кнопку Inc value или Dec value. Программа вылетит. У меня так. Ну да, конечно нужно было переименовать либо pointer, либо Pointer (различия заглавная/не заглавная буква нет). Скрипт подправил, перезалил табличку. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 31 минуты назад, holy сказал: ибо у тебя Lua Engine ругается. Да ругается (об этом писал раньше), но не знаю с чем это связано, у меня СЕ 6.5 (не люблю промежуточные версии). Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 Не знай как будет работать или нет у других, но Base - 00401344 + 0 + 0 У меня всё работает. 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 2 часа назад, LIRW сказал: Не знай как будет работать или нет у других, но Base - 00401344 + 0 + 0 У меня всё работает. Жень, там два таких адреса: 1. Твой 2. [[["TrainMe by holy - Chameleon LEVEL 2.exe"+13A8]+0]+0] или [[[004013a8]+0]+0]. Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 24 июня, 2016 Поделиться Опубликовано 24 июня, 2016 59 минут назад, Garik66 сказал: Жень, там два таких адреса: 1. Твой 2. [[["TrainMe by holy - Chameleon LEVEL 2.exe"+13A8]+0]+0] или [[[004013a8]+0]+0]. Ну в принципе да Игорь. Я просто не стал второй давать, так как смысл то какой и этот рабочий - даже комп перегружал, ну проверить и работало всё. Адрес ищется за один заход за 5 секунд - прям брык и всё. Было 17 адресов в начале, закрыл программу, перезагрузил и осталось 4. Два из них оказались какие то странные, очень сомнительные и потом они перестали работать. А вот 2 адреса рабочих. Ссылка на комментарий Поделиться на другие сайты Поделиться
holy Опубликовано 24 июня, 2016 Автор Поделиться Опубликовано 24 июня, 2016 (изменено) 4 hours ago, LIRW said: Не знай как будет работать или нет у других, но Base - 00401344 + 0 + 0 У меня всё работает. Верно! Правильный подход. Суть данного TrainMe в том, что он обманывает CheatEngine тем, что выдает якобы "статический" адрес, который на самом деле при перезапуске программы меняется. На самом деле существует 3 таких адреса в коде (3 инструкции в которых присутствует адрес): При инициализации (присвоению значению 100) При увеличении / уменьшении значения на 10 При освобождении динамически выделенной памяти Но суть в том, чтобы добавить в таблицу CE адрес на одну из этих инструкций (например): CPU Disasm Address Hex dump Command Comments 004013A6 |. 8B15 83604000 MOV EDX,DWORD PTR DS:[406083] И добавить к ним оффсет, например в данном случае 004013A6 + 2 (опкод команды MOV в данном случае занимает 2 байта 0x8B15) и получаем указатель на указатель который указывает на значение. Изменено 24 июня, 2016 пользователем holy 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
zabiyako Опубликовано 16 августа, 2016 Поделиться Опубликовано 16 августа, 2016 Так держать! Будем учиться! Ссылка на комментарий Поделиться на другие сайты Поделиться
JIeXA Опубликовано 30 августа, 2016 Поделиться Опубликовано 30 августа, 2016 Что это такое А так pointer [[["TrainMe by holy - Chameleon LEVEL 2.exe"+00006000]+1ac]+0] -Win7x64 Ссылка на комментарий Поделиться на другие сайты Поделиться
holy Опубликовано 7 сентября, 2016 Автор Поделиться Опубликовано 7 сентября, 2016 On 30.08.2016 at 11:39 AM, JIeXA said: Что это такое Не знаю Вроде ничем не паковал. А если и пакую, то UPX'ом Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения