Como as senhas do Windows são tratadas?

7

Estou procurando boas informações sobre como o Windows lida com as senhas de seus usuários:

  • Quais algoritmos são usados (qual hash, eles usam sal, ...)
  • Onde as senhas são armazenadas
  • Existem explorações conhecidas?

Especialmente interessantes são o Windows XP, Vista e 7.

Eu não consegui encontrar informações úteis com o google, a maioria das páginas fala sobre redefinição ou quebra de ferramentas, mas estou interessado na teoria.

    
por tanascius 10.03.2010 / 12:20

1 resposta

16

Which algorithms are used (which hash, do they use salt, ...)

Dois hashes são armazenados: LM hash para LanMan e um MD4 hash (também chamado de "NT hash") para NTLM.

Somente o hash MD4 é normalmente usado. Ele não é salgado, já que o banco de dados SAM só pode ser acessado pelo grupo Administrators e pela conta interna NT AUTHORITY\SYSTEM .

O hash LM é armazenado apenas por razões de compatibilidade. (Veja o parágrafo abaixo.) É muito inseguro (sua história começa com OS / 2 e MS-DOS) e pode ser crackeado em (eu acho) minutos. O Windows só usa quando se conecta a servidores antigos; no entanto, se armazenado, pode ser extraído com um LiveCD ou algo semelhante.

No Windows 7, o armazenamento de hashes LM está desativado. Nas versões anteriores, você pode desativá-lo manualmente nas políticas de segurança ( secpol.msc → Políticas locais → Opções de segurança → Segurança da rede: não armazenar o hash do LAN Manager ).

Where are the passwords stored?

Banco de dados do Gerenciador de Contas de Segurança - uma parte do Registro, armazenada em %SystemRoot%\system32\config\ .

Desde o Windows 2000, o banco de dados SAM é adicionalmente criptografado por padrão. <afaik> A chave está espalhada por todo o (mesmo) arquivo de registro, mas ainda é recuperável. </afaik> Mas se você quiser, poderá mover a chave de criptografia para uma unidade de disquete ou usar uma senha adicional. (Você será solicitado no boot.) Isso é feito usando SYSKEY ( syskey.exe )

(suporte SYSKEY foi adicionado no NT 4.0 SP3, mas desativado por padrão até W2000).

Are there known exploits?

Cracking LM hashes? Mais do que você pode imaginar. MD4 parece ser mais seguro, mas não deixe de ler o artigo da Wikipedia.

No Windows 9x series - não espere nada better than ROT26 .

    
por 10.03.2010 / 14:26