[Статья] "Поиск инжектов" или "Наш код в чужом процессе" - Zhyk.Ru Forums
Регистрация Главная Пользователи Все разделы прочитаны
Сообщения за день Справка Регистрация
Навигация
Zhyk.Ru LIVE! Реклама на Zhyk.Ru Доска почета top.zhyk.ru (beta) Премиум-аккаунт

"Поиск инжектов" или "Наш код в чужом процессе"

-

Разработка ПО для Perfect World

- Бюро разработчиков Zhyk.Ru: создание ботов, снифферов и прочих программ для Perfect World

Ответ
 
Опции темы Опции просмотра
Старый 27.05.2011, 01:34   #1
Reaper
 Фельдмаршал
Аватар для Dinmaite
 
Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(
Регистрация: 13.08.2009
Сообщений: 1,000
Популярность: 21767
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 107
Поблагодарили 827 раз(а) в 393 сообщениях
Отправить сообщение для Dinmaite с помощью ICQ
 
По умолчанию "Поиск инжектов" или "Наш код в чужом процессе"

Тема: Поиск кода для инжекта в игре Perfect World

Для чего это нужно?
В основном для ботов, самый простой пример - выделение моба.\
Наверняка все вы заметили что после обновления с джинами MHS-bot перестал верно выделять мобов.
Все это из за его системы выделения, а именно MHS просто помещает в ячейку цели WID (World IDentificator) цели.
На Делфи это выглядело бы так:
Код:
WriteProcessMemory(hProcess,ptr(Target_addr),@WID,ByteCount)
Однако простая запись в ячейку и до обновления была не лучшим выходом (первой атакой должен был быть скилл)
В чем плюс инжекта?
Фактически когда мы делаем иньекцию кода в память, мы заставляем работать функцию самого клиента.
При этом выделение происходит по всем правилам, как со стороны клиента, так и со стороны сервера.

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

Разделим работу на 3 этапа:

I этап - Поиск возможных адресов функций с помощью СЕ

II этап - Выделение нужной нам функции, и подготовка к написанию кода (на этом этапемы будем использовать OllyDbg)

III этап - Написание кода
Вложения
Тип файла: rar Sample.rar (2.8 Кб, 492 просмотров)
  Ответить с цитированием
18 пользователя(ей) сказали cпасибо:
◄Hronos► (18.05.2013), 388672 (23.08.2013), 777gamer777 (03.06.2011), AEBus (27.05.2011), АпАпАпчих (07.11.2012), bestbeer (07.08.2014), colombo_nik (17.05.2013), kyky4er (25.03.2014), lcd1232 (19.02.2012), Meg(0) (23.05.2012), Хакерок:) (01.11.2011), Хам!!! (12.11.2011), RemoteAccess (27.06.2011), Sanych89 (27.05.2011), scitelz (23.01.2014), Sirioga (27.05.2011), Unheilig)) (30.09.2013), VeTaL_UA (27.05.2011)
Старый 08.07.2011, 21:03   #2
 Разведчик
Аватар для megasniper
 
megasniper никому не известный тип
Регистрация: 02.05.2010
Сообщений: 2
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Отправить сообщение для megasniper с помощью Skype™
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

откуда в
Код:
GetWindowThreadProcessId( FindWindow('ElementClient Window', nil), @PID);
взялось 'ElementClient Window'? вернее, как это определили?
  Ответить с цитированием
Старый 08.07.2011, 21:41   #3
Reaper
 Фельдмаршал
Аватар для Dinmaite
 
Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(
Регистрация: 13.08.2009
Сообщений: 1,000
Популярность: 21767
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 107
Поблагодарили 827 раз(а) в 393 сообщениях
Отправить сообщение для Dinmaite с помощью ICQ
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Цитата:
Сообщение от megasniperПосмотреть сообщение
откуда в
Код:
GetWindowThreadProcessId( FindWindow('ElementClient Window', nil), @PID);
взялось 'ElementClient Window'? вернее, как это определили?

Интересный вопрос.
Функия есть такая в WinApi - GetClassName.
  Ответить с цитированием
Старый 21.08.2011, 10:12   #4
 Пехотинец
Аватар для Jok3r666
 
Jok3r666 скоро будет известенJok3r666 скоро будет известенJok3r666 скоро будет известен
Регистрация: 17.05.2010
Сообщений: 53
Популярность: 204
Сказал(а) спасибо: 11
Поблагодарили 15 раз(а) в 6 сообщениях
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Цитата:
В комментарии напротив Arg1 теперь написано 80101033, пока что для нас это цифра. Сравним ее с WID того моба, которого мы выделили.

У меня в EDI другое значение и причем в нем присутствует буква, в чем беда может быть? на айди в таргете оно ваще не похоже.
  Ответить с цитированием
Старый 21.08.2011, 10:45   #5
Модератор
 Рыцарь
Аватар для Sirioga
 
Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(Sirioga сломал счётчик популярности :(
Регистрация: 19.11.2008
Сообщений: 384
Популярность: 13343
Сказал(а) спасибо: 121
Поблагодарили 216 раз(а) в 109 сообщениях
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Цитата:
Сообщение от Jok3r666Посмотреть сообщение
У меня в EDI другое значение и причем в нем присутствует буква, в чем беда может быть? на айди в таргете оно ваще не похоже.

Проверься с помощью консоли. Команда d_npcid.
  Ответить с цитированием
Старый 21.08.2011, 10:55   #6
 Пехотинец
Аватар для Jok3r666
 
Jok3r666 скоро будет известенJok3r666 скоро будет известенJok3r666 скоро будет известен
Регистрация: 17.05.2010
Сообщений: 53
Популярность: 204
Сказал(а) спасибо: 11
Поблагодарили 15 раз(а) в 6 сообщениях
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

шок все правильно, с буквами, тогда в какой тип переменной выкидывать таргет, что бы вывести его правильно в стринги ? и кст через CE выдает тоже не правильно получается, или может в таргет не тот id передается?
  Ответить с цитированием
Старый 21.08.2011, 11:00   #7
Бандеровец
 Лейтенант-командор
Аватар для VeTaL_UA
 
VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(VeTaL_UA сломал счётчик популярности :(
Регистрация: 12.08.2010
Сообщений: 729
Популярность: 30569
Золото Zhyk.Ru: 1
Сказал(а) спасибо: 57
Поблагодарили 645 раз(а) в 386 сообщениях
Отправить сообщение для VeTaL_UA с помощью ICQ Отправить сообщение для VeTaL_UA с помощью Skype™
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Цитата:
Сообщение от Jok3r666Посмотреть сообщение
У меня в EDI другое значение и причем в нем присутствует буква, в чем беда может быть? на айди в таргете оно ваще не похоже.


1)Включи инженерный калькулятор;
2)Выбери там hex;
3)Впиши туда то, что в EDI;
4)Переставь на dec.
5)???????
6)Profit
________________
Принимаются пожертвования любых размеров в фонд поддержки начинающих программистов
Кошельки: WMZ - Z276844220882; WMR - R231028582939; WMU - U394136909210; ЯД - 410011494605270.

Perfect World: PWDatabaseScanner, Client, PWNickRenamer, PWClientRenamer, База логинов PW, Гайд по варУ, Зарабатываем репутацию.
Delphi: Авторизация на сайте с помощью Indy, Загрузка изображений с интернета в TImage с помощью Indy, Автоматическая смена стандартной версии Indy в Delphi на Indy 10.0.76 / 10.1.5, Основы парсинга с помощью Indy, Делаем Updater до программы с помощью Indy.
Other: ShowIP, FFUUU смайлы в QIP, Как играть в Minecraft (видеокурс), Как мы захватили человечество :D, Энергия в Лицемер/TopFace, PasGen.



Последний раз редактировалось VeTaL_UA; 21.08.2011 в 11:27.
  Ответить с цитированием
Пользователь сказал cпасибо:
Jok3r666 (21.08.2011)
Старый 25.08.2011, 20:50   #8
 Разведчик
Аватар для Fanky3
 
Fanky3 на правильном путиFanky3 на правильном пути
Регистрация: 18.01.2011
Сообщений: 14
Популярность: 145
Сказал(а) спасибо: 3
Поблагодарили 33 раз(а) в 22 сообщениях
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

все бы хорошо но вот как найти инжекты перемещения по карте, или заставить бота двигаться по вейпоинтам с помощью инжектов...
  Ответить с цитированием
Старый 25.08.2011, 21:11   #9
Reaper
 Фельдмаршал
