eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС
выпущен 4 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: cppasm, bartolomeo (+2 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

 eXeL@B —› Крэки, обсуждения —› Мучаюсь с GameGuard, может кто уже разбирался?
Посл.ответ Сообщение

Ранг: 0.2 (гость)
Статус: Участник

Создано: 19 июля 2008 22:03 · Поправил: DenegaOleg New!
Цитата · Личное сообщение · #1

Задача - послать сообщение окну Lineage. PostMessage отлично подходит для серверов, которые не использую GG, однако на официальном сервере все подобные попытки блокируются
Есть какие-нибудь мысли о том, как это можно все-таки передать нажатие клавиш?
У меня мышка A4 X708, некоторые кнопки можно программировать под нажатие любых клавиш, GG не блокирует, все отлично передается. В связи с этим вопрос - можно ли написать свой драйвер и передавать как-либо через него, либо же использовать драйвер клавиатуры, сложно ли это? Лучше всего знаком с Delphi, немного ассемблера.

PS: еще слышал о том, что можно код PostMessage взять из user32.dll, но как это сделать совсем не представляю

Буду рад любой помощи. Спасибо заранее)


Ранг: 990.3 (! ! !)
Статус: Модератор
Author of DiE

Создано: 19 июля 2008 22:35 · Поправил: Hellspawn New!
Цитата · Личное сообщение · #2

PostMessageA ведёт к такому вызову

77D38B90 B8 DB110000 MOV EAX,11DB
77D38B95 BA 0003FE7F MOV EDX,7FFE0300
77D38B9A FF12 CALL DWORD PTR DS:[EDX]
77D38B9C C2 1000 RETN 10


где 1db = 475 = NtUserPostMessage (ф-ия в ядре). ты можешь вызывать её также в программе, только разобраться надо будет с параметрами.

Ранг: 0.2 (гость)
Статус: Участник

Создано: 20 июля 2008 12:29 New!
Цитата · Личное сообщение · #3

Спасибо за ответ. Если не затруднит - подскажите пожалуйста, как будет выглядеть код на Delphi.

Ранг: 0.2 (гость)
Статус: Участник

Создано: 20 июля 2008 12:51 New!
Цитата · Личное сообщение · #4

mov edx,esp
sysenter
в ESP число 0012F558, т.е. это адрес как раз вызываемой функии, т.е. PostMessage (или уже NtUserPostMessage), но для SendMessage там код уже другой.
как я понял - sysenter - вызов функции ядра.

Теперь как мне выделить именно нужные параметры, потому что в момент вызова в стеке, насколько понимаю, присутствует еще много чего(?


Ранг: 990.3 (! ! !)
Статус: Модератор
Author of DiE

Создано: 20 июля 2008 13:29 · Поправил: Hellspawn New!
Цитата · Личное сообщение · #5

не много погуглив, можно найти описание на сях

01237 BOOL STDCALL
01238 NtUserPostMessage(HWND hWnd,
01239 UINT Msg,
01240 WPARAM wParam,
01241 LPARAM lParam)

я думаю будет как-то так:

Function NtUserPostMessage(hWnd:handle;Msg:LongWord;wParam:WPARAM;lParam:LPARAM ): dword; stdcall;
asm
pop ebp
mov eax, $11DB
call @SystemCall
ret $10
@SystemCall:
mov edx, esp
sysenter
end;

з.ы. хотя я не уверен)

Ранг: 0.2 (гость)
Статус: Участник

Создано: 20 июля 2008 13:46 New!
Цитата · Личное сообщение · #6

Даже и не знаю как благодарить. ОГРОМНОЕ СПАСИБо
Все работает)


Ранг: 990.3 (! ! !)
Статус: Модератор
Author of DiE

Создано: 20 июля 2008 14:33 · Поправил: Hellspawn New!
Цитата · Личное сообщение · #7

тока учти, что mov eax, $11DB это число будет другим на разных версиях винды

Ранг: 0.2 (гость)
Статус: Участник

Создано: 20 июля 2008 14:46 New!
Цитата · Личное сообщение · #8

Ага, уже понял, что будет отличаться (читал много статей в процессе поиска), но основное есть, а дальше самому будет несложно разобраться, еще раз спасибо)

Ранг: 0.1 (гость)
Статус: Участник

Создано: 13 сентября 2017 22:26 New!
Цитата · Личное сообщение · #9

