Обновления Discourse: Microsoft Defender обнаружил вредоносное ПО Wacatac

Здравствуйте,

У нас есть саморазмещенный экземпляр Discourse на виртуальной машине. После применения последних обновлений Discourse v3.4.0.beta3 +431 мы получили предупреждение от Microsoft Defender о вредоносном ПО Wacatac:

Мы удалили файл, перезагрузили виртуальную машину и теперь ждем завершения следующего сканирования. Это уже происходило в декабре 2024 года, когда мы устанавливали последние обновления Discourse.

Кажется, что Wacatac каким-то образом проникает через обновления Discourse, либо это может быть ложное срабатывание…

Сталкивался ли кто-нибудь еще с этой проблемой?

Пожалуйста, сообщите нам полный путь к обнаруженному файлу.

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

(мы всегда находим его здесь)

.../pnpm/store/v3/files — это каталог. У вас есть также имя конкретного файла?

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

А для файла от декабря 2024 года:
/var/lib/docker/overlay2/d5d34d6148be507180106dc3b39b8b3d266b5e221fd5df48ce023df57186d4ef/diff/home/discourse/.local/share/pnpm/store/v3/files/23/f5520e308f56ab79324ef0ea1249acf7aa09f192d1b5e5599b3b284e46f1e6c0d6d58707b63a9c965399930b6148639ef2bd6d1d4d55343448ba42b4535440-exec

Спасибо за дополнительную информацию!

@mwaniki помог мне провести некоторые проверки. Первый файл, который вы предоставили, — это кэш бинарного файла 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

Второй файл — 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

Эти хеши md5 соответствуют опубликованным версиям в npm, поэтому мы можем быть уверены, что они не были изменены между реестром и вашей установкой:

$ 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  -

Поэтому, думаю, это ложное срабатывание Microsoft Defender. Удаление esbuild из вашей установки Discourse вызовет проблемы, поэтому я не рекомендую этого делать.

Поиск в интернете показывает, что ложные срабатывания Microsoft Defender в отношении пакетов npm встречаются довольно часто. Вот пример ложного обнаружения esbuild в прошлом.

Большое спасибо @david и @mwaniki! :clinking_glasses:

Теперь мы попробуем связаться со службой поддержки Microsoft Defender и поделимся их отзывом, если и когда он у нас будет.

Как и было обещано, вот текущая обратная связь от службы поддержки Microsoft:

  • Пометить файлы как безопасные в Microsoft Defender for Cloud, чтобы устранить предупреждение → мы это сделали, но не считаем, что это способствует решению проблемы, поскольку каждый раз ложно помечается другой файл
  • Отключить всё предупреждение в Microsoft Defender for Cloud → мы не хотели этого делать, чтобы не упустить возможные реальные угрозы в будущем
  • Предложить идею по улучшению алгоритма сканирования Defender и/или внутренней базы данных → мы это сделали, ожидаем обратной связи: Community