Atualizações do Discourse - Microsoft Defender relata detecção do malware Wacatac

Olá,

Temos uma instância auto-hospedada do Discourse em uma máquina virtual e, após aplicar as atualizações mais recentes do Discourse v3.4.0.beta3 +431, recebemos um alerta do Microsoft Defender sobre o malware Wacatac:

Removemos o arquivo, reiniciamos a máquina virtual e agora estamos aguardando a execução de outra varredura. Isso já aconteceu em dezembro de 2024, quando estávamos baixando as atualizações mais recentes do Discourse.
Parece que o Wacatac está vindo de alguma forma através das atualizações do Discourse ou pode ser também um falso positivo…

Mais alguém está enfrentando esse problema?

1 curtida

Por favor, você pode nos informar o caminho completo do arquivo que ele detectou?

4 curtidas

var/lib/docker/overlay2/d5d34d6148be507180106dc3b39b8b3d266b5e221fd5df48ce023df57186d4ef/diff/home/discourse/.local/share/pnpm/store/v3/files

(nós sempre o encontramos aqui)

2 curtidas

.../pnpm/store/v3/files é um diretório. Você tem o nome do arquivo específico também?

1 curtida

/var/lib/docker/overlay2/93cd7bbb9de06047b645e0b7e3fd788546257d0b2d980e21df3cb0c5c802e80f/diff/home/discourse/.local/share/pnpm/store/v3/files/1e/a9a94e4c7f5e4b8e407d5bbbec51f6167dd6470f9e9c6b41b3f99facbe9749c0c1a60f6cac13a74d7e09482601470bea436265eccd6091e0767ff9b05e66eb-exec

E para o de dezembro de 2024:
/var/lib/docker/overlay2/d5d34d6148be507180106dc3b39b8b3d266b5e221fd5df48ce023df57186d4ef/diff/home/discourse/.local/share/pnpm/store/v3/files/23/f5520e308f56ab79324ef0ea1249acf7aa09f192d1b5e5599b3b284e46f1e6c0d6d58707b63a9c965399930b6148639ef2bd6d1d4d55343448ba42b4535440-exec

2 curtidas

Obrigado pelas informações adicionais!

@mwaniki me ajudou a fazer algumas verificações sobre isso. O primeiro arquivo que você compartilhou é um cache do binário lefthook:

$ md5sum /home/discourse/.local/share/pnpm/store/v3/files/1e/a9a94e4c7f5e4b8e407d5bbbec51f6167dd6470f9e9c6b41b3f99facbe9749c0c1a60f6cac13a74d7e09482601470bea436265eccd6091e0767ff9b05e66eb-exec
8bfaa34901d5a7b34090b3a862793f90  /home/discourse/.local/share/pnpm/store/v3/files/1e/a9a94e4c7f5e4b8e407d5bbbec51f6167dd6470f9e9c6b41b3f99facbe9749c0c1a60f6cac13a74d7e09482601470bea436265eccd6091e0767ff9b05e66eb-exec
$ find /var/www/discourse/node_modules/ -type f -exec md5sum {} + | grep '^8bfaa34901d5a7b34090b3a862793f90'
8bfaa34901d5a7b34090b3a862793f90  node_modules/.pnpm/lefthook-linux-x64@1.10.8/node_modules/lefthook-linux-x64/bin/lefthook

O segundo é o esbuild:

$ md5sum /home/discourse/.local/share/pnpm/store/v3/files/23/f5520e308f56ab79324ef0ea1249acf7aa09f192d1b5e5599b3b284e46f1e6c0d6d58707b63a9c965399930b6148639ef2bd6d1d4d55343448ba42b4535440-exec
25b47c7a561185d07c8c3d98ade527af  /home/discourse/.local/share/pnpm/store/v3/files/23/f5520e308f56ab79324ef0ea1249acf7aa09f192d1b5e5599b3b284e46f1e6c0d6d58707b63a9c965399930b6148639ef2bd6d1d4d55343448ba42b4535440-exec
$ find node_modules/ -type f -exec md5sum {} + | grep '^25b47c7a561185d07c8c3d98ade527af'
25b47c7a561185d07c8c3d98ade527af  node_modules/.pnpm/@esbuild+linux-x64@0.24.2/node_modules/@esbuild/linux-x64/bin/esbuild
25b47c7a561185d07c8c3d98ade527af  node_modules/.pnpm/esbuild@0.24.2/node_modules/esbuild/bin/esbuild

Esses hashes md5 correspondem às versões publicadas no npm, então podemos ter certeza de que elas não foram adulteradas entre o registro e sua instalação:

$ curl -s https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.2.tgz | tar -Oxzf - package/bin/esbuild | md5sum
25b47c7a561185d07c8c3d98ade527af  -
$ curl -s https://registry.npmjs.org/lefthook-linux-x64/-/lefthook-linux-x64-1.10.8.tgz | tar -Oxzf - package/bin/lefthook | md5sum
8bfaa34901d5a7b34090b3a862793f90  -

Então, acho que isso tem que ser um falso positivo do Microsoft Defender. Remover o esbuild da sua instalação do Discourse causará problemas, então eu não recomendo isso.

Pesquisando online, parece que o Microsoft Defender alertando falsamente contra pacotes npm é bastante comum. Aqui está um exemplo de uma detecção falsa do esbuild no passado.

9 curtidas

Muito obrigado @david e @mwaniki! :clinking_glasses:

Agora tentaremos entrar em contato com a equipe de suporte do Microsoft Defender e compartilharemos o feedback deles, se/quando o recebermos.

2 curtidas

Conforme prometido, este é o feedback atual do suporte da Microsoft:

  • Marcar arquivos como limpos no Microsoft Defender for Cloud para resolver o alerta → fizemos isso, mas não o vemos como uma contribuição para a resolução do problema, já que a cada vez um arquivo diferente é relatado falsamente
  • Suprimir o alerta inteiro no Microsoft Defender for Cloud → não queríamos fazer isso para não perder possíveis ameaças reais no futuro
  • Enviar ideia para melhoria do algoritmo de varredura do Defender e/ou banco de dados interno → fizemos isso, aguardando feedback: Community
2 curtidas