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

temtriss

Пользователи+
  • Постов

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

  • Посещение

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

    7

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

  1. А гугл?) Не, не слышал? Первая ссылка на запрос опенГЛ32 х64 Обьясню, даже 64х битная библиотека имеет в имени 32)))
  2. Ну как я написал выше шарп я не знаю, так чисто логически по коду пробежался) Так же пробежался по скрипту, а вы уверены, что у Вас варкрафт версии 1.26.0.6401?
  3. Как Вас понять, не работает инжект к.... Иньекция происходит в процес... dll - динамическая библиотека... Честно скажу, шарп я не знаю и очень не люблю... Читать умею, но могу понять не правильно... В первую очередь обращу внимание что ваша void функция GetProcessID имеет ретурн(может в шарпе так принято, но тогда она возвращает, только в случае получения результата) или в шарпе этот тоже самое что break? В общем прервите цикл если мы нашли результат. нефиг ему гонять!) Далее, опять же цикл... Вы так же не выходите из цикла, опять же я ХЗ как работает шарп, но после получения нужной нам dllки надо бы цикл закончить... Добавив либо return true либо break... ну может знатоки скажут больше, но циклы я бы посоветовал поправить) Особенно второй))
  4. Могу сказать даже так, фрапс еще и рисует в стороннем Dx окошке свои данные(FPS) и что-то я не слышал случаев банов из-за фрапса)
  5. Хм... а по углу обзора не канает? Что-то типо этого: Я таким образом делал наведение(facetotarget) на цель для бота.
  6. @partoftheworlD Замечательная статья А что тут не понятного? Открыл был engine.dll в IDA Pro... Найдена в дллке строка, просмотрено какие именно функции используют данную строку, как я понял в этом случае только одна функции использует эту строку. Ищем первый вызов(call) перед использованием данной строки(в данном случае перед помещением ее в стэк) Переходим по функции, далее смотрим где заполняется реест ECX(В данном случае в этой строчке lea ecx,[ebp-1C]), далее открываешь ЦЕ тлт любой дебагер, открываешь данную функцию и ставишь бряк на эту инструкцию, брякаешся и добавляешь в таблицу адрес из ebp-0x1C
  7. @Dejavu Ну наверно по тому, что я не очень грамотный человек
  8. @partoftheworlD хорошо, учту этот момент. @Garik66 Спасибо, замечания учту, буду стараться)
  9. Всем привет. !!!Перед прочтением данной статьи рекомендую прочитать о Соглашении о вызовах(Calling Convention)!!! Эта небольшая статья о вызове функций из приложения. Если будет не понятно, то могу снять видео гайд по вызову функций. Подопытным кроликом будет заранее заготовленное приложение. Вот его код: Примерно так выглядит наша программа: Думаю и так понятно, что приложение по нажатию на F1 запускает функцию 1, а по нажатию на F2 функцию 2 и 3 С помощью x64dbg мы попробуем разобратся как вызывается функция: Будем искать строчку из функции3. Для этого ищем ссылки на строки, как показано на скрине Поиск ссылок на строки в x64dbg: Находим там: "Function003 called! this is char* param of function003" И смотрим: Сдесь PUSH и CALL Пологаю это то что нам надо, пушим аргумент в стек(наша строчка) и вызываем функцию. Перед прочтением статьи я рекомендовал прочитать про соглашение о вызове. Сейчас это бы пригодилось, но я зарание оговорюсь, что это C-Declaration - __cdecl: Примерный внешний __cdecl push ebp mov ebp, esp // Пушим аргументы вызова push arg1 push arg2 // вызываем функция call ourFunc // чистим стек за нашей функцией add esp, 8 Давайте посмотрим на скрин: Интересующая нас функция: Ну что же самое интересное, мы знаем какое используется соглашение о вызове, мы знаем параметры которые принимает функция. Давайте теперь узнаем смещение функции относительно базового адреса, для этого открываем калькулятор, выбираем 16тиричную систему, Адрес функции у меня 009С24С0. Из адреса функции вычитаем Базовый адрес, в моем случае это 009B0000 009C24C0-009B0000=124C0 Запоминаем, смещение, оно нам понадобится! Давайте напишем dll'ку которая по нажатию на F10 будет запускать функцию3. Вот код: Код достаточно прост, думаю пояснения тут не нужны. Собираем и иньжектим DLLку, Для проверки можно заиньктить с помощью CE. Результат: Всем спасибо! P.s. Сильно не пинайте если что-то не так, первая статья! С радостью выслушаю конструктивную критику
  10. Создать подпись я себе не могу. А можно по подробнее, у меня нету таких пунктов. Может Вы можете дать прямой линк?)
  11. Доброго времени суток! Можно ли добавить/вернуть подписи на форуме? Или они были убраны, с какой-то определенной целью.
  12. Чисто логически подумай. У тебя есть доступ к серверу? ты можешь подменить файл на сервере? Нет?! Тогда как оно будет работать у других? Я фидлером не когда не пользовался но быстренько прочитал, это же прокси для HTTP/HTTPS позволяющий изменять трафик. Я даже могу сказать так, есть вероятность того что все изменения будут визуальны, а по факту работать не будут.
  13. Для примера, как вам удобнее читать/писать в память? Так: WriteProcessMemory(param0, param1... etc); или же на прямую, так: *(DWORD*)((DWORD)Addr+Offset) = dwToWrite
  14. Это реально. Но это придется не кисло копаться и искать функции расшифрофки, просто перехватит трафик проблем нету. Можно хукнуть send() и recv() правда если я правильно понмю, подменить пакет таким образом нельзя. Да и сами они будут уже шифрованые) Сырцы залью, в личку и обьясню(работает только 32х бинтая версия, в настройках ингры надо принудительно dx9 включить, иначе он стартует 64х битную версию и падает) как собрать/запустить. Если по коду вопросы будут, можно так же в личку. P.s. сразу скажу что мой код на C++ выглядит так, не пугайся!)
  15. Если ТС все еще интересуется темой. Игра очень не дружелюбная для взлома)) Это очень объектно ориентированный С++. Да и времени у меня не так много. Но все же если интересно, реализовал Мультиклиент/ЗумХак/Вход без проверки обновления и проверки целостности клиента/ кривой, не правильный вызов части функции перемещения(Происходит анимация движения и телепорт, телепорт не по указаным координатам, так что про это можно забыть пока я не доразбирусь), поиск всего этого был по сигнатурам, так что кроме мультиклиента все перекочевало в 3.0, мультиклиент я уже поправил. P.s. Если интересно в личку могу скинуть свои безИСХОДНИКИ(да свой код я иначе назвать не могу), написано все на С++.
  16. Скорее всего значения теперь проверяются на сервере. Если Вы говорите, что раньше работало, а сейчас нет, то скорее всего так и есть. P.s. я даже не представляю как работать с играми на андроид через СЕ.
  17. Да действительно, было бы удобно Я думаю это совсем не проблема :)) На том же васме есть!)
  18. Замечательное нововведение. Особенно Поздравляю!
  19. Спасибо!... пойду покурю MSDN по этому поводу, хотя из того, что я уже прочитал, проще продолжать использовать онлайн Асемблер/Дизасемблер. Ну а учитывая этот факт, то это совсем печально, в данном случае этот патч я генерирую для инъекции dll в процесс, через контекст потока. Ладно, в принципе все работает. Не буду усложнять, спасибо за ответ, думаю тему можно закрыть.
  20. Доброго времени суток, есть такой вопрос: Можно ли использовать Инлайн Асм для генерации байт кода? Пример: unsigned char MEGAPATCH[] = {0x68, backStr[0], backStr[1], backStr[2], backStr[3], 0x9C, 0x60, 0x68, iDllStr[0], iDllStr[1], iDllStr[2], iDllStr[3], 0xB8, apiStr[0], apiStr[1], apiStr[2], apiStr[3], 0xFF, 0xD0, 0x61, 0x9D, 0xC3 }; А вместо этого, использовать что-то типо этого для генерации:
  21. В первую очередь хочу извиниться за некромантию и подъем мертвой/закрытой темы. А именно многооконки для PoE. Вчера я реализовал свой рабочий вариант, но я очень заинтересован предложенным вариантом в теме. А именно через мьютекс... На сколько я знаю закрыть мьютекст из вне крайне геморройно (хотя хз, но конкретной и рабочей реализации я не видел), из чего возникает вопрос, если это имеет столько проблем, почему бы на лету не патчить 1 байт?) Я реализовал свою многооконку так: Запускаю суспендед процесс, делаю патч на 1 байт "\xEB"(JMP), пуляю основной поток и все готово. Кол-во окон не ограничено. Так вот может снятие мьютекста чем-то лучше? И очень бы хотелось увидеть реализацию, если конечно не сложно. P.s. да хукнуть CreateMutexW возможно... но тут вроде были ответы о снятии мьютекса, а не о препятствии созданию.
  22. Ну у меня ультимап не работает к сожалению А какие-то еще варианты есть? :)) Ну вот, что-что а движение я знаю как найти и реализовать :)) Можно, а точнее даже нужно! Берем свои координаты, ставим бряк на запись, двигаемся) смотрим куда брякнулись. Смотрим откуда пишется... там уже обычно становится ясно. В последней игре в которой я реализовывал это было все просто, через стэк передавалось значение 5.0 или -5.0(скорость перемещения) и все))) Ради интереса решил скачать PoE и сам покопаться) Сейчас попробую глянуть :))
×
×
  • Создать...

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

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