Логотип игрового форума RF-Cheats.ru    
Новости онлайн игр Правила форума Чёрный рынок Платные услуги Гаранты Арбитраж

Вернуться   Чит портал RF-Cheats.ru - форум читеров и ботоводов > Другие многопользовательские игры > Остальные online игры > Развивающиеся и малопопулярные онлайн игры > Karos: Начало читы
Важная информация

Karos: Начало читы

: Боты, баги, читы для Karos Online
Читы и обход фроста для RF Online без хайдаБоты и читы для Perfect World бесплатно без хайдаМоды и читы для World of Tanks (WoT) бесплатно без хайдаМоды и читы для Armored Warfare бесплатно без хайдаБоты и читы для DOTA 2 бесплатно без хайдаБоты и читы для Black Desert Online бесплатно без хайдаЧиты на ArcheAge бесплатно без хайдаЧиты для Warface бесплатно без хайдаВзлом ВКонтакте и ОдноклассниковСписок разделов со всеми играмиЧиты для онлайн игр
 

Ответ
 
Опции темы
Старый 27.06.2013, 15:11   #1
dark
Администратор
Аватар для dark
OFFLINE
Регистрация: 09.04.2007
Сообщений: 940
Благодарностей:
28,332 всего
Мнения: + 15401
Репутация: 91656
Отправить сообщение для dark с помощью ICQ Отправить сообщение для dark с помощью Skype™

Обход nProtect GameGuard на примере игры Кабал Онлайн и Карос Начало


Обход GameGuard




На выходных попросили сделать безоткатку BM3-скиллов, wallhack (хождение сквозь препятствия) и обход защиты от кликеров для официального сервера cabal.zzima.com, т.к. все текущие версии волхака и все кликеры палились их защитой gameguard и собственно она вышибала клиента из игры после 1 минуты беготни с WH. А кликеры вообще не могут аттачиться к игре. Беспалевный волхак и дамагхак я реализовал, подробнее тут и тут - из игры не вышибает. Обход защиты кликеров тоже сделал, за этим в скайп - rfcheats. Параллельно сделал пару бесплатных примочек, которые помогут вам лучше изучить защиту "nProtect gameguard" и собственно обойти её. Обход (или взлом) gameguard актуален для игр Карос онлайн, Кабал онлайн, Седьмой элемент, Forsaken World, MU Online и думаю многих других.

Начну с того, что в Windows 7 GameGuard аттачит свой модуль npggNT.des (Usermode Filtering Library Rev 738) ко всем процессам системы, который в свою очередь хукает ряд функций в целевых программах не давая им видеть процесс игры и аттачиться к ней. В Windows XP это реализовано драйвером и снимается легко тем же самым RKU unhooker. Тут ничего интересного нет, для обхода в Windows 7/8 я сделал следующие вещи:
  • Total DLL Injector 1.4 - новая версия видит в списке задач игровой клиент. То есть позволяет инжектить в игру свои DLL-ки в любой момент, даже после входа в игру.
  • nProtect gameguard unhider - до запуска игры вы можете приаттачить эту DLL к любой программе, которой требуется видеть процесс игры. Это может быть Cheat Engine, OllyDbg, ArtMoney, API-шпионы, Proccess Explorer, кликеры и так далее. После загрузки игры, она будет видна нужной вам программе. При этом ваша программа сможет к ней аттачиться.
Всё это для Windows 7.

Теперь о вещах посложнее. Почитав забугорные форумы, я понял, что иностранцы сами до сих пор не научились снимать внутри-игровые хуки GG. О них и поговорим. GameGuard хукает следующий ряд функций:
  • SendMessageA
  • DispatchMessageW
  • SendInput
  • PostMessageA
  • PostMessageW
  • GetPixel
  • GetWindowThreadProcessId
  • ZwQuerySystemInformation
  • CreateProcessInernalW
  • ReadProcessMemory
  • OpenProcess
  • ZwDeviceIoControlFile
  • ZwSuspendThread
  • ZwTerminateProcess
  • VirtualProtect
  • WriteProcessMemory
  • ReadProcessMemory
