Partilhar via


Prevenção de ameaças de minidriver do BDA

As ameaças que podem ser introduzidas em um minidriver BDA podem ser evitadas das seguintes maneiras:

Ameaças no fluxo de transporte de sinal
Os minidrivers BDA não devem interpretar o conteúdo das cargas de sinal porque esse conteúdo pode ser destrutivo. Os minidrivers BDA só devem montar os buffers dos conteúdos e passá-los para o próximo filtro.

Se os minidrivers BDA interpretarem conteúdos, eles deverão verificar cuidadosamente o conteúdo ao analisar esse conteúdo dos conteúdos.

Ameaças de IOCTLs de finalidade especial
Os minidrivers BDA não devem expor interfaces a aplicativos que permitem que esses aplicativos tenham controle direto de barramentos, memória ou qualquer outro hardware. Portanto, o processamento para todas as IOCTLs de finalidade especial deve ser removido dos minidrivers BDA. Essas IOCTLs incluem, por exemplo, IOCTLs de depuração criadas pelo fornecedor. Para processar essas IOCTLs, os minidrivers BDA implementariam uma rotina de expedição IRP_MJ_DEVICE_CONTROL .

Ameaças de rotinas diretas de expedição do WDM
Os minidrivers BDA não devem fornecer rotinas de expedição do WDM que ignoram o modelo de classe KS (Kernel Streaming). Os minidrivers BDA devem usar o módulo AVStream do driver KS para fornecer rotinas de expedição e automação porque ele também fornece verificações de segurança. Para fornecer rotinas de expedição diretas do WDM, os minidrivers BDA implementariam qualquer um dos códigos de função principais do IRP.