Сейчас на форуме: jinoweb (+6 невидимых) |
eXeL@B —› Программирование —› [c++]хук WriteProcessMemory с последующим вытаскиванием данных |
. 1 . 2 . >> |
Посл.ответ | Сообщение |
|
Создано: 13 марта 2018 11:49 · Личное сообщение · #1 Приветствую форумчане! Возникла идея написать свой unwrapper для игр от компании alawar. Алгоритм продумал: 1) внедряем dll в процесс и просим пользователя запустить игру (в триал режиме). 2) хукаем функцию WriteProcessMemory и получаем украденные байты OEP Но на 2 же пункте застрял т.к не понимаю как можно хукнуть функцию и вытащить из нее данные. Если использовать ms detours, то там можно только подменить функцию, но данные ориг. функции вытащить нельзя, или же можно, просто я чего-то не знаю? Язык на котором буду писать: c++ |
|
Создано: 13 марта 2018 12:16 · Личное сообщение · #2 OEP пишет: но данные ориг. функции вытащить нельзя Почему нельзя? Не знаю, про какой ms detours ты пишешь, написать самому не должно быть проблемой, если мышление ничто не ограничивает. 1) Ставишь джамп в обработчик своей dll 2) Смотришь аргументы: длину данных и буфер 3) Сбрасываешь данные буфера(украденные байты OEP) на диск/в пайпу/ в сокет 4) Передаёшь обратно управление, перед этим выполнив оригинальные затёртые инструкции ----- IZ.RU |
|
Создано: 13 марта 2018 12:32 · Личное сообщение · #3 DenCoder пишет: Не знаю, про какой ms detours ты пишешь Библиотека от майкрософт, которая упрощает постановку хука DenCoder пишет: 1) Ставишь джамп в обработчик своей dll 2) Смотришь аргументы: длину данных и буфер 3) Сбрасываешь данные буфера(украденные байты OEP) на диск/в пайпу/ в сокет 4) Передаёшь обратно управление, перед этим выполнив оригинальные затёртые инструкции Можно пример пожалуйста, или хотя бы ссылку, где про это можно прочитать? |
|
Создано: 13 марта 2018 12:54 · Поправил: TryAga1n · Личное сообщение · #4 |
|
Создано: 13 марта 2018 13:27 · Поправил: DenCoder · Личное сообщение · #5 Code:
Добавлено спустя 1 минуту Хотя через IFEO хукать лучше ----- IZ.RU |
|
Создано: 13 марта 2018 19:56 · Поправил: difexacaw · Личное сообщение · #6 OEP > 2) хукаем функцию WriteProcessMemory и получаем украденные байты OEP Просто чудесное опиание задачи, значит будем гадать, что говорят звёзды, вы кто по гороскопу лол Тоесть есть общая функция, некая апи, которая пишет в память, а вам нужно какие то данные получить хз какие. OEP - каким образом это связано с данной апи так же хз и даже сложно представить, так до OEP исполняются не винапи механизмы. Какой вопрос, такой и ответ. Сформулировать чётко вопрос или задачу, от этого зависит дальнейший ход событий, ответы вам. Что вы вообще спрашиваете, похоже на поход за пищей на базар. ----- vx |
|
Создано: 13 марта 2018 20:44 · Личное сообщение · #7 difexacaw пишет: OEP - каким образом это связано с данной апи так же хз и даже сложно представить Просто ты не в теме. Алаваровский враппер - отдельное приложение, которое созрает процесс игры с флагом CREATE_SUSPENDED, восстанавливает в нем спертые с ОЕПа байты и стартует непосредственно игру. Задача у ТСа вполне внятно описана. |
|
Создано: 13 марта 2018 20:47 · Поправил: difexacaw · Личное сообщение · #8 |
|
Создано: 13 марта 2018 21:18 · Личное сообщение · #9 difexacaw пишет: Думаете я не знаю как устроены крипторы и что такое ранпе. Тс это не описал. Задача не сформулирована. Ппц ты наркоман, да любой хоть сколь нибудь в тебе понимает задачу без дополнительной воды, с OEP затерли байты, возвращаются они записью через WriteProcessMemory, хукнуть функцию и вернуть байты на место, вся задача. ТС, зачем тебе велосипеды, возьми готовую библиотеку, хоть тот же https://github.com/stevemk14ebr/PolyHook посмотри параметры функции в MSDN, а после по образу и подобию примера сделай свой перехват WriteProcessMemory. Задача на минуту. | Сообщение посчитали полезным: ARCHANGEL |
|
Создано: 13 марта 2018 21:28 · Поправил: dosprog · Личное сообщение · #10 |
|
Создано: 13 марта 2018 22:47 · Личное сообщение · #11 |
|
Создано: 14 марта 2018 01:36 · Личное сообщение · #12 OEP, Или нужен свой велосипед? difexacaw пишет: Думаете я не знаю как устроены крипторы и что такое ранпе. думаем, что ты не способен адекватно воспринимать информацию. Вероятно, последствия приёма психо-активных веществ. Это, кстати, лечится. | Сообщение посчитали полезным: plutos, DimitarSerg, TryAga1n, DrVB_5_6 |
|
Создано: 14 марта 2018 07:09 · Поправил: dosprog · Личное сообщение · #13 |
|
Создано: 14 марта 2018 07:17 · Личное сообщение · #14 |
|
Создано: 14 марта 2018 07:19 · Личное сообщение · #15 обидно то, что есть люди, может и очень талантливые, со своими идеями, но от них как-то хочется держаться подальше, поскольку любая дискуссия совершенно фатально обращается в срач... Это очень грустно, но факт. ----- Give me a HANDLE and I will move the Earth. | Сообщение посчитали полезным: DenCoder, sefkrd, Gideon Vi |
|
Создано: 14 марта 2018 20:05 · Поправил: difexacaw · Личное сообщение · #16 Gideon Vi Ясно, окей. Хоть я и не согласен, но не важно. Просто напомню что бы вы понимали правильно - организм сам выделяет психоактивные вещества, причём которые проходят эфб(и сам мозг их выделяет) и это самые опасные вещества. Они определяют вашу мотивацию, ваш ход мыслей. Так что это мог такое утверждать и быть согласен с этим только тот, кто совсем глупый, либо у кого нет тела и этой биохимии.) ----- vx |
|
Создано: 14 марта 2018 20:40 · Поправил: sefkrd · Личное сообщение · #17 difexacaw пишет: Так что это мог такое утверждать и быть согласен с этим только тот | Сообщение посчитали полезным: Gideon Vi |
|
Создано: 14 марта 2018 21:27 · Личное сообщение · #18 |
|
Создано: 14 марта 2018 22:04 · Личное сообщение · #19 difexacaw пишет: Так что это мог такое утверждать и быть согласен с этим только тот, кто совсем глупый, либо у кого нет тела и этой биохимии.) ) Тю. Ты видел обычные лампочки, которые на кухне? Подай туда не 220, а 1000 вольт, - посмотришь, что будет. Кстати, "думалка" расходуется и в обычном режиме, - но не так быстро. |
|
Создано: 15 марта 2018 00:40 · Личное сообщение · #20 |
|
Создано: 15 марта 2018 07:02 · Поправил: Gideon Vi · Личное сообщение · #21 difexacaw пишет: организм сам выделяет психоактивные вещества Всё — яд, всё — лекарство; то и другое определяет доза (c) Сам организм себе в нормальном режиме повредить не может, иначе это уже аутоиммунное заболевание. Не твой случай. Твой случай, вероятно, поступление психо-активных веществ извне. dosprog пишет: Типа, лампочки перегорают, от повышенной напруги. Популярная теория проф. Савельева. Собственно, почему нет. Подай повышенное, но не фатальное напряжение на лампочку, или не умеренно форсируй двигатель и вот результат. Похоже, согласен. plutos, просто попытайся смотреть на это с улыбкой. Посты difexacaw, обычно, только так и следует читать. Берегите difexacaw, вам будет без него скучно. Уверен в этом Alchemistry, чувак, у тебя такой прорыв говн, что закрадываются смутные подозрения о твоём нездоровом интересе к Инде. Право же, difexacaw на твоём фоне, что ромашка в детском садике. | Сообщение посчитали полезным: plutos, sefkrd |
|
Создано: 15 марта 2018 10:45 · Личное сообщение · #22 Gideon Vi пишет: OEP, --> Link <-- Или нужен свой велосипед? хочу в качестве практики написать именно свой. Руками уже умею анварпить их игры, теперь хочется чего-то большего Добавлено спустя 1 минуту shellstorm пишет: ТС, зачем тебе велосипеды, возьми готовую библиотеку, хоть тот же https://github.com/stevemk14ebr/PolyHook посмотри параметры функции в MSDN, а после по образу и подобию примера сделай свой перехват WriteProcessMemory. Задача на минуту. Спасибо! Буду пробовать! |
|
Создано: 15 марта 2018 23:06 · Личное сообщение · #23 |
|
Создано: 16 марта 2018 06:58 · Поправил: Alchemistry · Личное сообщение · #24 |
|
Создано: 16 марта 2018 09:45 · Поправил: OEP · Личное сообщение · #25 |
|
Создано: 16 марта 2018 10:21 · Личное сообщение · #26 OEP пишет: VS 2012 сыпит ошибками, ссылаясь на файл polyhook.hpp. Сразу бы написали версию студии, этот архаизм не поддерживает std 11, а данная версия стандарта минимальная для сборки библиотеки. Попробуйте альтернативы: https://github.com/shmuelyr/CaptainHook https://github.com/TsudaKageyu/minhook Эти должны завестись. Ps. Студию пора обновить, на дворе давно уже std 17. | Сообщение посчитали полезным: plutos |
|
Создано: 16 марта 2018 10:40 · Личное сообщение · #27 shellstorm пишет: Ps. Студию пора обновить, на дворе давно уже std 17. Знаю! Но VS 2012 самая лучше в плане веса. Все что дальше весит уже не мыслимые размеры! И+ под эту версию я нашёл ключ, а вот под все остальные не уверен что мне так же повезёт) Добавлено спустя 2 минуты А на VS 2017 PolyHook будет работать? |
|
Создано: 16 марта 2018 10:50 · Личное сообщение · #28 OEP пишет: Знаю! Но VS 2012 самая лучше в плане веса. 15 весит ненамного больше, а в 17 можно выбирать , что устанавливать, не ставить весь сопутствующий хлам и размер будет нормальный, 12 сама по себе убогая, как IDE, и язык с тех пор сильно изменился, компиляторы не выбирают исходя из размера. Да, соберется. С ключами нет проблем и сейчас есть версия visual studio community, она вообще бесплатна. https://www.visualstudio.com/ru/thank-you-downloading-visual-studio/?sku=Community&rel=15 Если с местом совсем плохо, можно установить build tools (3 гигабайта), без IDE и к нему установить code blocks или code lite в качестве легковесной IDE. |
|
Создано: 16 марта 2018 20:29 · Личное сообщение · #29 |
|
Создано: 16 марта 2018 21:15 · Личное сообщение · #30 |
. 1 . 2 . >> |
eXeL@B —› Программирование —› [c++]хук WriteProcessMemory с последующим вытаскиванием данных |