Melhorias de segurança do SMB

Aplica-se a: Windows Server 2022, Windows Server 2019, Windows Server 2016, Windows Server 2012 R2, Windows Server 2012, Azure Stack HCI versão 21H2, Windows 11, Windows 10

Este artigo explica os aprimoramentos de segurança do SMB no Windows Server e do Windows.

Criptografia SMB

A Criptografia SMB fornece criptografia de ponta a ponta de dados do SMB e protege os dados contra ocorrências de interceptação em redes não confiáveis. Você pode implantar a Criptografia SMB com esforço mínimo, mas isso pode exigir outros custos para hardware ou software especializado. Não tem requisitos de IPsec (Internet Protocol Security) ou de aceleradores de WAN. A criptografia SMB pode ser configurada por compartilhamento, para todo o servidor de arquivos ou ao mapear unidades.

Observação

A criptografia SMB não abrange a segurança em repouso, que normalmente é manipulada pela Criptografia de Unidade de Disco BitLocker.

Você pode considerar a Criptografia SMB para qualquer cenário em que dados confidenciais precisem ser protegidos contra ataques de interceptação. Os cenários possíveis incluem:

  • Mova os dados confidenciais de um profissional da informação usando o protocolo SMB. A Criptografia SMB oferece uma garantia de integridade e privacidade de ponta a ponta entre o servidor de arquivos e o cliente. Ela fornece essa segurança independentemente das redes atravessadas, como conexões WAN (rede de longa distância) mantidas por provedores diferentes da Microsoft.
  • O SMB 3.0 permite que os servidores de arquivos forneçam armazenamento continuamente disponível para aplicativos de servidor, como o SQL Server ou o Hyper-V. A habilitação da criptografia SMB oferece uma oportunidade de proteger essas informações contra ataques de espionagem. A criptografia SMB é mais simples de usar do que as soluções de hardware dedicadas exigidas pela maioria das SANs (redes de área de armazenamento).

O Windows Server 2022 e o Windows 11 introduzem os pacotes criptográficos AES-256-GCM e AES-256-CCM para criptografia SMB 3.1.1. O Windows negocia automaticamente esse método de criptografia mais avançado ao se conectar a outro computador compatível com ele. Você também pode exigir esse método por meio da Política de Grupo. Windows ainda dá suporte a AES-128-GCM e AES-128-CCM. Por padrão, o AES-128-GCM é negociado com SMB 3.1.1, trazendo o melhor equilíbrio entre segurança e desempenho.

Agora, o Windows Server 2022 e o Windows 11 SMB Direct dão suporte à criptografia. Anteriormente, habilitar a criptografia SMB desabilitava o posicionamento direto de dados, tornando o desempenho RDMA tão lento quanto o TCP. Agora, os dados são criptografados antes do posicionamento, levando a uma degradação de desempenho relativamente pequena ao adicionar a privacidade de pacote protegido AES-128 e AES-256. Você pode habilitar a criptografia usando o Windows Admin Center, o comando Set-SmbServerConfiguration ou a política de grupo de proteção UNC.

Além disso, os clusters de failover do Windows Server agora dão suporte ao controle granular da criptografia de comunicações de armazenamento dentro dos nós para CSV (Volumes Compartilhados Clusterizados) e a SBL (Camada de Barramento do Armazenamento). Esse suporte significa que, ao usar os Espaços de Armazenamento Diretos e o SMB Direct, você pode criptografar as comunicações leste-oeste dentro do próprio cluster para maior segurança.

Importante

Há um custo operacional de desempenho considerável com qualquer proteção de criptografia de ponta a ponta em comparação com a opção não criptografada.

Habilitar Criptografia SMB

Você pode habilitar a Criptografia SMB para todo o servidor de arquivos ou apenas para compartilhamentos de arquivos específicos. Use um dos procedimentos a seguir para habilitar a Criptografia SMB.

Habilitar a criptografia SMB com o Windows Admin Center

  1. Baixe e instale o Windows Admin Center.
  2. Conecte-se ao servidor de arquivos.
  3. Selecione Arquivos e compartilhamento de arquivos.
  4. Selecione a guia Compartilhamentos de arquivos.
  5. Para exigir criptografia em um compartilhamento, selecione o nome dele e escolha Habilitar criptografia SMB.
  6. Para exigir criptografia no servidor, selecione Configurações do servidor de arquivos.
  7. Em Criptografia SMB 3, selecione Obrigatório para todos os clientes (outros são rejeitados) e escolha Salvar.

