Пользовательский режим платформы фильтрации Windows или режим ядра?

Я использую платформу фильтрации Windows. Я хочу создать фильтр трафика, менеджер безопасности, который отслеживает пакеты и сетевые события или блокирует URL-адреса... Я знаю, что большинство функций WFP можно вызывать из пользовательского режима или режима ядра. Мне интересно, писать ли мой фильтр, используя функции режима ядра или функции пользовательского режима?? Существуют ли какие-либо сетевые действия, которые можно записать только с помощью драйвера режима ядра? Пожалуйста, помогите мне в этом отношении.

Заранее спасибо за любую помощь по этому вопросу

2 ответа

Решение

Александр прав, некоторые вещи можно сделать только с драйверами WFP в режиме ядра.

Тем не менее, вы также можете посмотреть на мой проект WinDivert (LGPL), который поднимает некоторые функциональные возможности режима ядра WFP (т.е. перехватывает и изменяет пакеты) в API пользовательского режима. WinDivert предоставляет драйвер выноски для вас.

Выноски WFP могут быть развернуты только с использованием драйверов режима ядра. Насколько я знаю, изменение пакетов (NAT, переадресация портов и т. Д.) Может быть выполнено только с использованием выносок на драйверах режима ядра.

ОБНОВИТЬ:

  • Приложение пользовательского режима может использоваться для проверки мелких пакетов и некоторых простых потоковых операций, а также для управления драйверами режима ядра.

  • Драйверы режима ядра могут выполнять глубокую и поверхностную проверку пакетов и все виды потоковых манипуляций, но не могут взаимодействовать с обычными приложениями без использования приложений пользовательского режима, реализующих API WFP.

Другие вопросы по тегам