API de criptografia: o CNG (Next Generation) fornece funções que consultam, adicionam, removem e priorizam os pacotes de criptografia compatíveis com um provedor. As alterações feitas usando essas funções entrarão em vigor imediatamente e não exigem a reinicialização de um servidor ativo.
Observação
Você também pode modificar a lista de pacotes de criptografia definindo as configurações de política de grupo do SSL Cipher Suite Order usando o snap-in objeto Política de Grupo no Console de Gerenciamento da Microsoft.
Para definir a configuração da política de grupo Ordem do Pacote de Criptografia SSL
Em um prompt de comando, insira gpedit.msc. O Editor de Objetos Política de Grupo é exibido.
Expanda Configuração do Computador, Modelos Administrativos, Rede e clique em Configurações de SSL.
Em Configurações de SSL, clique na configuração Ordem do Pacote de Criptografia SSL .
No painel Ordem do Pacote de Criptografia SSL , role até a parte inferior do painel.
Siga as instruções rotuladas como Como modificar essa configuração.
É necessário reiniciar o computador depois de modificar essa configuração para que as alterações entrem em vigor.
A lista de pacotes de criptografia é limitada a 1023 caracteres.
Para priorizar os pacotes de criptografia Schannel, confira os exemplos a seguir.
Ao adicionar um conjunto de criptografias, defina o valor do parâmetro dwPosition da função BCryptAddContextFunction como CRYPT_PRIORITY_TOP para adicioná-lo à parte superior da lista priorizada ou para CRYPT_PRIORITY_BOTTOM adicioná-lo à parte inferior da lista.
Para priorizar a lista de pacotes de criptografia, remova todos os pacotes de criptografia da lista e adicione pacotes de criptografia à lista na ordem desejada.
O exemplo a seguir mostra como adicionar um conjunto de criptografias à parte superior da lista priorizada para o Provedor Schannel padrão da Microsoft.
C++
#include<stdio.h>#include<windows.h>#include<bcrypt.h>#pragma comment(lib, "Bcrypt.lib")voidmain(){
SECURITY_STATUS Status = ERROR_SUCCESS;
LPWSTR wszCipher = (L"RSA_EXPORT1024_DES_CBC_SHA");
Status = BCryptAddContextFunction(
CRYPT_LOCAL,
L"SSL",
NCRYPT_SCHANNEL_INTERFACE,
wszCipher,
CRYPT_PRIORITY_TOP);
}
O exemplo a seguir mostra como remover um conjunto de criptografias da lista priorizada para o Provedor Schannel padrão da Microsoft.
C++
#include<stdio.h>#include<windows.h>#include<bcrypt.h>#pragma comment(lib, "Bcrypt.lib")voidmain(){
SECURITY_STATUS Status = ERROR_SUCCESS;
LPWSTR wszCipher = (L"TLS_RSA_WITH_RC4_128_SHA");
Status = BCryptRemoveContextFunction(
CRYPT_LOCAL,
L"SSL",
NCRYPT_SCHANNEL_INTERFACE,
wszCipher);
}
A modelagem de ameaças fornece uma lista de ameaças e maneiras de reduzir ou eliminar os riscos, mas não as prioriza para você. Além disso, não há recomendações de controle de segurança em camadas com base no tipo e na função.