Возникла необходимость написать утилитку, которая отслеживала бы изменения определенных ключей в реестре и запрашивала бы у пользователя разрешить изменение или блокировать.
Как такое грамотно реализовать? Какие могут быть варианты?
PS Про RegMon с Sysinternals я слышал, но исходников его найти не удалось.
А как быть, если необходимо отслеживать не только ВСЕ(!) изменения в реестре, но и обращения к нему
(аналогично Regmon). RegNotifyChangeKeyValue для этого неподойдет.
Есть ли для этого специальные ловушки(Hook)? В хелпе к Hook'ам в WIN API я таких не обнаружил.
Здравствуйте, Ceppp, Вы писали:
C>Здравствуйте, adontz, Вы писали:
A>>Здравствуйте, japhar, Вы писали:
A>>RegNotifyChangeKeyValue A>>http://www.win2000mag.com/Windows/Articles/ArticleID/4795/pg/3/3.html
C>А как быть, если необходимо отслеживать не только ВСЕ(!) изменения в реестре, но и обращения к нему C>(аналогично Regmon). RegNotifyChangeKeyValue для этого неподойдет. C>Есть ли для этого специальные ловушки(Hook)? В хелпе к Hook'ам в WIN API я таких не обнаружил.
Перехват функций работы с реестром на уровне ядра начиная от ZwCreateKey и.т.д. Описаны в DDK.
Но это не самый хороший способ, в моральном плане
Здравствуйте, _f_b_i_, Вы писали:
___>Здравствуйте, Ceppp, Вы писали:
C>>Здравствуйте, adontz, Вы писали:
A>>>Здравствуйте, japhar, Вы писали:
A>>>RegNotifyChangeKeyValue A>>>http://www.win2000mag.com/Windows/Articles/ArticleID/4795/pg/3/3.html
C>>А как быть, если необходимо отслеживать не только ВСЕ(!) изменения в реестре, но и обращения к нему C>>(аналогично Regmon). RegNotifyChangeKeyValue для этого неподойдет. C>>Есть ли для этого специальные ловушки(Hook)? В хелпе к Hook'ам в WIN API я таких не обнаружил.
___>Перехват функций работы с реестром на уровне ядра начиная от ZwCreateKey и.т.д. Описаны в DDK. ___>Но это не самый хороший способ, в моральном плане
Нельзя ли поподробнее что такое DDK и где ее достать?
Здравствуйте, Ceppp, Вы писали:
C>Здравствуйте, _f_b_i_, Вы писали:
___>>Здравствуйте, Ceppp, Вы писали:
C>>>Здравствуйте, adontz, Вы писали:
A>>>>Здравствуйте, japhar, Вы писали:
A>>>>RegNotifyChangeKeyValue A>>>>http://www.win2000mag.com/Windows/Articles/ArticleID/4795/pg/3/3.html
C>>>А как быть, если необходимо отслеживать не только ВСЕ(!) изменения в реестре, но и обращения к нему C>>>(аналогично Regmon). RegNotifyChangeKeyValue для этого неподойдет. C>>>Есть ли для этого специальные ловушки(Hook)? В хелпе к Hook'ам в WIN API я таких не обнаружил.
___>>Перехват функций работы с реестром на уровне ядра начиная от ZwCreateKey и.т.д. Описаны в DDK. ___>>Но это не самый хороший способ, в моральном плане
C> Нельзя ли поподробнее что такое DDK и где ее достать?
Driver Development Kit. Скачать с сайта microsoft.
Только для реализации данной задачи прийдется писать драйвер.
Конечно можно перехватывать функции в user-mode, но это обычные RegOpenKey и.т.д
Здравствуйте, _f_b_i_, Вы писали:
___>Здравствуйте, Ceppp, Вы писали:
C>>Здравствуйте, _f_b_i_, Вы писали:
___>>>Здравствуйте, Ceppp, Вы писали:
C>>>>Здравствуйте, adontz, Вы писали:
A>>>>>Здравствуйте, japhar, Вы писали:
A>>>>>RegNotifyChangeKeyValue A>>>>>http://www.win2000mag.com/Windows/Articles/ArticleID/4795/pg/3/3.html
C>>>>А как быть, если необходимо отслеживать не только ВСЕ(!) изменения в реестре, но и обращения к нему C>>>>(аналогично Regmon). RegNotifyChangeKeyValue для этого неподойдет. C>>>>Есть ли для этого специальные ловушки(Hook)? В хелпе к Hook'ам в WIN API я таких не обнаружил.
___>>>Перехват функций работы с реестром на уровне ядра начиная от ZwCreateKey и.т.д. Описаны в DDK. ___>>>Но это не самый хороший способ, в моральном плане
C>> Нельзя ли поподробнее что такое DDK и где ее достать?
___>Driver Development Kit. Скачать с сайта microsoft. ___>Только для реализации данной задачи прийдется писать драйвер. ___>Конечно можно перехватывать функции в user-mode, но это обычные RegOpenKey и.т.д
Чтож виртуальный драйвер не так уж плохо. Спасибо за помощь.
Здравствуйте, Вумудщзук, Вы писали:
>>PS Про RegMon с Sysinternals я слышал, но исходников его найти не удалось. В>пользуйте: RegMon 4.35 В>пароль — "4rsdn" без кавычек