Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Ниже приведены дополнительные ошибки, которые водители иногда делают при обработке IRP.
Потерянные или дважды завершенные IRP
Эти проблемы, а также отсутствующие вызовы к подпрограммам диспетчера ввода-вывода, таким как IoStartNextPacket, часто возникают в путях обработки ошибок. Быстрые проверки путей драйвера способны выявить такие проблемы.
Конвергентные общедоступные пути IOCTL и частные пути IOCTL
Как правило, драйверы должны содержать отдельные потоки выполнения для общедоступных и частных операций ввода-вывода (или FSCTL). Драйвер не может определить, возникает ли запрос IOCTL или FSCTL в режиме ядра или пользовательском режиме, просматривая код элемента управления. Следовательно, обработка общедоступных и частных кодов в одном пути выполнения (или выполнение минимальной проверки, а затем вызов одних и тех же подпрограмм) может открыть драйвер для нарушений безопасности. Если частный IOCTL или FSCTL является привилегированным, непривилегированные пользователи, которые знают коды управления, могут получить к нему доступ. Таким образом, если ваш драйвер поддерживает приватные запросы IOCTL или FSCTL, убедитесь в том, что он обрабатывает такие запросы отдельно от публичных IOCTL или FSCTL, которые он также должен поддерживать.