И это вероятно даже не всё. При этом, хукаются также функции уровнем ниже (Native API), что весьма напрягает. Целью хуков является не допущение их использования внедрёнными DLL, а также тупо палево подгружаемых читов. Кстати, о палеве. Некоторые функции (например, ReadProcessMemory) отрабатывают, но инфа об этом оседает в логах GG, которые лежат по пути: Cabal\Data\UserData
Для их расшифровки можете скачать этот файл, поместить в эту же папку и запустить. После чего появится файл decrypted_dlog.txt, в котором лежит список палевных DLL. Кстати, в нём только названия и среди них оказался drweb32.dll Так что читы можно скрывать под видом антивирей.

Вернёмся к хукам. Тут начинается самое интересное, GameGuard устанавливает для всех загруженных системных и защитных DLL-ок права доступа PAGE_EXECUTE_WRITECOPY на секцию кода, соответственно не сменив права обратно на PAGE_EXECUTE_READWRITE, при попытке снятия хука ваш процесс потухнет. Соль в том, что при этом игра хукает следующие функции:
  • VirtualProtect
  • ZwProtectVirtualMemory
  • NtProtectVirtualMemory
Таким образом получается замкнутый круг - вы не можете снять хук с VirtualProtect, потому что нет соответствующих прав, которые вы не можете изменить из-за хука VirtualProtect :) Я сварганил вот такой вариант:
Код:
bool UnsetProtection(void* addr) {
	MEMORY_BASIC_INFORMATION mbi;
	VirtualQuery((void*)addr, &mbi, sizeof( mbi ) );

	DWORD ZwProtectVirtualMemoryAddr = (DWORD)GetProcAddress(GetModuleHandle("ntdll.dll"),"ZwProtectVirtualMemory");
	DWORD CurProcHandle = (DWORD)GetCurrentProcess();

	if(ZwProtectVirtualMemoryAddr == 0) {
		MessageBox(0, "ZwProtectVirtualMemory address not found", "Error", MB_ICONERROR);
		return false;
	}

	_asm
	{
		mov esi, ZwProtectVirtualMemoryAddr
		add esi, 5
		push [mbi.Protect]
		push 0x40
		push mbi.RegionSize
		push mbi.BaseAddress
		push CurProcHandle
		mov eax,4d
		call esi
	}

	return true;
}
Он выполняет затёртую хуком инструкцию, после чего вызывает ZwProtectVirtualMemory+5, тем самым перепрыгивая через хук геймгварда.
Если не хочется ковыряться со снятием защиты с остальных функций, могу предложить вариант попроще, где за вас уже всё сделали.

Итак, готовый способ снятия защиты памяти в играх, защищённых nProtect gameguard.
Total DLL Injector 1.4 - запускаете от админа последнюю версию программы, причём желательно перед запуском игры. Данная версия создаёт пайп: "\\\\.\\pipe\\RF-Cheats.ru.pipe". Далее подгружаете свою собственную DLL к любой игре с GG (в частности к Cabal) и из неё в выше-указанный пайп записываете структуру в следующем виде:
Код:
typedef struct {
	DWORD pid;
	DWORD addr;
	BOOL isDebug;
} packet;
То есть по сути передаёте в пайп PID процесса и адрес, по которому нужно снять защиту. Ну и "isDebug":
1 - после снятия защиты, Тotal Injector сообщит вам о результате
0 - silent mode
Разумеется всё в бинарном виде, т.е. посылка должна получится 9 байт.
Единственное, хочу отметить, что защита снимается не мгновенно, поэтому когда защита будет снята, в пайп вы получите ответ "OK".
Всё. Причём защита будет снята не только с этого адреса, а во всём промежутке между BaseAddress и BaseAddress+RegionSize. После этого можете снимать хуки GG, ставить свои, в общем делать что угодно. Но обращаю ваше внимание на то, что GG через некоторое время (пару минут) вернёт свои хуки обратно. От этого защититься можно кучей способов, например, воспользоваться их же оружием с VirtualProtect Хукаете VirtualProtect чем-нибудь типа:

Код:
BOOL WINAPI MyVirtualProtect(LPVOID lpAddress,SIZE_T dwSize,DWORD flNewProtect,PDWORD lpflOldProtect) {
	if(dwSize == 31337)
		return OrigVirtualProtect(lpAddress,dwSize,flNewProtect,lpflOldProtect);

	return TRUE; // :D
}
После чего ставите права 0x80 на секцию кода Kernel32.dll, KernelBase.dll, ntdll.dll