Habilitar Criptografia SMB com Proteção UNC

A Proteção UNC permite que você configure clientes SMB para exigir criptografia, independentemente das configurações de criptografia do servidor. Esse recurso ajuda a evitar ataques de interceptação. Para configurar a Proteção UNC, consulte MS15-011: vulnerabilidade na Política de Grupo pode permitir a execução remota de código. Para obter mais informações sobre defesas contra ataques de interceptação, consulte Como defender usuários contra ataques de interceptação por meio da Defesa do Cliente SMB.

Habilitar a criptografia SMB com o Windows PowerShell

  1. Entre no servidor e execute o PowerShell no seu computador em uma sessão com privilégios elevados.

  2. Para habilitar a criptografia SMB em um compartilhamento de arquivo individual, execute o comando a seguir.

    Set-SmbShare –Name <sharename> -EncryptData $true
    
  3. Para habilitar a criptografia SMB para todo o servidor de arquivos, execute o comando a seguir.

    Set-SmbServerConfiguration –EncryptData $true
    
  4. Para criar um compartilhamento de arquivo SMB com a criptografia SMB habilitada, execute o comando a seguir.

    New-SmbShare –Name <sharename> -Path <pathname> –EncryptData $true
    

Mapear unidades com criptografia

  1. Para habilitar a criptografia SMB ao mapear uma unidade usando o PowerShell, execute o comando a seguir.

    New-SMBMapping -LocalPath <drive letter> -RemotePath <UNC path> -RequirePrivacy $TRUE
    
  2. Para habilitar a criptografia SMB ao mapear uma unidade usando o CMD, execute o comando a seguir.

    NET USE <drive letter> <UNC path> /REQUIREPRIVACY
    

Considerações para implantar a Criptografia SMB

Por padrão, quando a Criptografia SMB está habilitada para um compartilhamento de arquivo ou servidor, somente clientes SMB 3.0, 3.02 e 3.1.1 podem acessar os compartilhamentos de arquivos especificados. Esse limite impõe a intenção do administrador de proteger os dados para todos os clientes que acessam os compartilhamentos.

No entanto, em algumas circunstâncias, um administrador pode querer permitir o acesso não criptografado para clientes sem suporte para SMB 3.x. Essa situação pode ocorrer durante um período de transição quando versões mistas do sistema operacional cliente estão sendo usadas. Para permitir o acesso não criptografado para clientes sem suporte para SMB 3.x, insira o seguinte script no Windows PowerShell:

Set-SmbServerConfiguration –RejectUnencryptedAccess $false

Observação

Não é recomendável permitir acesso não criptografado quando você implantou a criptografia. Em vez disso, atualize os clientes para dar suporte a criptografia.

A funcionalidade de integridade pré-autenticação descrita na próxima seção impede que um ataque de interceptação faça o downgrade de uma conexão do SMB 3.1.1 para o SMB 2.x (que usaria acesso não criptografado). No entanto, ela não impede o downgrade para o SMB 1.0, o que também resultaria no acesso não criptografado.

Para garantir que os clientes SMB 3.1.1 sempre usem a criptografia SMB para acessar compartilhamentos criptografados, você deve desabilitar o servidor SMB 1.0. Para obter instruções, conecte-se ao servidor com o Windows Admin Center, abra a extensão Arquivos e Compartilhamento de arquivos e selecione a guia Compartilhamentos de arquivos para receber o prompt para desinstalar. Para obter mais informações, consulte Como detectar, habilitar e desabilitar o SMBv1, o SMBv2 e o SMBv3 no Windows.

Se a configuração –RejectUnencryptedAccess for deixada com o valor padrão $true, somente clientes SMB 3.x com capacidade de criptografia terão permissão para acessar os compartilhamentos de arquivos (clientes SMB 1.0 também são rejeitados).

