Sessões nulas
Às vezes, uma chamada que chega na sessão nula pode aparecer como uma chamada autenticada. Especificamente, chamar a função RpcBindingInqAuthClient retorna o nível de autenticação e o provedor de segurança usados para a chamada. Essa operação não significa que a chamada não estava em uma sessão nula. Os dois problemas são ortogonais. No Microsoft Windows 2000, uma chamada de procedimento remoto pode tentar representar um chamador e marcar as permissões após a representação. No Microsoft Windows XP, é mais rápido chamar a função RpcServerInqCallAttributes e marcar para o sinalizador NullSession.
Existe outra diferença relevante entre o Windows 2000 e o Windows XP. Se apenas o sinalizador RPC_IF_ALLOW_SECURE_ONLY for especificado, as chamadas na sessão nula serão executadas no Windows 2000. No Windows XP, com o aperto geral das configurações de segurança padrão, quando esse sinalizador é especificado, as chamadas na sessão nula são rejeitadas com acesso negado. No entanto, mesmo com o sinalizador RPC_IF_ALLOW_SECURE_ONLY, o RPC não garante o nível de privilégio do usuário que está chamando. Todas as verificações de RPC são de que o usuário tem credenciais válidas. É possível que o usuário que está chamando esteja usando a conta de convidado ou outras contas com baixos privilégios. Verifique se o servidor não assume privilégios elevados depois que RPC_IF_ALLOW_SECURE_ONLY é usado.