![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| RedHat |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 28.3.2006 Репутация: нет Всего: нет |
Вот тут на форуме много примеров как с эмулировать нажатие кнопок мыши или клавиатуры в другой программе. А как в своей программе можно организовать мехонизм противодействующий этому или хотя бы что бы он показывал процес который эмулирует эти сообщения???
Это сообщение отредактировал(а) RedHat - 11.7.2006, 09:42 |
|||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 2 Всего: 16 |
Это же очевидно - перехват соответствующих апи функций и обработка результата их выполнения.
|
|||
|
||||
| RedHat |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 28.3.2006 Репутация: нет Всего: нет |
А пример моно или сылку где есть об этом инфа
|
|||
|
||||
| Rouse_ |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 469 Регистрация: 23.4.2005 Репутация: 18 Всего: 29 |
WH_DEBUG
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
BUGOR, А разве можно в принципе отличить
SendMessage от реального нажатия? Можно, как вариант, использовать (где это возможно) неоконные компоненты, которые не могут ничего получать непосредственно сами. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 2 Всего: 16 |
Можно проследить откуда идёт сообщение
|
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 13 Всего: 146 |
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
Вот именно как? Я вчера 2 часа локальный хук на клавиатуру долбал -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| BUGOR |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 325 Регистрация: 12.3.2006 Репутация: 2 Всего: 16 |
Разберём метод под названием сплайсинг, на примере SendMessage, суть метода заключается в замене первых пяти байт вначале api функции(в нашем случае SendMessage) на длинный прыжок, который будет вести на функцию-обработчик(которая в свою очередь принимает все те же параметры, что и оригинальная SendMessage), функция обработчик находится в dll(в самом простом случае), а dll инжектится во все процессы(CreateRemoteThread или опять же с помощью хуков, это значения не имеет), так вот суть функции обработчика такова:
1.Заменить первые пять байт на оригинальные 2.Вызвать функцию с оригинальными параметрами 3.Обработать результат 4.Вернуть прыжок на себя вначало функции Так вот на третьем этапе нам никто не мешает проанализировать данные, которые вернула функция, на этом этапе так же не составит труда узнать процесс из которого была вызвана функция, короче всё, что угодно. |
|||
|
||||
| RedHat |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 28.3.2006 Репутация: нет Всего: нет |
вот то что я сделал для FindWindow. прошу не судить строго это моя первая подобного рода программа
|
||||||
|
|||||||
| RedHat |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 23 Регистрация: 28.3.2006 Репутация: нет Всего: нет |
Существует программа AutoIt3
Не подскажите как можно боротся с такими программами на уровне своей программы то есть не позвалять ей нажимать в своей программе кнопки????? AutoIt3 посылает нажатие кнопок в другую программу если не сложно преведите список API для посылки команд другому приложению |
|||
|
||||
| Alexeis |
|
||||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
SendMessage PostMessage Добавлено @ 12:24
А чем указанный выше метод BUGOR не устраивает? -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
||||
|
|||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 13 Всего: 146 |
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
Я так понял, что речь идет в изменении кода оригинальной библиотеки ядра, с тем чтобы вазвавший функцию sendmessage, поток вызвал не оригинальную, а нашу. Мы смотрим, не отправили ли это сообщение нам, если так, то блокировать иначе вызвать настоящую sendmessage.
Только если вдруг драйвер мыши шлет сообщения таким же образом, то ничего не выйдет Добавлено @ 12:55 Хотя поскольку dll работает в контексте приложения его вызвавшего, можно узнать номер потока и сравнить его с номером потока драйвера мыши или системного потока, который может за мышь отвечает. Это сообщение отредактировал(а) alexeis1 - 13.7.2006, 12:59 -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 13 Всего: 146 |
А как узнать
из перехваченой ? Вот это я не понял? -------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |