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

Для новичков на что ещё следует обратить внимание:


Garik66

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

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

 

Начну здесь с этой статьи (само собой всё что здесь выкладываю - всё плюсую):

Статья Akama Здесь.. Новички обязательно прочтите её - очень многое станет более понятным.


Но начать нужно с прочтения именно этой статьи.


По фильтрам:

Начните с этого видео, тут не только про фильтры - очень полезное. 

Прочтите эту статью.

И ещё это сообщение.


По поиску адресов отвечающих за ID предмета прекрасное видео: здесь. 


По телепорту и Blink-телепорту : эта статья.


Ещё сюда конечно нужно добавить ссылку на видео-уроки  Kenga 

http://www.youtube.com/user/remizovm/playlists именно по ним начинал.

 

А также на видео-уроки Codera http://www.youtube.com/user/coder1994/playlists.

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

Здесь два полезных видео.

От поиска адресов до написания скрипта.

Рассмотрены:

1. Поиск адресов.

2. Анализ структуры.

3. Выбор фильтра.

4. Не много показана работа со Стеком.

5. Правильное содержание скрипта, т.е. автор не запихивает #9999 патронов в рожок (а записывает, правильное MAX значение, соответствующих величин и не записывает #99999999999 опыта, а прибавляет конечное небольшое значение (#10000).

 

В первом видео показана правильная работа с патронами ГГ (а именно с кол-вом в рожке и общем кол-вом патронов), если Вы будете делать так же, то никакого вылета из игры не будет.

Во втором - работа с опытом ГГ (лично я никогда опыт не взламываю, считаю, что не имеет смысла, но думаю автор опыт использовал, как пример). 

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

  • 2 недели спустя...

Перечитал свои темы "Скрипты для Fallout 3 от Garik66" и "Скрипты для Diablo: The Hell [v1.197] [ENG] от Garik66" решил добавить их сюда тоже, так как в них очень много полезного для новичков.

Темы смотреть здесь и здесь.

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

Для новичков по фильтрам (дополнение):

Для написания фильтров - нужно найти ID, по которому игра отличает нужный Вам адрес от других адресов с которыми работает выбранная Вами инструкция.

Не воспринимайте этот ID, как что-то супер-пупер уникальное. Главное назначение его - это уникальность Вашего адреса. В качестве ID можно выбрать всё что угодно, главное чтобы то, что вы выбрали всегда (при любой перезагрузки игры) оставалось тем же самым.

Вернёмся к моему сообщению (здесь ). В ней описан классический способ (через Анализ структур) и мой способ (подбор значения регистра в момент срабатывания инструкции). Так вот из моего опыта - классический способ более затратен по времени, чем подбор значения регистра. Нужно одинаковое количество перезагрузок игры для проверки повторяемости, но в классическом методе присутствует случай: если Вы удачливы - вы быстро подберёте ID; если не удачливы - задолбаетесь перебирать все фиолетовые значения. Если Вы просмотрите скрипты из этой моей темы, то увидите, что в качестве ID я использовал 1 (ну максимум 2 раза) ID найденное классическим способом, а остальные ID - ID регистры, подобранные моим способом.

Уточнение как пользоваться моим способом. Просто записываем на листок значения регистров для свой/чужой, перегружаем игру (на всякий случай 3 раза) и проверяем повторяемость.

СТАТИСТИКА: Чаще всего в качестве ID можно будет использовать значения регистра EAX. На втором месте - регистр ESP.

 

Здесь на видео я использую как раз свой метод нахождения фильтра.

Здесь на видео я использую классический способ (через Анализ структур).

 

Иногда долго не получается найти фильтр, тогда можно применить суммарный метод - использовать два фильтра:

Здесь на видео я использую как раз суммарный метод нахождения фильтра.

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

  • 2 недели спустя...

Для новичков - хочу обратить Ваше внимание ещё на два момента.

Для примера возьму свой текущий скрипт из этой темы.

1. Для чего нужна конструкция:

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

Если же Ваша константа (переменная) используется только внутри скрипта, то можно применять

уменьшенную конструкцию:

2. Для чего нужна конструкция:

Это связано с ограничением на использование инструкций. Любая инструкция представляет из себя запись: опкод операнд1, операнд2 (операндов может быть больше, а может быть и меньше).

возьмём наш пример: опкод - mov, операндами могут быть регистр, число, память. Но если операнд1 - память, то операнд2 - не может быть тоже памятью. Он может быль либо регистром, либо числом.

