Partilhar via


Técnicas de mitigação de ameaças

Há várias técnicas de mitigação de ameaças disponíveis que você pode usar para proteger melhor as senhas. Estas técnicas são implementadas utilizando uma ou mais das seguintes quatro tecnologias primárias.

Tecnologia Descrição
CryptoAPI A CryptoAPI fornece um conjunto de funções que ajudam a aplicar rotinas criptográficas às entidades de destino. CryptoAPI pode fornecer hashes, digests, criptografia e descriptografia, para mencionar sua funcionalidade principal. CryptoAPI também tem outros recursos. Para saber mais sobre criptografia e a CryptoAPI, consulte Cryptography Essentials.
Listas de controlo de acesso Uma ACL (lista de controle de acesso) é uma lista de proteções de segurança que se aplica a um objeto. Um objeto pode ser um arquivo, processo, evento ou qualquer outra coisa que tenha um descritor de segurança. Para obter mais informações sobre ACLs, consulte Access Control Lists (ACLs).
API de proteção de dados A API de proteção de dados (DPAPI) fornece as seguintes quatro funções que você usa para criptografar e descriptografar dados confidenciais: CryptProtectData, CryptUnprotectData, CryptProtectMemorye CryptUnprotectMemory.
Nomes de utilizador e palavras-passe armazenados Funcionalidade de armazenamento que torna o tratamento de senhas e outras credenciais dos usuários, como chaves privadas, mais fácil, mais consistente e mais seguro. Para obter mais informações sobre essa funcionalidade, consulte CredUIPromptForCredentials.

 

Essas tecnologias não estão disponíveis em todos os sistemas operacionais. Portanto, até que ponto a segurança pode ser melhorada depende de quais sistemas operacionais estão envolvidos. Aqui estão as tecnologias disponíveis em cada sistema operacional.

Sistema Operativo Tecnologia
Windows Server 2003 e Windows XP
  • CryptoAPI
  • Listas de controlo de acesso
  • API de proteção de dados
  • Nomes de utilizador e palavras-passe armazenados
Janelas 2000
  • CryptoAPI
  • Listas de controlo de acesso
  • CryptProtectData
  • CryptUnprotectData

 

As seguintes técnicas de mitigação de ameaças usam uma ou mais das quatro tecnologias. Técnicas que exigem o uso de tecnologias que não estão incluídas no sistema operacional não podem ser usadas.

Obtendo senhas do usuário

Quando você permite que o usuário configure uma senha, force o uso de senhas fortes. Por exemplo, exija que as senhas tenham um comprimento mínimo, como oito caracteres ou mais. As senhas também devem incluir letras maiúsculas e minúsculas, números e outros caracteres do teclado, como o cifrão ($), ponto de exclamação (!) ou maior que (>).

Depois de obter uma senha, use-a rapidamente (usando o mínimo de código possível) e, em seguida, apague todos os vestígios da senha. Isso minimiza o tempo disponível para um intruso "capturar" a senha. A contrapartida com esta técnica é a frequência com que a senha deve ser recuperada do usuário; no entanto, o princípio deve ser aplicado sempre que possível. Para obter informações sobre como obter senhas corretamente, consulte Solicitando credenciais ao usuário.

Evite fornecer opções de interface de usuário "lembrar minha senha". Muitas vezes, os usuários exigirão ter essa opção. Se você precisar fornecê-la, então, no mínimo, certifique-se de que a senha seja salva de forma segura. Para obter informações, consulte a seção Armazenando senhas, mais adiante neste tópico.

Limite as tentativas de entrada de senha. Após um certo número de tentativas sem sucesso, bloqueie o usuário por um determinado período de tempo. Opcionalmente, aumente o tempo de resposta para cada tentativa no máximo. Esta técnica visa derrotar um ataque de adivinhação.

Armazenando senhas

Nunca armazene palavras-passe em texto simples (não encriptado). A encriptação de palavras-passe aumenta significativamente a sua segurança. Para obter informações sobre como armazenar senhas criptografadas, consulte CryptProtectData. Para obter informações sobre como criptografar senhas na memória, consulte CryptProtectMemory. Guarde as palavras-passe no menor número possível de locais. Quanto mais lugares uma senha for armazenada, maior a chance de um intruso encontrá-la. Nunca armazene palavras-passe numa página Web ou num ficheiro baseado na Web. Armazenar senhas em uma página da Web ou em um arquivo baseado na Web permite que elas sejam facilmente comprometidas.

Depois de criptografar uma senha e armazená-la, use ACLs seguras para limitar o acesso ao arquivo. Como alternativa, você pode armazenar senhas e chaves de criptografia em dispositivos removíveis. Armazenar senhas e chaves de criptografia em uma mídia removível, como um cartão inteligente, ajuda a criar um sistema mais seguro. Depois que uma senha é recuperada para uma determinada sessão, o cartão pode ser removido, removendo assim a possibilidade de que um intruso possa ter acesso a ela.