Hellspawn можете подсказать код на Дельфи для вин10, этот код не подходит(((( а очень надо


Ранг: 590.5 (!)
Статус: Модератор
Research & Development

Создано: 14 сентября 2017 11:16 New!
Цитата · Личное сообщение · #10

EvilArt666 пишет:
для вин10, этот код не подходит(((( а очень надо


Варианта два:
1. Ты исследуешь, в чём конкретно проблема, какие сообщения об ошибках, публикуешь свои исследования здесь и надеешься на помощь.
2. Ты сам ничего не делаешь, ничего не исследуешь, ничего не публикуешь, а идёшь в Запросы, где находишь специалиста для решения данной задачи. Поиск специалистов


Ранг: 316.3 (мудрец)
Статус: Участник

Создано: 14 сентября 2017 13:23 · Поправил: difexacaw New!
Цитата · Личное сообщение · #11

> можно ли написать свой драйвер

Конечно, так и нужно делать, а не извращаться в юм. Но обычно даже те, кто отлично разбирается в км, по возможности не используют драйвера. Они нужны лишь для не многих спец задач, можно всё решить в юм.

Hellspawn

Не давайте ньюби не верный путь.

DenegaOleg

Никто не вызывает ядерные сервисы напрямую. Особенно теневые(ID > 1000). Попытка вызвать теневой сервис при не загруженном гуе приведёт к фатальной ошибке. Номер сервиса это переменная.

Если оригинальный образ испорчен, то проецируется дисковая его копия. Это и используйте.

Добавлено спустя 11 минут
DenegaOleg

> дальше самому будет несложно разобраться

Ну конечно, вкуривайте запутанный механизм доставки сообщений из ядра, я тут кратко как то описал --> Link <--


Ранг: 1120.2 (!!!!)
Статус: Участник

Создано: 14 сентября 2017 15:44 New!
Цитата · Личное сообщение · #12

difexacaw пишет:
Конечно, так и нужно делать, а не извращаться в юм


difexacaw пишет:
можно всё решить в юм




difexacaw пишет:
Не давайте ньюби не верный путь.


даже если не спорить с тем, что путь по твоему не верный. Это был 2008 год, все вертели ОСь, как хотели.

| Сообщение посчитали полезным: plutos



Ранг: 316.3 (мудрец)
Статус: Участник

Создано: 14 сентября 2017 18:56 · Поправил: difexacaw New!
Цитата · Личное сообщение · #13

Gideon Vi

Что это значит ?

Интерфейс между ядром уже давно не постоянен, так например для работы 32 апп в 64 моде не используются никакие вызовы ядра, а управление получает промежуточный слой эмуляции через ветвление со сменой мода.

Выше же советуют какую то низкоуровневую чушь. Лишь в редких случаях нужно доставать сервисный номер и напрямую вызывать шлюз, но это не нужно для обычных задач.

Даже если нэйтив захвачен фильтром - сервисный вызов в юм приводит к фильтрации, так как стаб пропатчен(обычно ав), то всё равно можно вызвать безопасные сервисы. Зачем их вызывать напрямую ??

Имхо бред какой то. Пересмотреть исходную задачу.


Ранг: 539.1 (!)
Статус: Участник
оптимист

Создано: 15 сентября 2017 01:32 New!
Цитата · Личное сообщение · #14

difexacaw пишет:
Что это значит ?



Если близко воробей -
Мы готовим пушку.

| Сообщение посчитали полезным: ARCHANGEL, difexacaw



Ранг: 1120.2 (!!!!)
Статус: Участник

Создано: 15 сентября 2017 03:19 · Поправил: Gideon Vi New!
Цитата · Личное сообщение · #15

difexacaw пишет:
Что это значит ?


это значит, что раньше у тебя ад начинался в рамках темы, потом в рамках поста, а теперь уже в рамках одной мысли. В начале мысли ты говоришь, что нужно писать драйвер, а не извращаться в юм, в конце этой же мысли драйверы нужны лишь для не многих спец задач, можно всё решить в юм.

Ну и да, кричать из 2017-го в 2008-ой, что всё у нас там кверху раком и вообще мы не туда плывём - сильно. Продолжай, мы с удовольствием почитаем.

| Сообщение посчитали полезным: LTRay



Ранг: 316.3 (мудрец)
Статус: Участник

Создано: 15 сентября 2017 21:28 New!
Цитата · Личное сообщение · #16

Gideon Vi

Чушь про сискалы не я поднял. А то что я не совсем корректно составил предложение, я это знал когда писал. Учитывая что тут форум не по филологии, а общий смысл отлично понятен, то не вижу причин вносить поправки.

Про 2008 я так ничего и не понял, о чём вы говорите. Это вы там застряли.

Про воробьёв смешно, плюсанул за шутку.

Ранг: 299.1 (наставник)
Статус: Модератор
CrackLab

Создано: 15 сентября 2017 21:38 New!
Цитата · Личное сообщение · #17

difexacaw пишет:
Про 2008 я так ничего и не понял, о чём вы говорите


Сообщение
DenegaOleg
Создано: 19 июля 2008 22:03


Ранг: 316.3 (мудрец)
Статус: Участник

Создано: 15 сентября 2017 22:29 · Поправил: difexacaw New!
Цитата · Личное сообщение · #18

SReg

Ну и что, кто то апнул тему, какая разница 8/17.

Смотрю тут каждый второй стал модером.

Дали модеркру и внезапно поднялось чсв, вы глубоко ошибаетесь если так думаете.
 eXeL@B —› Крэки, обсуждения —› Мучаюсь с GameGuard, может кто уже разбирался?
Эта тема закрыта. Ответы больше не принимаются.

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS