Share via


Saiba como gerenciar a vulnerabilidade do Log4Shell no Microsoft Defender para Ponto de Extremidade

A vulnerabilidade do Log4Shell é uma vulnerabilidade de RCE (execução de código remota) encontrada na biblioteca de logs do Apache Log4j 2. Como o Apache Log4j 2 é comumente usado por muitos aplicativos de software e serviços online, ele representa uma situação complexa e de alto risco para empresas em todo o mundo. Chamado de "Log4Shell" (CVE-2021-44228, CVE-2021-45046) ele apresenta um novo vetor de ataque que os invasores podem explorar para extrair dados e implantar ransomware em uma organização.

Observação

Consulte os blogs Diretrizes para prevenir, detectar e procurar exploração da vulnerabilidade do Log4j 2 edo Centro de Resposta de Segurança da Microsoft para obter diretrizes e informações técnicas sobre as recomendações de mitigação específicas de vulnerabilidade e produto para proteger sua organização.

Visão geral das funcionalidades de descoberta, monitoramento e mitigação

O Gerenciamento de Vulnerabilidades do Defender fornece os seguintes recursos para ajudá-lo a identificar, monitorar e mitigar sua exposição organizacional à vulnerabilidade do Log4Shell:

  • Descoberta: a detecção de dispositivos expostos, tanto Microsoft Defender para Ponto de Extremidade dispositivos integrados quanto dispositivos que foram descobertos, mas ainda não integrados, baseia-se em software vulnerável e arquivos vulneráveis detectados em disco.
  • Conscientização contra ameaças: Uma exibição consolidada para avaliar sua exposição organizacional. Essa exibição mostra sua exposição no nível do dispositivo e no software e fornece acesso a detalhes sobre arquivos vulneráveis como, a última vez que foi visto, a última vez que foi executado e a última vez que foi executado com portas abertas. Você pode usar essas informações para priorizar suas ações de correção. Pode levar até 24 horas para que dados relacionados a dispositivos expostos apareçam no dashboard.
  • Opções de mitigação: Aplique opções de mitigação para ajudar a reduzir o risco de exposição.
  • Caça avançada: Use a caça avançada para retornar detalhes de arquivos log4j vulneráveis identificados em disco.

Observação

Esses recursos têm suporte em Windows 10 & Windows 11, Windows Server, Linux e macOS.

O suporte no Linux requer Microsoft Defender para Ponto de Extremidade cliente Linux versão 101.52.57 (30.121092.15257.0) ou posterior.

O suporte no macOS requer Microsoft Defender para Ponto de Extremidade cliente macOS versão 20.121111.15416.0 ou posterior.

Para obter mais informações sobre versões com suporte, consulte Plataformas e recursos de sistemas operacionais com suporte.

Descoberta de dispositivos expostos

Os recursos de Gerenciamento de Vulnerabilidades do Defender inseridos, juntamente com a habilitação da detecção do Log4j, no portal Microsoft Defender, ajudarão você a descobrir dispositivos expostos à vulnerabilidade do Log4Shell.

Os dispositivos integrados são avaliados usando os recursos existentes do Gerenciamento de Vulnerabilidades do Defender inseridos que podem descobrir softwares e arquivos vulneráveis.

