Demonstre como o acesso controlado a pastas (CFA) bloqueia ransomware

Use um arquivo de teste de ransomware para ver como o CFA (acesso controlado a pastas) protege pastas importantes de um processo não confiável que tenta criptografá-las.

O CFA (acesso controlado a pastas) ajuda a proteger dados valiosos contra aplicativos mal-intencionados e ameaças, como ransomware, permitindo que apenas aplicativos confiáveis alterem arquivos em pastas protegidas. Microsoft Defender Antivírus avalia todos os aplicativos (qualquer arquivo executável, incluindo arquivos .exe, .scr e .dll) e bloqueia os que ele determina serem mal-intencionados ou suspeitos de alterar arquivos em pastas protegidas.

Importante

O arquivo de teste de ransomware e os scripts nesta demonstração não são assinados e se comportam intencionalmente como software mal-intencionado, portanto, Microsoft Defender SmartScreen, seu navegador ou Microsoft Defender Antivírus podem avisá-lo ou bloquear o download. Use esses arquivos somente em um dispositivo de teste. Ao baixar os scripts de instalação ou limpeza ou o arquivo de teste de ransomware, talvez seja necessário escolher Manter (ou a opção de permissão equivalente) para concluir o download.

Pré-requisitos

  • Windows 10, versão 1709 (outubro de 2017) ou posterior.
  • Microsoft Defender Antivírus habilitado e no modo ativo.

Para obter a lista completa de requisitos, sistemas operacionais com suporte e modos de proteção, consulte a visão geral do CFA (acesso controlado a pastas). Para obter os métodos que você pode usar para ativar o CFA e adicionar pastas protegidas, consulte Configurar o CFA (acesso controlado a pastas).

Configurar a demonstração

Note

O script de instalação habilita o CFA em modo de bloco. Para ver o modo CFA atual, execute o seguinte comando em uma sessão do PowerShell com privilégios elevados (uma janela do PowerShell que você abriu selecionando Executar como administrador):

Get-MpPreference | Format-List EnableControlledFolderAccess

Anote o valor do modo para que você possa redefinir o CFA para esse valor quando terminar a demonstração.

  1. Baixe e extraia o script WindowsDefender_CFA_SetupScript.ps1 de instalação deste arquivo ZIP: https://demo.wd.microsoft.com/Content/CFA_SetupScript.zip. O script de instalação automatiza as seguintes etapas:

    • Redefine qualquer configuração de demonstração existente desativando o CFA e removendo c:\demo da lista de pastas protegidas (sem afetar suas outras pastas protegidas).
    • Cria a c:\demo pasta e a adiciona à lista de exclusão do Microsoft Defender Antivírus (sem afetar suas outras exclusões).
    • Baixa um arquivo de teste de ransomware (ransomware_testfile_unsigned.exe) para c:\demo\CFATestFiles, e um arquivo de teste limpo (testfile_safe.txt) para c:\demo.
    • Ativa o CFA no modo Habilitado (bloco) e adiciona c:\demo à lista de pastas protegidas (sem afetar suas outras pastas protegidas).

    Importante

    O script de configuração adiciona c:\demo à lista de exclusões do Antivírus do Microsoft Defender. Não execute ransomware_testfile_unsigned.exe a partir de c:\demo ou de uma de suas subpastas ao testar um bloqueio ou detecção de CFA. Processos executados a partir de um caminho excluído da verificação do antivírus podem ser considerados confiáveis ​​e podem não gerar o bloqueio ou a detecção esperada do CFA. Antes de rodar a demonstração, copie ransomware_testfile_unsigned.exe para uma pasta que não esteja excluída do Microsoft Defender Antivirus.

    Como WindowsDefender_CFA_SetupScript.ps1 é compartilhado com a demonstração de bloqueio de aplicativo não confiável, ele também baixa a ferramenta de teste CFA (CFAtool.exe). Essa ferramenta não é usada neste cenário de ransomware.

  2. Antes de executar o script, permita que ele seja executado definindo a política RemoteSigned de execução para a sessão atual. Execute o seguinte comando numa sessão elevada do PowerShell:

    Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned
    

    RemoteSigned é mais seguro do que Unrestricted porque ainda bloqueia scripts não assinados que são baixados da Internet e o Process escopo reverte a alteração quando você fecha a sessão.

    Tip

    Como o script de instalação não está assinado, RemoteSigned bloqueia se o script ainda carrega a marca "baixado da Internet" (a marca da Web). Se isso acontecer, confirme se o script é de uma fonte confiável e, em seguida, desbloqueie-o antes de executá-lo:

    Unblock-File -Path "<path>\WindowsDefender_CFA_SetupScript.ps1"
    

