Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

Работа с памятью. Поиск статического адреса. Теория и практика. C#.

-

Школа Читера

- Основы основ - начинаем писать статьи для начинающих с целью создания полноценного раздела

Ответ
 
Опции темы
Старый 28.11.2011, 12:12   #1
Читер-спонсор
 Рыцарь-защитник
Аватар для Nickitee
 
Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(
Регистрация: 28.08.2009
Сообщений: 603
Популярность: 19129
Золото Zhyk.Ru: 500
Сказал(а) спасибо: 84
Поблагодарили 602 раз(а) в 321 сообщениях
 
Post Работа с памятью. Поиск статического адреса. Теория и практика. C#.

Вступление

Всем привет! Сегодня мы будем учиться работать с памятью на C# (СиШарп), а именно "обходить" DMA (Dynamic Memory Allocation) это плохая вещь в играх и не только, когда адрес нужного нам значение в памяти, при каждом запуске игры меняется. Игру я взял AceOfSpades(AOS), в ней можно через CE менять значение к примеру патронов, и это будет не визуально, НО, при каждом новом запуске адрес другой. Этот гайд будет без VAMemory, для него вообще ничего не надо будет, кроме одного класса, который мы добавим в проэкт.
p.s. использовать статический адрес можно не только для изменения,а ещё к примеру для чтения при создании бота.

Что нам понадобиться:

1. Компилятор C#, я советую MVS 2010.
2. Класс для работы с памятью.
3. CE.
4. Базовые знания C#.

Поехали...

1. Создадим проэкт.
2. Сохраним, изменим версию .net framerwork-a на 2.0
3. Удалим все не поддерживаемые библиотеки после этого и "using System.Linq"

4. Добавим в проэкт "ProcessMemoryReader.cs"
5. Теперь после
Код:
        public Main() // тут будет название вашей формы
        {
            InitializeComponent();
        }
Пишем:
Код:
 ProcessMemoryReaderLib.ProcessMemoryReader MemoryWorker = new ProcessMemoryReaderLib.ProcessMemoryReader();
6. Используем такое:
Код:
using System;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;
7. Теперь будем учиться работать с DMA, на пример я взял хак кубов для строения.
7.1 Запускаем AOS через сайт (выбираем сервер), запускаем CE, выбираем в CE "client.exe" (AceOfSpades)
7.2 Смотрим сколько у нас кубов - 50
7.3 Ставим 1 куб в игре, отсеиваем - 49
7.4 Делаем это пока не получим 1 адрес
7.5 Переносим адрес вниз

7.6 Щёлкаем на адрес правой кнопкой и выбираем "Find out what writes to this adress"
7.7 Если вылезло окошко с кнопкой "Ок" - жмём, появилось окошко мини дебагера с кнопкой "Stop" в углу справа.
7.8 Переходим в игру, ставим ещё один блок
7.9 В нашем дебагере появилось первая строчка, щёлкаем на неё 2 раза.

7.10 Самое интересное, теперь нам надо понять как генерируется динамический адрес
8. Теперь нам надо воплотить это в C#, создаём кнопку, кидаем на неё код:
Код:
            Process[] myprocess = Process.GetProcessesByName("client");
            if (myprocess.Length != 0)
            {
                MemoryWorker.ReadProcess = myprocess[0];
                MemoryWorker.OpenProcess();
                int byteswritten;
                int bytesread;
                byte[] memory;
                int pointerbase;
                int value;
                int eax;
                int FinishedAdress;

                pointerbase = 0x004A7F9C;
                memory = MemoryWorker.ReadProcessMemory((IntPtr)0x017dbb84, 4, out bytesread);
                eax = BitConverter.ToInt32(memory, 0);
                FinishedAdress = eax * 0x000003a0;
                FinishedAdress = FinishedAdress += pointerbase;
                value = 100;
                memory = BitConverter.GetBytes(value);
                MemoryWorker.WriteProcessMemory((IntPtr)FinishedAdress, memory, out byteswritten);
              }
Как видно, всё ужжжжасно легко.
9.Это всё . С вами был Nickitee.

Специально для Zhyk.ru
Права на гайд принадлежат Nickitee
Автор не несёт ответственности за злодеяния информацией
Вложения
Тип файла: zip MemoryWorker.zip (1.5 Кб, 334 просмотров)
________________
We are Ducks. We are birds. We like bread. We cryack. Cryack.

Последний раз редактировалось Nickitee; 01.12.2011 в 15:50.
  Ответить с цитированием
6 пользователя(ей) сказали cпасибо:
<<SadkO>> (15.01.2012), BassBoy (25.01.2012), крайслер (29.06.2012), Joker (28.11.2011), Хам!!! (28.11.2011), object (28.11.2011)
Старый 28.11.2011, 12:51   #2
Заблокирован
 Сержант
Аватар для Joker
 
Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(Joker сломал счётчик популярности :(
Регистрация: 22.03.2011
Сообщений: 160
Популярность: 17174
Сказал(а) спасибо: 194
Поблагодарили 300 раз(а) в 168 сообщениях
Отправить сообщение для Joker с помощью ICQ Отправить сообщение для Joker с помощью Skype™
 
По умолчанию Re: Работа с памятью. Поиск статического адреса. Теория и практика. C#.

Молодец, постарался!
  Ответить с цитированием
Старый 01.12.2011, 15:50   #3
Читер-спонсор
 Рыцарь-защитник
Аватар для Nickitee
 
Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(
Регистрация: 28.08.2009
Сообщений: 603
Популярность: 19129
Золото Zhyk.Ru: 500
Сказал(а) спасибо: 84
Поблагодарили 602 раз(а) в 321 сообщениях
 
По умолчанию Re: Работа с памятью. Поиск статического адреса. Теория и практика. C#.

Цитата:
Сообщение от glebkeyПосмотреть сообщение
Ошибка 1 Элемент "myprocess" не существует в текущем контексте.

Поправил .
________________
We are Ducks. We are birds. We like bread. We cryack. Cryack.
  Ответить с цитированием
Старый 01.12.2011, 16:32   #4
 Разведчик
Аватар для Хам!!!
 
Хам!!! на правильном пути
Регистрация: 03.03.2011
Сообщений: 42
Популярность: 95
Сказал(а) спасибо: 57
Поблагодарили 48 раз(а) в 27 сообщениях
 
По умолчанию Re: Работа с памятью. Поиск статического адреса. Теория и практика. C#.

А что делать если так?
тык
  Ответить с цитированием
Старый 02.12.2011, 18:41   #5
Читер-спонсор
 Рыцарь-защитник
Аватар для Nickitee
 
Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(Nickitee сломал счётчик популярности :(
Регистрация: 28.08.2009
Сообщений: 603
Популярность: 19129
Золото Zhyk.Ru: 500
Сказал(а) спасибо: 84
Поблагодарили 602 раз(а) в 321 сообщениях
 
По умолчанию Re: Работа с памятью. Поиск статического адреса. Теория и практика. C#.

Цитата:
Сообщение от Хам!!!Посмотреть сообщение
А что делать если так?
тык

жмём "Show disassambler"
смотрим что у нас последний раз делалось с ESI. (mov, imul, dec...)
и потом ESI + 0C - вот наш статический адрес.
Это только в 2 словах, а так на самом деле надо посидеть, подумать, если так нужно, то скажи что за игра/программа в аську. Мб чо нить придумаю.
________________
We are Ducks. We are birds. We like bread. We cryack. Cryack.
  Ответить с цитированием
Старый 07.06.2012, 12:09   #6
 Разведчик
Аватар для V11RUS
 
V11RUS лучик света в грозовом небеV11RUS лучик света в грозовом небеV11RUS лучик света в грозовом небеV11RUS лучик света в грозовом небеV11RUS лучик света в грозовом небеV11RUS лучик света в грозовом небеV11RUS лучик света в грозовом небе
Регистрация: 21.07.2011
Сообщений: 32
Популярность: 707
Сказал(а) спасибо: 53
Поблагодарили 18 раз(а) в 17 сообщениях
 
По умолчанию Re: Работа с памятью. Поиск статического адреса. Теория и практика. C#.

Для пб тоже можно таким способом написать некоторые функции? получается так да?
  Ответить с цитированием
Старый 07.09.2012, 16:22   #7
 Разведчик
Аватар для LetsKaktus
 
LetsKaktus никому не известный тип
Регистрация: 06.09.2012
Сообщений: 1
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Работа с памятью. Поиск статического адреса. Теория и практика. C#.

Цитата:
Сообщение от NickiteeПосмотреть сообщение
жмём "Show disassambler"
смотрим что у нас последний раз делалось с ESI. (mov, imul, dec...)
и потом ESI + 0C - вот наш статический адрес.
Это только в 2 словах, а так на самом деле надо посидеть, подумать, если так нужно, то скажи что за игра/программа в аську. Мб чо нить придумаю.

Что за мне не понятную фигню ты написал? Можно подробнее потому что ничего не понятно
  Ответить с цитированием
Старый 09.09.2012, 00:55   #8
 Разведчик
Аватар для M.r_REBUS
 
M.r_REBUS неизвестен в этих краях
Регистрация: 31.08.2012
Сообщений: 0
Популярность: -67
Сказал(а) спасибо: 0
Поблагодарили 4,294,967,294 раз(а) в 4,294,967,294 сообщениях
 
По умолчанию Re: Работа с памятью. Поиск статического адреса. Теория и практика. C#.

Тк отписали вить нужны базовые знания с++
________________
Репу пожалуста в - ,а спасибки я люблю если помог
Пожертвование:
Яндекс:410011224691140
  Ответить с цитированием
Ответ

Метки
гайд, cheat, dma, engine, memory


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Помогите!] Работа с памятью процесса l2.bin. *24* Общение и обсуждение, архив Lineage 2 1 27.11.2011 00:02
[Помогите!] поиск hex адреса в dll... liafa2 Вопросы, просьбы, обсуждение 0 27.09.2011 12:30

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 18:51.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net