И в случае, когда нам необходимо из памяти записать в память, мы как раз и используем конструкцию приведённую выше.

Так как и [esi+00000184] и [Fora] это память, мы не можем записать так:

Так как из памяти в память довольно часть приходиться писать, мы довольно часто будем использовать эту конструкцию.

[ENABLE]alloc(newMem, 128)label(returnHere)label(OK)label(Fora)registersymbol(Fora)newMem:cmp [esi+30],1                    // Фильтр - наш гонщик 1 (остальные 0)jne OK                            // Если не НГ выполняем Оригинальный кодpush eax                          // Сохраняем значение регистраmov eax, dword ptr [Fora]         // Загружаем в него Фору по таймеруmov dword ptr [esi+00000184],eax  // Загружаем это значение в таймерpop eax                           // Восстанавливаем регистрjmp returnHere                    // И выходим из нашей инъекцииOK:                               // Оригинальный кодfadd dword ptr [esi+00000184]jmp returnHereFora:                             // Переменная Фора - добавьте в таблицуdd (float)-30                     // адрес с адресом "Fora" и названием                                  // "Фора (по умолчанию) 30 сек".NFSC.exe+2449A6:                  // Если Вы водите машину хуже чем я (смотритеjmp newMem                        // видео), то измените значение Форы на -60 секnop                               // или больше.returnHere:[DISABLE]NFSC.exe+2449A6:fadd dword ptr [esi+00000184]unregistersymbol(Fora)dealloc(newMem)  
[ENABLE]............label(Fora)         // предупреждаем компьютер, что будем использовать переменную Foraregistersymbol(Fora)// регистрируем переменную Fora............Fora:               // объявляем переменную Fora              dd (float)-30                     ............                                  [DISABLE]............unregistersymbol(Fora) // удаляем из памяти переменную Fora
[ENABLE]............label(Fora) // предупреждаем компьютер, что будем использовать переменную Fora............Fora:       // объявляем переменную Fora                       dd (float)-30                     ............                                  [DISABLE]............
push eax                          // Сохраняем значение регистраmov eax, dword ptr [Fora]         // Загружаем в него Фору по таймеруmov dword ptr [esi+00000184],eax  // Загружаем это значение в таймерpop eax                           // Восстанавливаем регистр
mov dword ptr [esi+00000184], dword ptr [Fora] // так писать нельзя и CE это не откомпилирует. 
Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Новичкам, продолжаю.

По шифрованным значениям в игре.

Видео от MasterGH здесь.

И вдогонку видео от меня здесь.

 

Правда это уже более продвинутый курс.

Так что если не прочитали, не просмотрели из первого поста и не много не пописали скриптов, пока сюда не идите, может оказаться не понятным.

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

  • 2 недели спустя...

Думаю, эту тему лучше оформить в виде одной большой шапки примерно такого вида:

 

[Тема0]

[Тема1]

[Тема2]

 

Где каждая тема будет ссылкой на, гм, тему на форуме или конкретный пост. Со временем тут будет довольно много информации, а крутить много страниц и постов в поисках интересного - не очень удобно.

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

Думаю, эту тему лучше оформить в виде одной большой шапки примерно такого вида:

 

[Тема0]

[Тема1]

[Тема2]

 

Где каждая тема будет ссылкой на, гм, тему на форуме или конкретный пост. Со временем тут будет довольно много информации, а крутить много страниц и постов в поисках интересного - не очень удобно.

Ты имеешь ввиду - собрать всю инфу в первый пост темы?

Хорошо, на днях сделаю и постараюсь почитабельней оформить

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

Можешь голосование об этом устроить, но по моему опыту - приведенный пример оформления работает отлично.

Я и без голосования с тобой согласен.

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

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

В первом посте можно аккуратно оформить всю информацию по пунктам. Лишние посты в этой теме я могу почистить.

MasterGH

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

 

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

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

  • 2 месяца спустя...
  • 4 года спустя...
17 часов назад, ЛАГАРИУМ сказал:

а как ето ,есть у тебя видео ?

Какое ещё видео? Подойдет любое,
Просто перечитай внимательно пост - ТЫК
Я в нем пишу что в качестве фильтра я использую уникальное значения регистров на момент срабатывания инструкции.
В нем могут быть и ID.
Например инструкция типа:
mov eax,[ebx+4*ecx]
ebx - в данном примере указатель
ecx - как раз тот регистр, значения которого являются ID (предмета, характеристики героя и т.д., и т.л.)

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

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

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

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