Здравствуйте. Кто-нибудь пробовал это обходить? Авторы перехватили кучу функций в ядре и пользовательском режиме и всячески не дают сдампить защищенный процесс. Спасибо.
Загрузить в x64 и сделать так, что бы в твоем процессе дампера API осталось непохуканым. Это потому, что в x64 есть PatchGuard и GG не хукает API.
twgt Он не поможет. Перехвачены все сплайсингом KiAttachProcess KiMoveApcState KeAttachProcess KeStackAttachProcess Таблица сервисов NtReadVirtualMemory NtWriteVirtualMemory NtDeviceIoControlFile NtOpenProcess NtOpenSection NtProtectVirtualMemory Таблица Win32k.sys NtUserSendInput Снятие любого из них приводит к немедленному синему экрану драйвером защиты. Кроме этого во все процессы внедляется длл и перехватывает в каждом ещё кучу функций ntdll, user32, kernel32, gdi32 Не думаете же вы, что придется воспроизвести всю процедуру переключения контекста Программа не будет работать в x64.
Здравствуйте n0name. Это не получиться, потому что протектор перехватил KeAttachProcess и фильтрует все запросы. Либо возвращаемый в пользовательский режим буфер.
В смысле не будет работать под х64? Игры, насколько я знаю, почти все работают и GG успешно работает в х64 тоже.
буйня, просто не снимая сплайсинг сэмуль схученные инструкции, и все сверка с образом на диске патом спакойно через свой дров заберёшь образ с памяти и мучай его скока угодно
загрузись дллкой в процесс, который нужно сдампить, можно через SetWindowsHookEx или просто пропиши Appinit_dlls ну и в ней уже все сдампь. Методов куча, главное не зацикливаться на хуках и не пытаться их снять.
Joes Мне это нужно под Win32, причем в runtime. seeQ Это невозможно. Процесс протектора скрыт. Все явные методы подгрузки длл перекрыты, см. верхний пост. sl0n Я решил проблему немного поиграв с CR3 Но тут же наткнулся на проверку протом буфера, возвращаемого в пользовательский режим (перехват NtDeviceIoControlFile). Проблема с проверкой буфера решена его шифрованием в драйвере и расшифровкой по маленьким кускам (иначе обнаружит, представляете себе) в пользовательском режиме. Однако GameGuard видимо немного удивился подобному и спешно выпал сразу после удачного дампа, причем аккуратно сняв весь лес этих перехватов. Кроме того он инжектит какую-то нехорошую нитку в процессы, включая процесс-дампер, и её нельзя терминировать из пользовательского режима... Забыл добавить, что отдельные драйверы этого комплекса перехватывают также IDT, видимо для усложнения отладки. В общем, это просто настоящий руткитище =)
в том то и дело, что методов немеряно, можно сделать wrapper какой нибуть используемой исследуемым процессом дллки, ну или на крйняк пропатчить kernel32.dll что б она загрузила dumper.dll