Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Системное программирование и WinAPI > Снятие хука Game guard


Автор: megel 12.6.2010, 21:00
как снимать хук, я вроде разобрался.
но в некоторые функции начинаются к assembler кода который зависит от расположения кода, например ( jmp DWORD PTR smile
получается замкнутый круг, чтобы заменить хукнутую функцию которая начинается с 5 байт хукнутого кода
нужно либо создать новую функцию с кодом
    
 
Код

      __asm {
        "5 пять байтов оригинальной функции"
        jmp [ Function + 5]
    } 


но тогда нужно переделать 5 байт если этот код зависит от расположения
или можно прямо записать эти 5 байт в оригинальную функцию, но все нужные для записи функции(WriteProcessMemory, VirtualProtect...) хукнуты Game guard. 

как можно  переместить код в другое место с учетом расположения, ntdll для просмотра я не открываются?
или можно ли как-то записать код в функцию, из текущего процесса не используя VirtualProtect.
и хотел спросить чем отличается ring3 от ring0

Автор: Abyx 13.6.2010, 01:16
бред какой-то %)

для своего процесса WriteProcessMemory не надо.

GG использует драйвер, чтобы его обойти надо драйвер. Или надо не дать ему запуститься %)

Цитата(megel @  12.6.2010,  21:00 Найти цитируемый пост)
чем отличается ring3 от ring0

тем что чтобы работать в ring0 надо драйвер.

Автор: megel 13.6.2010, 10:28
у мня почему-то в свой процесс не пишется не через не просто так(ну это нормально) не после VirtualProtect,  только работает WriteProcessMemorу(GetCurrentProcess(), ....) (может быть из-за Win7?).
вообщем я так понял, просто заменить 5 байт в ring0 не получится.

Автор: xvr 13.6.2010, 11:01
Цитата(megel @  13.6.2010,  10:28 Найти цитируемый пост)
вообщем я так понял, просто заменить 5 байт в ring0 не получится. 
Получится (после открытия страницы по записи). Но что бы попасть в ring0 нужен драйвер


Автор: 12usver12 13.6.2010, 22:57
попробуй хукнуть код хэндлера gg в процессе, так чтоб он выполнял "украденные" инструкции и прыгал сразу за джампом хукнутой api функи, оригинальные байты можно узнать маппингом модуля 

Автор: Dem_max 14.6.2010, 05:37
пиши тупой nop 

Автор: megel 16.6.2010, 16:51
Цитата

попробуй хукнуть код хэндлера gg в процессе


я это не совсем понял.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)