![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
_hunter
Можно пример хука на запуск ? То есть хук в данном контексте можно понимать как перехват ? То есть, пока я не закончу что-то делать в обработчике хука - приложение не запуститься ? |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 13 Всего: 98 |
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
Здравствуйте, товарищи системные программисты - это снова я, ваш друг, любитель жестокого гемора
1.Как выяснилось - Глобальный Хук на запуск приложения - это не мое. Чтобы узнать о особенностях(в частностях минусах) данного метода достаточно почитать про глобальные хуки вообще. 2.Оказалось, что данным вопросом интересовались и интересуются довольно много народу 3.Как оказалось, я не настолько тривиален в своем воображении Выход1: Писать драйвер фильтр для файловой системы NT. Выход2: Первоначально убивать все приложения кроме своего сервиса. В самом же сервисе создать специальный список "неприкасаемых". Запускать любые приложения только через вызов специального диалога с выбором пути и атрибутов запуска. Запрашивать пароль на запуск. При получении доступа - добавить в список "неприкасаемых" новую программу. По прежнему "убивать" все неизвестные процессы в отдельном треде. Главная проблема - это внешняя убогость всего процесса Также есть проблема технического плана - это разграничение доступа двух потоков к одному ресурсу, но это не проблема для работавших с критическими секциями. Универсальность второго выхода от того же установления глобального хука на АПИ функцию очевидна - он не зависет от определенной ОС и второстепенных библиотек.(к примеру обход хука на открытие исполняемого файла можно сделать, используя к примеру Native API) Однако же перехват выглядит куда красивее и элегантнее. Буду рыть ещё, присоединяйтесь |
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 3 Всего: 112 |
Ты случаем не для игрового зала делаешь прогу ?
Если да, то можно проще... -------------------- С уважением, г-н Посол. |
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
p0s0l
Нет я делаю для себя( стали наведоваться гости). Качать то что делали другие мне в облом. То есть задача стоит практически такая же, как и для игрового зала. |
|||
|
||||
| _hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 13 Всего: 98 |
эээ... если проблема в гостях -- включаеш гостевую запись и пусть там что хотят то и делают -- всеравно ничего не поломают...
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
| takedo |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 501 Регистрация: 1.6.2005 Репутация: -1 Всего: 3 |
En_t_end
А в чет проблема игрового зала??? Добавлено @ 11:38 хотел спросить задача (вместо проблема) -------------------- я не гольфист - я хоккеист |
|||
|
||||
| p0s0l |
|
||||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 3 Всего: 112 |
-------------------- С уважением, г-н Посол. |
||||
|
|||||
| JoyEx |
|
|||
|
Дядя ![]() ![]() Профиль Группа: Участник Сообщений: 323 Регистрация: 21.6.2005 Где: Москва, РФ Репутация: 4 Всего: 12 |
Проще всего использовать одну особенность CreateProcess(): В HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options сделайте подраздел с именем "плохой.exe" и параметр Debugger = "i:\Блокиратор.exe" На счет привелегий: можнA получить и привелегии csrss.exe через EPROCESS->Token, а затем и все его HANDLE и т.д.., но для этого надо лезть в Ring0, хотя это будет работать, но вот токо для конкретной версии Windows или даже buildА потому, что в kernel-mode иногда меняютя заголовки объектов. -------------------- Если ты уже никого не боишься, значит ты самый страшный |
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
Все все таки добил свою идею. Приступаю к компиляции
Исходник выложу сюда. Получилось довольно интересно |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |