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

JustHack

Разработчики
  • Постов

    342
  • Зарегистрирован

  • Победитель дней

    47

Весь контент JustHack

  1. JustHack

    Warface RU

    Используй Kernel (APC) или Kernel (Manual Map). Внедряй, после прогрузки меню в игре + Erasy PE Headers. Также, на 10 винде может работать через раз. Может вообще не работать. Вин 10 не особо дружит с ксеносом и его драйвером.
  2. Их ломают точно также как и одиночные. Всё отличие в античите и защитных механизмах.
  3. Вы сами ответили на свой вопрос. Без опыта, в онлайн играх делать нечего. Предлагаю, начать ломать одиночные игры, писать код и разбирать его в дизассемблере, а после этого возвращаться к решению данного вопроса.
  4. JustHack

    Warface RU

    Вроде бы она и есть последняя. Возможно, придется перевести Windows в тестовый режим, т.к. инжектор загружает не подписанный драйвер.
  5. JustHack

    Warface RU

    ProcessHacker , CE, Extreme Injector не смогут внедрить в Game.exe. Тебе нужно написать свой инжектор или использовать последнюю версию Xenos - Kernel (APC), Kernel (Manual Map).
  6. @LIRW Зря ты им готовое всё время даешь. Зачем учиться, если ты даешь готовое.
  7. JustHack

    Warface RU

    Если ты впрыскиваешь в Game.exe, то тебе не нужно использовать это. Напиши свой инжектор или используй xenos.
  8. JustHack

    Warface RU

    Чем внедряешь, как, куда, когда?
  9. И снова, здравствуйте)) В этой части, мы с вами создадим NoRecoil. Здесь, я уже не буду всё разжевывать. Опирайтесь на прошлые статьи, кому что-то не понятно. Открываем дамп из прошлых частей. Поиск по строкам. Для начала, нам нужно найти IGameFramework. Вводим "Failed to create the GameFramework Interface!". Двойной клик по строке, попадаем сюда Через окно перекрестных ссылок, выходим на адрес Итак, мы нашли адрес IGameFramewrok = 0x1AF7E2C Теперь, в окне поиска строк, ищем "sp_difficulty" Двойной клик по строке. Меню перекрестных ссылок. Открываем псевдокод. Через ReClass x32 восстанавливаем классы. Переходим к написанию кода. classes.h main.cpp Собираем проект. Внедряем в игру. Готово. Продолжение следует...
  10. Вот насчет этого соглашусь. Поэтому, я и не люблю писать всякие стать и уроки для новичков. Напишешь более сухим языком и без лишнего, новички обижаются, что ничего не понятно. Разжуешь до состояния молочной каши, обижаются более опытные, т.к. им приходится читать это по диагонали. Насчет этого. Тут мало людей, кто заканчивал пед институты. Поэтому, человек преподносит материал, как может / умеет / хочет / видит. Хорошо, что вообще, кто-то пытается, что-то преподнести новичкам и научить их чему-то. Критикуешь - предлагай свой вариант. Предлагаю тебе сделать мануал на эту тему, и всё расписать. Покажи человеку, как нужно. Только если будешь делать видео, то с голосовым сопровождением, а не в блокноте пояснения. Как многие тут делают. Критику считаю конструктивной, но слишком грубой. Возможно, поэтому и автору не понравилась. Можно было задать вопрос, если не понятно. А не сразу "а у вас туалет не в том месте", "а почему тарелки такие" и т.д.
  11. Продолжаем создавать наш noflash. Открываем Reclass x32 и создаем новый класс. Далее, переименовываем название класса в SSystemGlobalEnvironment. Сейчас наш класс очень мал. Нарастите класс до смещения 0x90, используя панель модификации. Переходим на смещение 0x88, жмем по зеленой стрелке, выбираем тип - Указатель. Переименовываем указатель в p3DEngine. Ниже строчкой, переименовываем класс в I3DEngine. Спускаемся еще на строчку ниже. Создаём виртуальную таблицу, указав тип VTable. Открываем и видим, что функций всего 9, а нам нужно 143. Смещение 572 / 4 т.к. 32 битный процесс. Если бы был 64 битный, то делили бы на 8. 143 это и есть наша функция SetPostEffectParam() Наращиваем количество функций, как делали с классом. Переходим на 143 функцию, двойной клик, вписываем саму функцию. И очищаем лишнее в классе. Далее жмем "генерировать" класс. Получаем готовый код класса, копируем в удобное место. Открываем Visual Studio, создаем пустой проект, тип проекта "Библиотека DLL". Добавляем исходный файл main.cpp и заголовочный файл classes.h . В main.cpp подключаем #include <windows.h> #include "classes.h" Прописываем нашу функцию В точке входа создаем поток CreateThread(0, 0, (LPTHREAD_START_ROUTINE)noFlash, 0, 0, 0); Открываем файл classes.h и вставляем туда сгенерированный код из ReClass. В итоге файл classes.h будет выглядеть вот так Собираем проект. Внедряем в игру. Готово. Продолжение следует...
  12. Итак, мы вооружились всеми нужными инструментами и поверхностным пониманием того, что будем делать. Теперь, можно приступать к самому интересному. В этой части, перед нами стоит задача найти SSystemGlobalEnvironment и указатель на I3DEngine. Открываем PeTools и делаем полный дамп. Далее, запускаем IDA PRO и выбираем "новый проект". Открываем наш дамп игры. Выбираем IDA PRO, предложит указать расположение 3 библиотек. Выбираем место установки и нажимаем ОК. Дождёмся, пока IDA проанализирует файл. Вы услышите звуковой сигнал, по окончании. Также, можно будет видеть надпись "idle" (в простое). После окончания анализа, открываем список всех строк. Через меню View или нажав Shift+F12. Жмем Ctrl+F и вводим "ai_CompatibilityMode". Двойной клик по строке и оказываемся тут Выделяем строку и жмем 'X', в открывшемся окне перекрестных ссылок, нажимаем ОК. Оказываемся тут dword_18C23DC это и есть адрес нашего SSystemGlobalEnvironment = 0x18C23DC. Можете переименовать сразу (выделив и нажав 'N' ), можете оставить так. Кому как удобнее. Самое главное мы нашли. Теперь нам нужно найти I3DEngine и SetPostEffectParam. Повторяем шаги с поиском SSystemGlobalEnvironment , только теперь вводим "Dof_Active" в строке поиска. Нашли, выделили, перешли в окно перекрестных ссылок, выбираем первую и жмем ОК. Выделяем, жмем 'F5', для перехода к псевдокоду. Видим такую запись. Выделяем смещение '+136', жмем ПКМ, переводим в HEX. И получаем SSystemGlobalEnvironment + 0x88 это и есть смещение до I3DEngine В итоге имеем: SSystemGlobalEnvironment = 0x18C23DC SSystemGlobalEnvironment + 0x88 = I3DEngine Продолжение следует...
  13. Привет всем. По просьбам людей с форума, дискорда и ютуба, я напишу цикл статей, по созданию мультихака, на примере CryEngine3 SDK. А может, я не буду вас мучать и ограничимся всего 2-3 публикациями. Всё зависит от вашего интереса и моего свободного времени. По итогу, мы создадим мультихак, содержащий примерно следующий функционал: Аимбот Силуеты врагов 3D боксы оружий и мин Линии до врагов Точность Отдача Антислепа Все описанные действия, могут быть реализованы и в других играх, на движке CryEngine3. Итак, начнем пожалуй с самого простого, а далее будем двигаться к более сложному. Здесь не будет объяснений, что такое дизассемлер, указатели, классы, интерфейсы, смещения и прочее. Если вы не знаете, что это, то вам придется самостоятельно восполнять эти пробелы. Движок CryEngine3, сделан на основе глобальных объектов. Глобальные объекты завёрнуты в одну структуру и являются указателями на абстрактные сущности, которые инициализируются в нужный момент, в нужном месте программы. Никаких дополнительных накладных расходов, никаких лишних надстроек, контроль за типом во время компиляции. CryEngine3 представляет собой достаточно старый проект, где все интерфейсы устаканились, а новое прикручивается подобно тому, что существует на данный момент. Поэтому нет необходимости придумывать дополнительные обёртки или способы работы с глобальными объектами. SSystemGlobalEnvironment - это основной базовый класс, где хранятся указатели на "стартовые классы". Примерное описание и содержание можно посмотреть на GitHub. Т.к. мы решили начать с самого простого, то на этом этапе, мы сделаем хак, который будет убирать эффект ослепления от светошумовых гранат (антислепа / noflash). Метод SetPostEffectParam (ознакомиться) Итак, наша задача найти адрес базового класса SSystemGlobalEnvironment, затем указатель на I3DEngine, восстановить класс и реализовать метод SetPostEffectParam, с нужными нам параметрами. Необходимый софт: Официальный SDK движка Visual Studio 2015+ PeTools IdaPro 6.8+ ReClass x32 Продолжение следует...
×
×
  • Создать...

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

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