Ну а если серьёзно, то хорошим вариантом было бы патчить код функций-перехватчиков. Тогда и хуки снимать не нужно будет, т.е. без лишнего палева. Кстати, о палеве. Все выше-описанные вещи были реализованы средствами DLL. И ни один из представленных методов не палился GG и не оседал в его логах. Проверено.

Итог: аттачится к игре вы теперь можете и дебаггером, и чем угодно. Аттачить к ней свои DLL тоже можете. Снимать защиту памяти можете, а соответственно снимать/ставить хуки тоже. Карты в руки :) Осталось дело за малым. С такими возможностями взлом nProtect gameguard становится гораздо более простым и приятным занятием.

Рабочий волхак, безоткатку скиллов для кабала и обход защиты от кликеров в GameGuard распространятся бесплатно не будут, т.к. пофиксят добавив мне геморроя) За ними можете обратиться ко мне в скайп "rfcheats".

Последний раз редактировалось dark; 06.11.2013 в 09:54.

Создание читов на заказ | Правила форума | Обмен электронных валют

База данных кидал: blacklist.rf-cheats.ru
Обязательно проверяйте человека через чёрный список прежде чем совершать с ним сделку.
 
Ответить с цитированием
Сказали спасибо:
whore (18.11.2016) , augue (25.10.2016) , aslan24 (19.08.2016) , nbsexst (13.04.2016) , Алина Ми (06.03.2016) , vadya_sh1 (21.02.2016) , Ubi (31.01.2016) , Max_LX (31.01.2016) , GameOldHack (01.11.2015) , artasak (23.10.2015) , Agoner (01.09.2015) , Adfazer (23.08.2015) , mailer (26.11.2014) , Серафим75 (10.11.2014) , Арсенчи (11.08.2014) , Crouli (26.06.2014) , гномик (26.05.2014) , Unfaithful (23.05.2014) , Дейтерий (13.04.2014) , !BleaK! (21.02.2014) , Gold_SPACES_RU (24.01.2014) , Devilry-PvP (21.01.2014) , Pro_XBocT (14.01.2014) , Gepart (12.12.2013) , Krauler (31.10.2013) , Jerami31 (25.10.2013) , mtk (07.09.2013) , noise (13.07.2013) , Xmin (05.07.2013) , traxinator (04.07.2013) , lagerok (03.07.2013) , MoXxX (03.07.2013) , [Andy] (03.07.2013) , Paladin (02.07.2013) , SoulSale (29.06.2013) , iMaks (29.06.2013) , Jzas01 (29.06.2013) , Big Bad Sensey (28.06.2013) , buraymk2 (28.06.2013) , maxim_1993 (28.06.2013) , tramble (28.06.2013) , palanik (28.06.2013) , APXAHGEL (27.06.2013)


Старый 28.06.2013, 21:24   #2
buraymk2
Адмирал-Генерал
Аватар для buraymk2
OFFLINE
Регистрация: 13.04.2011
Сообщений: 145
Благодарностей:
579 всего
Мнения: + 1276
Репутация: 1738
Отправить сообщение для buraymk2 с помощью Skype™

Дарк, я в ахуе

 
Ответить с цитированием
Сказали спасибо:
Aliens (07.12.2016) , Stive111 (03.06.2016) , gadzilla666 (20.08.2015) , saki4 (25.06.2014) , Pro_XBocT (14.01.2014) , Krauler (31.10.2013) , iMaks (29.06.2013) , toxo (28.06.2013)
Старый 29.06.2013, 00:45   #3
Jzas01
Постоялец
Аватар для Jzas01
OFFLINE
Регистрация: 08.02.2009
Возраст: 23
Сообщений: 103
Благодарностей:
57 всего
Мнения: + 1083
Репутация: 172

Огромное спасибо , теперь нормас пашет вх)

 
Ответить с цитированием
Старый 03.07.2013, 11:21   #4
dark
Администратор
Аватар для dark
OFFLINE
Регистрация: 09.04.2007
Сообщений: 940
Благодарностей:
28,332 всего
Мнения: + 15401
Репутация: 91656
Отправить сообщение для dark с помощью ICQ Отправить сообщение для dark с помощью Skype™

Цитата:
Сообщение от buraymk2 Посмотреть сообщение
Дарк, я в ахуе
почему? Потому что я стариной решил тряхнуть?

Создание читов на заказ | Правила форума | Обмен электронных валют

