/
/

Como monitorar os arquivos Log4j usando o NinjaOne

por Team Ninja
Monitorare i file Log4j con NinjaOne

Resumo instantâneo

Esta postagem do blog NinjaOne oferece uma lista abrangente de comandos CMD básicos e um mergulho profundo nos comandos do Windows, com +70 comandos CMD essenciais para usuários iniciantes e avançados. Explicamos sobre comandos práticos de prompt de comando para gerenciamento de arquivos, navegação em diretórios, solução de problemas de rede, operações de disco e automação, tudo com exemplos reais para maximizar a produtividade. Seja para aprender comandos básicos CMD ou dominar ferramentas avançadas de CLI do Windows, este guia ajuda você a usar o prompt de comando com mais eficiência.

Com as últimas notícias sobre: Log4Shell (CVE-2021-44228) e as tentativas de exploração se espalharam, os MSPs e as equipes de TI têm trabalhado sem parar para avaliar sua exposição, verificar possíveis IoCs, aplicar atenuações e aplicar patches.

O problema é que, como essa vulnerabilidade afeta tantos aplicativos, e como nem todos os fornecedores conseguiram fornecer uma orientação clara sobre se seus produtos foram afetados ou não (note: A NinjaOne não é) – determinar quais sistemas são potencialmente vulneráveis é um grande desafio.

Esse problema levou vários pesquisadores de segurança e membros da comunidade a criar scripts e ferramentas que podem ser usados para verificar ambientes em busca de arquivos Log4j potencialmente vulneráveis e sinais de IoCs.

Os exemplos incluem:

A decisão de utilizar qualquer um dos scripts disponíveis depende inteiramente de você (sempre teste e faça a devida diligência primeiro, é claro), mas se você encontrar um script que queira experimentar, esta postagem o guiará por um exemplo de como implantá-lo em sua rede, aproveitando os campos personalizados no NinjaOne.

Antes de começarmos, se você quiser se familiarizar com o Log4Shell, os recursos a seguir são excelentes:

Exemplo de como monitorar os arquivos Log4j usando o NinjaOne

Para configurar um monitor personalizado que detecte a presença de arquivos da biblioteca Log4J em pontos de extremidade no Ninja, você precisará:

  1. Um campo personalizado
  2. Um script para coletar e armazenar os dados (exemplo abaixo, ou você pode consultar outros exemplos citados acima)
  3. Uma condição personalizada para criar um alerta
  4. Um método para implantar o script de detecção

Configuração do campo personalizado

O campo personalizado será usado para armazenar os dados retornados pelo script de detecção.

1) Adicione um novo campo personalizado. Como estaremos monitorando o resultado do script em todos os pontos de extremidade, criaremos um campo personalizado global.

ninja-screen-log4j

2) O campo personalizado terá o nome log4j e será definido como do tipo Multi-line. Usamos multilinha porque cada endpoint pode ter vários arquivos com vulnerabilidades. O uso de várias linhas tornará essas informações mais legíveis.

criar campo-log4j

3) Em seguida, precisamos configurar o campo personalizado. Definiremos o script Script Access como Read / Write.

Observação: se o acesso ao script não estiver definido como “Write” ou “Read / Write”, você não poderá gravar nesse campo a partir de um script.

text-log4j

Isso é tudo o que é necessário para configurar o campo personalizado se estivermos configurando um campo personalizado global.

Criação de um script para extrair dados

Para fins ilustrativos, usaremos um script de exemplo abaixo, criado a partir do script de Kelvin Tegelaar fornecido no CyberDrain e no NinjaOne Community Dojo. A principal diferença do script do Kelvin é que ele usa uma ferramenta externa chamada “Everything”, que pode acelerar a execução.

Observe que há outros scripts em circulação que você também pode consultar e personalizar , inclusive:

Eles podem fornecer resultados mais rápidos e eficientes.

*** Isenção de responsabilidade: O uso de qualquer um desses scripts na Ninja é feito a seu próprio critério e risco. ***

$array = @()
$Drives = Get-PSDrive -PSProvider 'FileSystem'

foreach($Drive in $Drives) {

$drivePath = $Drive.name + “:”,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
$array += gci $drivePath -rec -force -include *.jar -ea 0 | foreach {select-string “”JndiLookup.class”” $_} | select -exp Path”

Recomendados para você

Pronto para simplificar as partes mais difíceis da TI?