Аватар для Dinmaite
 
Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(
Регистрация: 13.08.2009
Сообщений: 1,000
Популярность: 21767
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 107
Поблагодарили 827 раз(а) в 393 сообщениях
Отправить сообщение для Dinmaite с помощью ICQ
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Цитата:
Сообщение от Fanky3Посмотреть сообщение
все бы хорошо но вот как найти инжекты перемещения по карте, или заставить бота двигаться по вейпоинтам с помощью инжектов...

Найти инжект перемещения. Тоесть повторить для перемещения, по аналогии, то что было написано выше.
Составить карту вейпоинтов.
  Ответить с цитированием
Старый 27.08.2011, 14:28   #10
 Пехотинец
Аватар для Jok3r666
 
Jok3r666 скоро будет известенJok3r666 скоро будет известенJok3r666 скоро будет известен
Регистрация: 17.05.2010
Сообщений: 53
Популярность: 204
Сказал(а) спасибо: 11
Поблагодарили 15 раз(а) в 6 сообщениях
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Цитата:
P1:=aPParams^.WID;

Можно узнать что обозначает этот символ ^ и для чего он служит?
  Ответить с цитированием
Старый 27.08.2011, 22:33   #11
 Разведчик
Аватар для Domin.5
 
Domin.5 никому не известный тип
Регистрация: 27.08.2011
Сообщений: 1
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

aPParams - принадлежит типу PParams, что является указателем на тип TParams.
короче говоря, переменная aPParams - это 4 байта, ссылающиеся на структуру TParams.
^ обозначает, что обращаешься ты не к адресу, а к структуре, по нему лежащей.
фуф. надеюсь, по-русски получилось.
  Ответить с цитированием
Старый 27.08.2011, 22:37   #12
Reaper
 Фельдмаршал
Аватар для Dinmaite
 
Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(
Регистрация: 13.08.2009
Сообщений: 1,000
Популярность: 21767
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 107
Поблагодарили 827 раз(а) в 393 сообщениях
Отправить сообщение для Dinmaite с помощью ICQ
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Разименование указателя.
  Ответить с цитированием
Старый 28.08.2011, 10:07   #13
 Пехотинец
Аватар для Jok3r666
 
Jok3r666 скоро будет известенJok3r666 скоро будет известенJok3r666 скоро будет известен
Регистрация: 17.05.2010
Сообщений: 53
Популярность: 204
Сказал(а) спасибо: 11
Поблагодарили 15 раз(а) в 6 сообщениях
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Цитата:
Сообщение от Domin.5Посмотреть сообщение
aPParams - принадлежит типу PParams, что является указателем на тип TParams.
короче говоря, переменная aPParams - это 4 байта, ссылающиеся на структуру TParams.
^ обозначает, что обращаешься ты не к адресу, а к структуре, по нему лежащей.
фуф. надеюсь, по-русски получилось.

получилось все класно)) все понял

Посоветуйте, сайт где хорошо разжевано обучение работе с памятью, указателями и т.д. с нуля желательно ибо с памятью дел ваще не имел.
  Ответить с цитированием
Старый 30.08.2011, 02:03   #14
 Пехотинец
Аватар для ktulx
 
ktulx на правильном пути
Регистрация: 01.08.2011
Сообщений: 70
Популярность: 24
Сказал(а) спасибо: 45
Поблагодарили 7 раз(а) в 7 сообщениях
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

Здравствуйте!

Большое спасибо за статью, очень понравилась, всё понятно описано.
Не могли бы вы подсказать мне, желательно на примере, для наглядности, как заинжектить код, выполняющий какое-нибудь элементарное действие? Например есть форма с единственной кнопкой, при нажатии на которую, персонаж выделяет моба с заданным WID, после чего просто перемещается на заданные координаты. Я был бы очень признателен. Руки вроде прямые, чай, сигареты на ночь есть =) Практики почти нет. Ах да, пользуюсь AutoIt.
  Ответить с цитированием
Старый 30.08.2011, 02:34   #15
Reaper
 Фельдмаршал
Аватар для Dinmaite
 
Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(Dinmaite сломал счётчик популярности :(
Регистрация: 13.08.2009
Сообщений: 1,000
Популярность: 21767
Золото Zhyk.Ru: 350
Сказал(а) спасибо: 107
Поблагодарили 827 раз(а) в 393 сообщениях
Отправить сообщение для Dinmaite с помощью ICQ
 
По умолчанию Re: "Поиск инжектов" или "Наш код в чужом процессе"

На автоите не подскажу, писать на нем я не могу да и не хочу.
А вообще во вложении к певому посту, таки, предоставлен код, выполняющий простейшее действие - выделяющий моба с заданным WID.
А для того что нужно вам, таки, необходимо использовать 2 инжекта (выеление моба и перемещение).

Вообще желаю спокойной ночи.
  Ответить с цитированием
Ответ

Опции темы
Опции просмотра

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Информация] """""""""""Лучшая тема по итогам голосования"""""""""" +ESEL- Общение и обсуждение, архив Point Blank 0 16.04.2011 10:12
"""МОЛОДЦЫ!!""" - обнова идет - читы фиксят! Zgystok Общение и обсуждение CrossFire 3 29.03.2011 18:32
[Руководство] "Воизбежание"-"Логин в прцессе подключения"+"Дисконект при выборе сервера" K.Rezonans Баги, читы и статьи по Point Blank 19 27.06.2010 03:24

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

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

Пишите нам: forum@zhyk.ru
Copyright © 2019 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net