Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A segurança é uma consideração crítica ao desenvolver drivers de dispositivo, especialmente drivers que operam no modo kernel com privilégios elevados. Antes que qualquer ação possa ocorrer, o sistema operacional deve garantir que a ação não viole a política de segurança do sistema. Os drivers de dispositivo precisam de mecanismos para controlar quais processos e usuários podem acessar seus dispositivos e quais operações eles têm permissão para executar.
O SRM (Monitor de Referência de Segurança do Windows) é um componente principal do modo kernel da arquitetura de segurança do Windows que impõe políticas de controle de acesso em todo o sistema operacional. Ele valida cada solicitação para acessar objetos do sistema e garante que somente entidades autorizadas possam executar operações específicas.
Principais funções do Monitor de Referência de Segurança
O SRM executa várias funções para manter a segurança do sistema:
- Imposição do controle de acesso: valida cada solicitação para acessar objetos do sistema, como arquivos, chaves do Registro e processos.
- Implementação da política de segurança: impõe políticas de segurança em todo o sistema e implementa o princípio de privilégios mínimos.
- Auditoria e registro em log: gera eventos de auditoria de segurança e controla atividades relevantes à segurança para conformidade e perícia.
Componentes da arquitetura
O SRM trabalha com várias estruturas de dados e componentes importantes para impor políticas de segurança.
Descritores de segurança
Descritores de segurança são estruturas de dados que contêm informações de segurança para objetos.
As informações em um descritor de segurança são armazenadas em uma ACL (lista de controle de acesso). O Windows usa ACLs para determinar quais objetos têm qual segurança.
Rotinas de monitor de referência de segurança
O SRM fornece rotinas para o driver trabalhar com o controle de acesso. Rotinas que fornecem uma interface direta ao SRM são prefixadas com as letras Se. As rotinas comuns do SRM incluem:
- SeAccessCheck: executa a validação de acesso em um descritor de segurança.
- SePrivilegeCheck: verifica se um token tem privilégios específicos.
- SeSinglePrivilegeCheck: verifica se há um único privilégio em um token de acesso no contexto do thread atual.
- SeTokenType: determina se um token é um token primário ou de representação.
Declarações para funções Se e entidades relacionadas podem ser encontradas em vários cabeçalhos do WDK, incluindo ntifs.h e wdm.h.
Cenários de implementação do driver
Os drivers de dispositivo geralmente usam o SRM em vários cenários para implementar controles de acesso adequados.
Controle de acesso do dispositivo
Os drivers podem controlar quais usuários podem acessar dispositivos de hardware específicos:
- Verifique as permissões do usuário antes de permitir operações de dispositivo.
- Implemente diferentes níveis de acesso para diferentes tipos de usuários.
- Restrinja operações administrativas a usuários privilegiados.
Validação da operação
Os drivers podem garantir que somente processos autorizados possam executar operações de dispositivo específicas:
- Valide o contexto de segurança antes de processar solicitações de E/S.
- Verifique se há privilégios específicos necessários para operações confidenciais.
- Implemente políticas de segurança personalizadas para funções específicas do dispositivo.
Gerenciamento de contexto de segurança
Os drivers que trabalham com representação e contextos de segurança diferentes podem:
- Manipular tokens de impersonação adequadamente.
- Alterne entre diferentes contextos de segurança, conforme necessário.
- Mantenha os limites de segurança entre sessões de usuário diferentes.
Princípios de segurança
O SRM implementa princípios fundamentais de segurança que são essenciais para manter a integridade do sistema.
Mediação completa
Cada tentativa de acesso deve passar pelo monitor de referência:
- Não existem exceções ou mecanismos de bypass.
- Garante a imposição consistente da política de segurança em todos os componentes do sistema.
- Impede o acesso não autorizado por meio de caminhos de código alternativos.
Privilégios mínimos
O monitor de referência ajuda a implementar o princípio do privilégio mínimo:
- Os usuários e processos devem ter apenas as permissões mínimas necessárias.
- Ajuda a minimizar possíveis danos causados por violações de segurança.
- Implementado por meio de uma configuração de ACL cuidadosa e gerenciamento de privilégios.