База данных кидал: blacklist.rf-cheats.ru
Обязательно проверяйте человека через чёрный список прежде чем совершать с ним сделку.
 
Ответить с цитированием
Сказали спасибо:
kendik (14.04.2015) , Paladin (06.02.2014) , Pro_XBocT (14.01.2014) , Krauler (31.10.2013) , Melkei (17.07.2013)
Старый 03.07.2013, 12:14   #5
A.F.I
Модератор RF Online
Аватар для A.F.I
OFFLINE
Регистрация: 28.07.2010
Сообщений: 797
Благодарностей:
871 всего
Мнения: + 1519
Репутация: 2614

dark, я правильно понимаю, что теперь можно юзать тот же WPe Pro для отправки пакетов на американском офф сервере rfonline.gmaescampus.com, на котором стоит данная защита?? Ведь вся проблема была именно в данных хуках, которые накладывает GG на процесс rf_online.bin

Все верно?7
 
Ответить с цитированием
Сказали спасибо:
психСигрушкой (10.07.2013)
Старый 03.07.2013, 12:27   #6
dark
Администратор
Аватар для dark
OFFLINE
Регистрация: 09.04.2007
Сообщений: 940
Благодарностей:
28,332 всего
Мнения: + 15401
Репутация: 91656
Отправить сообщение для dark с помощью ICQ Отправить сообщение для dark с помощью Skype™

Цитата:
Сообщение от A.F.I Посмотреть сообщение
dark, я правильно понимаю, что теперь можно юзать тот же WPe Pro для отправки пакетов на американском офф сервере rfonline.gmaescampus.com, на котором стоит данная защита?? Ведь вся проблема была именно в данных хуках, которые накладывает GG на процесс rf_online.bin

Все верно?7
Я точно не знаю, как работает WPE и в чём загвоздка, но могу предположить, что WPE работает за счёт хуков send(), recv(), connect(). Для этого ему надо внедряться в игровой процесс. Если всё именно так, то для аттача WPE к игре надор юзать nProtect gameguard unhider.
Далее будет два варианта: либо траффик потечёт, либо нет Если второй вариант, то WPE не смог установить хуки на нужные ему функции, а соответственно нужно снимать защиту памяти с секции кода wsock32.dll. Как это делается - я в статье описал и готовое решение показал. Инжектишь в игру свою DLL-ку до аттача WPE. В твоей длл делаешь такую фигню:
Код:
DWORD addr = (DWORD)GetProcAddress(GetModuleHandle("wsock32.dll"), "recv");
DWORD pid = GetCurrentProcessId();
char buffer[9];

memcpy(buffer, &pid, 4);
memcpy(buffer + 4, &addr, 4);
buffer[8] = 1;
И просто шлёшь в пайп этот буффер. Защита памяти будет снята и можешь инжектить WPE.

Добавлено через 1 минуту
А, и я всё это дело на cabal.zzima.com тестировал. Я хз такой же там ГГ или другой..

Последний раз редактировалось dark; 03.07.2013 в 12:29. Причина: Добавлено сообщение

Создание читов на заказ | Правила форума | Обмен электронных валют

База данных кидал: blacklist.rf-cheats.ru
Обязательно проверяйте человека через чёрный список прежде чем совершать с ним сделку.
 
Ответить с цитированием
Старый 03.07.2013, 12:41   #7
A.F.I
Модератор RF Online
Аватар для A.F.I
OFFLINE
Регистрация: 28.07.2010
Сообщений: 797
Благодарностей:
871 всего
Мнения: + 1519
Репутация: 2614

Цитата:
Сообщение от dark Посмотреть сообщение
Я точно не знаю, как работает WPE и в чём загвоздка, но могу предположить, что WPE работает за счёт хуков send(), recv(), connect(). Для этого ему надо внедряться в игровой процесс. Если всё именно так, то для аттача WPE к игре надор юзать nProtect gameguard unhider.
Далее будет два варианта: либо траффик потечёт, либо нет Если второй вариант, то WPE не смог установить хуки на нужные ему функции, а соответственно нужно снимать защиту памяти с секции кода wsock32.dll. Как это делается - я в статье описал и готовое решение показал. Инжектишь в игру свою DLL-ку до аттача WPE. В твоей длл делаешь такую фигню:
Код:
DWORD addr = (DWORD)GetProcAddress(GetModuleHandle("wsock32.dll"), "recv");
DWORD pid = GetCurrentProcessId();
char buffer[9];