Considere os seguintes problemas ao implantar a Criptografia SMB:

  • A Criptografia SMB usa o algoritmo de criptografia AES GCM e CCM para criptografar e descriptografar os dados. O AES-CMAC e o AES-GMAC também fornecem validação de integridade de dados (assinatura) para compartilhamentos de arquivos criptografados, independentemente das configurações de assinatura SMB. Se você quiser habilitar a assinatura SMB sem criptografia, poderá continuar fazendo isso. Para obter mais informações, confira Configurar a Assinatura SMB com Confiança.
  • Você poderá encontrar problemas quando tentar acessar o compartilhamento de arquivos ou o servidor se sua organização usar dispositivos de aceleração de WAN (rede de longa distância).
  • Com uma configuração padrão (em que não se permite acesso não criptografado a compartilhamentos de arquivos criptografados), se clientes que não dão suporte ao SMB 3.x tentarem acessar um compartilhamento de arquivos criptografado, a ID de Evento 1003 será registrada no log de eventos Microsoft-Windows-SmbServer/Operacional e o cliente receberá uma mensagem de erro Acesso negado.
  • A criptografia SMB e o EFS (Encrypting File System) no sistema de arquivos NTFS não são relacionados, e a criptografia SMB não exige nem depende do uso do EFS.
  • A criptografia SMB e a Criptografia de Unidade de Disco BitLocker não estão relacionadas, e a criptografia SMB não exige nem depende do uso da Criptografia de Unidade de Disco BitLocker.

Integridade pré-autenticação

O SMB 3.1.1 é capaz de detectar ataques de interceptação que tentam fazer downgrade do protocolo ou das funcionalidades que o cliente e o servidor negociam usando a integridade pré-autenticação. A integridade pré-autenticação é um recurso obrigatório no SMB 3.1.1. Ela protege contra eventuais violações das mensagens de Configuração de Sessão e Negociação usando o hash criptográfico. O hash resultante é usado como entrada para derivar as chaves criptográficas da sessão, incluindo a chave de assinatura. Esse processo permite que o cliente e o servidor confiem mutuamente nas propriedades da conexão e da sessão. Quando o cliente ou o servidor detecta um ataque desse tipo, a conexão é desconectada e a ID de evento 1005 é registrada no log de eventos Microsoft-Windows-SmbServer/Operacional.

Devido a essa proteção e para aproveitar os recursos completos da Criptografia SMB, é altamente recomendável desabilitar o servidor SMB 1.0. Para obter instruções, conecte-se ao servidor com o Windows Admin Center, abra a extensão Arquivos e Compartilhamento de arquivos e selecione a guia Compartilhamentos de arquivos para receber o prompt para desinstalar. Para obter mais informações, consulte Como detectar, habilitar e desabilitar o SMBv1, o SMBv2 e o SMBv3 no Windows.

Novo algoritmo de assinatura

O SMB 3.0 e o SMB 3.02 usam um algoritmo de criptografia mais recente para assinatura: CMCA (Message Authentication Code baseado em criptografia AES). O SMB 2.0 usou o algoritmo de criptografia HMAC-SHA256 mais antigo. O AES-CMAC e o AES-CCM podem acelerar significativamente a criptografia de dados na maioria das CPUs modernas compatíveis com instruções AES.

O Windows Server 2022 e o Windows 11 introduzem o AES-128-GMAC para assinatura do SMB 3.1.1. O Windows negocia automaticamente esse método de criptografia com melhor desempenho ao se conectar a outro computador compatível com ele. O Windows ainda dá suporte a AES-128-CMAC. Para obter mais informações, confira Configurar a Assinatura SMB com Confiança.

Como desabilitar o SMB 1.0

O SMB 1.0 não é instalado por padrão desde o Windows Server versão 1709 e do Windows 10 versão 1709. Para obter instruções sobre como remover o SMB1, conecte-se ao servidor com o Windows Admin Center, abra a extensão Arquivos e Compartilhamento de arquivos e selecione a guia Compartilhamentos de arquivos para receber o prompt para desinstalar. Para obter mais informações, consulte Como detectar, habilitar e desabilitar o SMBv1, o SMBv2 e o SMBv3 no Windows.

Se ele ainda estiver instalado, desabilite o SMB1 imediatamente. Para obter mais informações sobre como detectar e desabilitar o uso do SMB 1.0, consulte Parar de usar o SMB1. Para obter um clearinghouse de software que exigia ou que exige o SMB 1.0, consulte SMB1 Product Clearinghouse.