Фильтр файловой системы MiniDriver

У меня есть Program.exe, который мне нужно перехватить. Эта конкретная программа использует CreateFile и ReadFile, однако мне нужно перехватить функцию ReadFile.

Я подумал о написании собственного мини-драйвера фильтра файловой системы. Я нашел эту ссылку в Google: http://msdn.microsoft.com/en-us/library/ff551862(v=vs.85) Кажется, это правильный способ сделать это Однако в прошлый раз, когда я занимался разработкой драйверов, я помню, что >= VISTA не разрешала драйверы для легкой установки.Вам нужно было приобрести «Подписанную» привилегию от Microsoft (вы должны были заплатить).

Мой вопрос в том, могу ли я создать простой драйвер фильтра файловой системы для моего USB-накопителя и перехватить любые показания из ReadFile ()? Все, что я хочу сделать, это разрешить ReadFile для определенного процесса.

1) Мне это нужно на законных основаниях 2) Мне нужно избегать неподписанных драйверов, чтобы драйвер всегда работал.

Будет ли работать один драйвер минифильтра для каждой ОС, начиная с XP?!


person user1327407    schedule 04.06.2012    source источник


Ответы (2)


Запрет на загрузку неподписанных драйверов существует только в x64-версиях Windows >= Vista В x64-версиях вы можете 1) Переключиться в тестовый режим, чтобы отключить это ограничение 2) Добавить тестовый сертификат как root в хранилище сертификатов

Но если вы хотите распространять этот драйвер, вы должны приобрести сертификат.

person Evgenii Gostiukhin    schedule 04.06.2012

Да, минифильтр является предпочтительным способом для этого. Вы можете перехватывать системные вызовы/IRP и разрешать-запрещать любые из них в зависимости от ваших критериев. Кроме того, один и тот же код драйвера можно использовать для нескольких ОС, однако вам необходимо выполнить сборку для конкретных ОС. WDK 7 можно использовать для сборки драйверов от XP до Windows 7.

Так же, как подсказал излеса, нужно расписаться для х64 винды выше висты.

person Rohan    schedule 14.07.2012