memcpy(buffer, &pid, 4);
memcpy(buffer + 4, &addr, 4);
buffer[8] = 1;
И просто шлёшь в пайп этот буффер. Защита памяти будет снята и можешь инжектить WPE.

Добавлено через 1 минуту
А, и я всё это дело на cabal.zzima.com тестировал. Я хз такой же там ГГ или другой..

Сегодня после работы проверю, пройдет ли траффик через WPE на сервере rfonline.gamescampus.com. Прост поковырял сервер и нашел, что на сервере должны быть прем вещи, но там они не выдаеются. А раз пакеты работают, то можно реализовать еще кучу всего.
 
Ответить с цитированием
Старый 03.07.2013, 12:48   #8
dark
Администратор
Аватар для dark
OFFLINE
Регистрация: 09.04.2007
Сообщений: 940
Благодарностей:
28,332 всего
Мнения: + 15401
Репутация: 91656
Отправить сообщение для dark с помощью ICQ Отправить сообщение для dark с помощью Skype™

Цитата:
Сообщение от A.F.I Посмотреть сообщение
Сегодня после работы проверю, пройдет ли траффик через WPE на сервере rfonline.gamescampus.com. Прост поковырял сервер и нашел, что на сервере должны быть прем вещи, но там они не выдаеются. А раз пакеты работают, то можно реализовать еще кучу всего.
Я хз какой там ГГ. Плюс, трафф там может быть шифрован. Тогда толку в WPE не будет.

Создание читов на заказ | Правила форума | Обмен электронных валют

База данных кидал: blacklist.rf-cheats.ru
Обязательно проверяйте человека через чёрный список прежде чем совершать с ним сделку.
 
Ответить с цитированием
Старый 03.07.2013, 13:41   #9
A.F.I
Модератор RF Online
Аватар для A.F.I
OFFLINE
Регистрация: 28.07.2010
Сообщений: 797
Благодарностей:
871 всего
Мнения: + 1519
Репутация: 2614

Цитата:
Сообщение от dark Посмотреть сообщение
Я хз какой там ГГ. Плюс, трафф там может быть шифрован. Тогда толку в WPE не будет.
Ну вот это и хочу проверить. И, кстати, не факт, что бразильцы и филиппинцы не знают, как пакетить, ибо стоят нубы 1лвл и спамят в пм, рекламируя магазины по продаже валюты. Помню, был такой скрипт, кидающий в пм заготовленный текст всем, кто появлется в зоне видимости.
Следовательно, пакетят.
 
Ответить с цитированием
Старый 04.07.2013, 14:53   #10
buraymk2
Адмирал-Генерал
Аватар для buraymk2
OFFLINE
Регистрация: 13.04.2011
Сообщений: 145
Благодарностей:
579 всего
Мнения: + 1276
Репутация: 1738
Отправить сообщение для buraymk2 с помощью Skype™

Цитата:
Сообщение от dark Посмотреть сообщение
почему? Потому что я стариной решил тряхнуть?
Да ты вечно своим жезлом трясешь

 
Ответить с цитированием
Ответ


Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Делаем игру видимой на Windows 7 (обход nProtect Gameguard на cabal.zzima.com) dark Cabal Online читы 32 15.01.2017 02:40
Нужен обход защиты от отладки онлайн игры pachela Услуги по программированию и крэкингу 0 21.08.2016 22:39
Взлом nProtect Gameguard в Rappelz Online, King of Kings 3 и World of Dragons dark King of Kings 3 читы 7 28.07.2016 12:46
[СКАЧАТЬ] Обход nProtect Gameguard для игр от GameXp dark Total DLL Injector 14 22.06.2016 00:44
Нужен аккаунт на Карос : начало рус Guf_Marihuanov Karos: Начало читы 0 21.10.2014 19:19

Мир танков | Проект "Армата" | ArcheAge | Black Desert | РФ Онлайн | Айон | Майнкрафт | Браузерные игры
Мир драконов | Р2 Онлайн | Реквием Онлайн | Айка 2 | Роял Квест | ГТА Санадреас | Контра | Дота 2
Мир кораблей | Лига легенд | Arma2 DayZ mod | The War Z | Карос: Начало | Tera Online
Читы для всех Онлайн-игр