Para detecção em dispositivos descobertos, mas ainda não integrados, a detecção do Log4j deve ser habilitada. Isso iniciará investigações da mesma forma que a descoberta de dispositivo investiga ativamente sua rede. Isso inclui a sondagem de vários pontos de extremidade integrados (dispositivos Windows 10+ e Windows Server 2019+ e somente sondagem em sub-redes, para detectar dispositivos vulneráveis e expostos remotamente à CVE-2021-44228.

Para habilitar a detecção do Log4:

  1. Acesse Configurações>Instalação de descoberta>de dispositivo.
  2. Selecione Habilitar a detecção do Log4j2 (CVE-2021-44228).
  3. Selecione Salvar.

Captura de tela da configuração para habilitar a detecção de log4j2.

Executar essas investigações disparará o fluxo padrão do Log4j sem causar nenhum impacto prejudicial no dispositivo que está sendo investigado ou no dispositivo de sondagem. A investigação em si é feita enviando várias solicitações HTTP para dispositivos descobertos, direcionando portas comuns de aplicativo Web (por exemplo - 80.8000.8080.443.8443) e URLs. A solicitação contém cabeçalhos HTTP com uma carga JNDI que dispara uma solicitação DNS do computador investigado.

Por exemplo, User-Agent: ${jndi:dns://192.168.1.3:5353/MDEDiscoveryUser-Agent} onde 192.168.1.3 é o IP do computador de sondagem.

Observação

Habilitar a detecção do Log4j2 também significa que os dispositivos integrados usarão a auto-sondagem para detectar vulnerabilidades locais.

Detecção de arquivos e softwares vulneráveis

O Gerenciamento de Vulnerabilidades do Defender fornece camadas de detecção para ajudá-lo a descobrir:

  • Software vulnerável: a descoberta é baseada em Enumerações de Plataforma Comum (CPE) instaladas que são conhecidas por serem vulneráveis à execução de código remoto do Log4j.

  • Arquivos vulneráveis: Os arquivos na memória e nos arquivos no sistema de arquivos são avaliados. Esses arquivos podem ser arquivos jar log4j-core com a versão vulnerável conhecida ou um Uber-JAR que contém uma classe de pesquisa jndi vulnerável ou um arquivo log4j-core vulnerável. Especificamente, ele:

    • determina se um arquivo JAR contém um arquivo Log4j vulnerável examinando arquivos JAR e procurando o seguinte arquivo: \META-INF\maven\org.apache.logging.log4j\log4j-core\pom.properties - se esse arquivo existir, a versão log4j será lida e extraída.
    • pesquisa o arquivo JndiLookup.class dentro do arquivo JAR procurando caminhos que contenham a cadeia de caracteres "/log4j/core/lookup/JndiLookup.class" – se o arquivo JndiLookup.class existir, o Gerenciamento de Vulnerabilidades do Defender determinará se esse JAR contém um arquivo Log4j com a versão definida em pom.properties.
    • pesquisa por todos os arquivos JAR do Log4j-core vulneráveis inseridos em um JAR aninhado, procurando caminhos que contenham qualquer uma dessas cadeias de caracteres:
      • lib/log4j-core-
      • WEB-INF/lib/log4j-core-
      • App-INF/lib/log4j-core-

Esta tabela descreve os recursos de pesquisa compatíveis com plataformas e versões:

Recursos Tipo de Arquivo Windows10+,
server2019+
Server 2012R2,
server2016
Servidor 2008R2 Linux + macOS
memória Pesquisa em Log4j-core Sim Sim[1] - Sim
Uber-JARs Sim Sim[1] - Sim
Pesquisa todos os arquivos em disco Log4j-core Sim Sim[1] Sim -
Uber-JARs Sim Sim[1] - -

(1) Os recursos estão disponíveis quando KB5005292 é instalado no Windows Server 2012 R2 e 2016.

Saiba mais sobre suas opções de exposição e mitigação do Log4Shell

  1. No portal Microsoft Defender, acesse Fraquezas de gerenciamento> devulnerabilidades.
  2. Selecione CVE-2021-44228.
  3. Selecione Abrir página de vulnerabilidade.

Captura de tela da página de vulnerabilidade no dashboard de gerenciamento de vulnerabilidades.

Mitigação de vulnerabilidades do Log4Shell

A vulnerabilidade log4Shell pode ser atenuada impedindo pesquisas JNDI nas versões do Log4j 2.10 - 2.14.1 com configurações padrão. Para criar essa ação de mitigação, a partir do dashboard de conscientização contra ameaças:

  1. Selecione Exibir detalhes da vulnerabilidade.
  2. Selecione Opções de mitigação.

Você pode optar por aplicar a mitigação a todos os dispositivos expostos ou selecionar dispositivos integrados específicos. Para concluir o processo e aplicar a mitigação em dispositivos, selecione Create ação de mitigação.

Captura de tela das opções de mitigação do CVE-2021-44228.

status de mitigação

O status de mitigação indica se a mitigação de solução alternativa para desabilitar pesquisas JDNI foi aplicada ao dispositivo. Você pode exibir o status de mitigação para cada dispositivo afetado nas guias dispositivos expostos. Isso pode ajudar a priorizar a mitigação e/ou o patch de dispositivos com base em seus status de mitigação.

Captura de tela de Possíveis status de mitigação.

A tabela abaixo lista os status potenciais de mitigação:

status de mitigação Descrição
Solução alternativa aplicada Windows: A variável de ambiente LOG4J_FORMAT_MSG_NO_LOOKUPS foi observada antes da reinicialização mais recente do dispositivo.

Linux + macOS: todos os processos em execução têm LOG4J_FORMAT_MSG_NO_LOOKUPS=true em suas variáveis de ambiente.
Solução alternativa de reinicialização pendente A variável de ambiente LOG4J_FORMAT_MSG_NO_LOOKUPS está definida, mas nenhuma reinicialização a seguir foi detectada.
Não aplicado Windows: a variável de ambiente LOG4J_FORMAT_MSG_NO_LOOKUPS não foi observada.

Linux + macOS: nem todos os processos em execução têm LOG4J_FORMAT_MSG_NO_LOOKUPS=true em suas variáveis de ambiente, e a ação de mitigação não foi aplicada no dispositivo.
Parcialmente atenuado Linux + macOS: embora a ação de mitigação tenha sido aplicada no dispositivo, nem todos os processos em execução têm LOG4J_FORMAT_MSG_NO_LOOKUPS=true em suas variáveis de ambiente.
Não aplicável Dispositivos com arquivos vulneráveis que não estão no intervalo de versão da mitigação.
Desconhecido O status de mitigação não pôde ser determinado no momento.

Observação

Pode levar algumas horas para que o status de mitigação atualizado de um dispositivo seja refletido.

Reverter mitigações aplicadas à vulnerabilidade do Log4Shell

Nos casos em que a mitigação precisa ser revertida, siga estas etapas:

Para Windows:

  1. Abra uma janela elevada do PowerShell.
  2. Execute o seguinte comando:
  [Environment]::SetEnvironmentVariable("LOG4J\_FORMAT\_MSG\_NO\_LOOKUPS", $null,[EnvironmentVariableTarget]::Machine)

A alteração entrará em vigor após a reinicialização do dispositivo.

Para Linux:

  1. Abra o arquivo /etc/environment e exclua a linha LOG4J_FORMAT_MSG_NO_LOOKUPS=true
  2. Excluir o arquivo /etc/systemd/system.conf.d/log4j_disable_jndi_lookups.conf
  3. Excluir o arquivo /etc/systemd/user.conf.d/log4j_disable_jndi_lookups.conf

A alteração entrará em vigor após a reinicialização do dispositivo.

Para macOS:

Remova o setenv de arquivo. LOG4J_FORMAT_MSG_NO_LOOKUPS.plist das seguintes pastas:

  • /Library/LaunchDaemons/
  • /Library/LaunchAgents/
  • /Users/[username]/Library/LaunchAgents/ - para todos os usuários

A alteração entrará em vigor após a reinicialização do dispositivo.

Recomendações de segurança do Apache Log4j

Para ver a recomendação de segurança ativa relacionada ao Apache log4j, selecione a guia Recomendações de segurança na página de detalhes da vulnerabilidade. Neste exemplo, se você selecionar Atualizar o Apache Log4j , verá outro flyout com mais informações:

Captura de tela da recomendação de segurança do apache log4j de atualização.

Selecione Solicitar correção para criar uma solicitação de correção.

Explorar a vulnerabilidade no portal Microsoft Defender

Depois que dispositivos expostos, arquivos e software forem encontrados, as informações relevantes também serão transmitidas por meio das seguintes experiências no portal Microsoft Defender:

Inventário de software

Na página inventário de software, pesquise CVE-2021-44228 para ver detalhes sobre as instalações e exposição do software Log4j:

Captura de tela da vulnerabilidade log4j na página de inventário de software.

Fraquezas

Na página pontos fracos, pesquise CVE-2021-44228 para ver informações sobre a vulnerabilidade do Log4Shell:

Captura de tela da vulnerabilidade log4j na página pontos fracos.

Usar a caça avançada

Você pode usar a seguinte consulta de caça avançada para identificar vulnerabilidades no software instalado em dispositivos:

   DeviceTvmSoftwareVulnerabilities
   | where CveId in ("CVE-2021-44228", "CVE-2021-45046")

Você pode usar a seguinte consulta de caça avançada para identificar vulnerabilidades no software instalado em dispositivos para apresentar descobertas no nível do arquivo do disco:

   DeviceTvmSoftwareEvidenceBeta
   | mv-expand DiskPaths
   | where DiskPaths contains "log4j"
   | project DeviceId, SoftwareName, SoftwareVendor, SoftwareVersion, DiskPaths