Ou, se você preferir não executar o script, execute as seguintes etapas mínimas em vez disso:

  1. Criar uma pasta nomeada demo em c:, como em c:\demo.

  2. Baixe o arquivo de teste limpo (testfile_safe.txt) de https://demo.wd.microsoft.com/Content/testfile_safe.txt e salve-o em c:\demo. O teste precisa de um arquivo para tentar criptografar.

Independentemente do método usado, o script de instalação não altera as regras de redução da superfície de ataque (ASR), portanto verifique a regra de ASR Usar proteção avançada contra ransomware e desative-a durante este teste, se ela estiver habilitada. Caso contrário, ele poderá bloquear o arquivo de teste de ransomware antes que o CFA o faça. Para verificar o status da regra, execute o seguinte comando em uma sessão elevada do PowerShell:

$idx = $(Get-MpPreference).AttackSurfaceReductionRules_Ids.IndexOf("C1DB55AB-C21A-4637-BB3F-A12568109D35")
if ($idx -ge 0) {Write-Host "Rule Status: " $(Get-MpPreference).AttackSurfaceReductionRules_Actions[$idx]} else {Write-Host "Rule does not exist on this machine"}

Se a regra existir e o status for 1 (Enabled) ou 6 (Warn), anote o valor atual para que você possa restaurá-lo durante a etapa de limpeza e, em seguida, desative-a (0) para executar este teste:

Add-MpPreference -AttackSurfaceReductionRules_Ids C1DB55AB-C21A-4637-BB3F-A12568109D35 -AttackSurfaceReductionRules_Actions Disabled

Qualquer outro status, como 2 (Audit), registra apenas a atividade e não bloqueia, portanto, a regra não interfere nesse teste. Deixe-o inalterado.

Executar a demonstração

Cenário 1: CFA bloqueia o arquivo de teste de ransomware

Se você executou o script de instalação, o arquivo de teste de ransomware já foi baixado c:\demo\CFATestFilese o CFA já protege c:\demo:

  1. No Explorador de Arquivos, vá em c:\demo\CFATestFiles, e copie ransomware_testfile_unsigned.exe para uma pasta que não esteja excluída do Microsoft Defender Antivirus. Não execute o arquivo de teste a partir de c:\demo ou de uma de suas subpastas.
  2. Execute ransomware_testfile_unsigned.exe a partir da pasta que não está excluída do Microsoft Defender Antivirus. Não é ransomware de verdade; ele só tenta criptografar os arquivos em c:\demo.

Se você não executou o script de instalação, as seguintes etapas manuais serão necessárias:

  1. Ative o CFA no modo Habilitado (modo de bloqueio) executando o comando a seguir em uma sessão do PowerShell com privilégios elevados:

    Set-MpPreference -EnableControlledFolderAccess Enabled
    
  2. Adicione a c:\demo pasta à lista de pastas protegidas executando o seguinte comando em uma sessão elevada do PowerShell:

    Add-MpPreference -ControlledFolderAccessProtectedFolders C:\demo\
    
  3. Adicione c:\demo à lista de exclusão do Microsoft Defender Antivírus para que a proteção em tempo real não coloque o arquivo de teste de ransomware em quarentena antes que você possa executá-lo. Execute o seguinte comando numa sessão elevada do PowerShell:

    Add-MpPreference -ExclusionPath C:\demo
    
  4. Baixe o arquivo de teste de ransomware (ransomware_testfile_unsigned.exe) de https://demo.wd.microsoft.com/Content/ransomware_testfile_unsigned.exe e salve-o em c:\demo.

  5. Copie ransomware_testfile_unsigned.exe para uma pasta que não esteja excluída do Microsoft Defender Antivirus. Não execute o arquivo de teste a partir de c:\demo ou de uma de suas subpastas.

  6. Execute ransomware_testfile_unsigned.exe a partir da pasta que não está excluída do Microsoft Defender Antivirus. Não é ransomware de verdade; ele só tenta criptografar os arquivos em c:\demo.

Em ambos os casos, cerca de cinco segundos depois de executar o arquivo de teste de ransomware, uma notificação é exibida de que o CFA bloqueou a tentativa de criptografia. Para visualizar os eventos de bloqueio e auditoria resultantes, consulte Monitorar atividade de acesso controlado a pastas (CFA).

Cenário 2: Sem CFA, o arquivo de teste de ransomware criptografa arquivos

  1. Desative o CFA executando o seguinte comando em uma sessão elevada do PowerShell:

    Set-MpPreference -EnableControlledFolderAccess Disabled
    
  2. Execute o arquivo de teste original de ransomware da pasta excluída da verificação do antivírus:

    • Se você executou o script de instalação, execute c:\demo\CFATestFiles\ransomware_testfile_unsigned.exe.
    • Se você usou os passos manuais, execute c:\demo\ransomware_testfile_unsigned.exe.

Com o CFA desativado, o arquivo de teste criptografa os arquivos c:\demo e você recebe uma mensagem de aviso. Execute o arquivo de teste mais uma vez para descriptografar os arquivos.

Limpar a demonstração

Se você executou o script de instalação, desfaça a demonstração executando o script de limpeza:

Importante

O script de limpeza desativa o CFA e desabilita as regras ASR listadas no script, mesmo que você tenha ativado o CFA ou essas regras por outros motivos. Antes de executar o script, verifique os estados atuais das regras ASR para que você possa reativar quaisquer regras que queira manter:

$p = Get-MpPreference;0..([math]::Min($p.AttackSurfaceReductionRules_Ids.Count,$p.AttackSurfaceReductionRules_Actions.Count)-1) | % {[pscustomobject]@{Id=$p.AttackSurfaceReductionRules_Ids[$_];Action=$p.AttackSurfaceReductionRules_Actions[$_]}} | Format-Table -AutoSize

O script define CFA como Desabilitado. Para definir o CFA para um modo que não seja Desabilitado, use as etapas manuais descritas mais adiante nesta seção.

  1. Baixe e extraia o script WindowsDefender_ASR_CFA_CleanupScript.ps1 de limpeza deste arquivo ZIP: https://demo.wd.microsoft.com/Content/ASR_CFA_CleanupScript.zip. O script de limpeza faz o seguinte:

  2. O script de limpeza não está assinado, portanto, defina a política de execução e desbloqueie o script, conforme descrito em Configurar a demonstração. Em seguida, execute o script de limpeza em uma sessão elevada do PowerShell.

Ou, se você usou as etapas manuais mínimas, faça o seguinte:

  1. Defina CFA de volta para o modo original que você anotou em Configurar a demonstração executando o seguinte comando em uma sessão do PowerShell com privilégios elevados, onde <Mode> está um dos modos CFA disponíveis:

    Set-MpPreference -EnableControlledFolderAccess <Mode>
    

    Por exemplo, para desativar o CFA novamente (o estado padrão), execute o seguinte comando:

    Set-MpPreference -EnableControlledFolderAccess Disabled
    
  2. Se o Cenário 2 criptografou os arquivos c:\demo, descriptografe-os usando a ferramenta de descriptografia (ransomware_cleanup_encrypt_decrypt.exe).

  3. Se você desabilitou a regra ASR Usar proteção avançada contra ransomware no início do teste, defina-a novamente com o valor que você anotou executando o comando a seguir em uma sessão elevada do PowerShell, em que <Mode> corresponde ao valor do modoEnabled ou Warn:

    Add-MpPreference -AttackSurfaceReductionRules_Ids C1DB55AB-C21A-4637-BB3F-A12568109D35 -AttackSurfaceReductionRules_Actions <Mode>
    

Seja qual for o método usado, o script de limpeza não remove a c:\demo exclusão Microsoft Defender Antivírus que o script de instalação (ou as etapas manuais) adicionou. Para reverter totalmente as alterações, execute as seguintes etapas:

  1. Apague todas as cópias de ransomware_testfile_unsigned.exe que você fez fora de c:\demo.

  2. Exclua a c:\demo pasta e os arquivos de teste que ela contém. Execute esta etapa antes de remover a exclusão na próxima etapa. Caso contrário, quando a proteção em tempo real é retomada para a pasta, Microsoft Defender Antivírus detecta os arquivos de teste restantes (como o arquivo de teste de ransomware e a ferramenta de descriptografia) e os coloca em quarentena. Execute o seguinte comando numa sessão elevada do PowerShell:

    Remove-Item -Path C:\demo -Recurse -Force
    
  3. Remova a exclusão do c:\demo Microsoft Defender Antivírus executando o seguinte comando em uma sessão do PowerShell elevada:

    Remove-MpPreference -ExclusionPath C:\demo